26 lines
703 B
Python
26 lines
703 B
Python
from ignis.widgets import Widget
|
|
from .page import SettingsPage
|
|
|
|
|
|
class SettingsEntry(Widget.ListBoxRow):
|
|
def __init__(
|
|
self,
|
|
icon: str,
|
|
label: str,
|
|
page: SettingsPage,
|
|
**kwargs,
|
|
):
|
|
from ..active_page import active_page # avoid a circular import
|
|
|
|
super().__init__(
|
|
child=Widget.Box(
|
|
child=[
|
|
Widget.Icon(image=icon, pixel_size=20),
|
|
Widget.Label(label=label, style="margin-left: 0.75rem;"),
|
|
],
|
|
),
|
|
css_classes=["settings-sidebar-entry"],
|
|
on_activate=lambda x: active_page.set_value(page),
|
|
**kwargs,
|
|
)
|