def __init__(self, lights, initial_selection, *args, **kwargs):
super().__init__(
*args,
can_focus=False,
shadow_type=Gtk.ShadowType.NONE,
visible=True,
**kwargs
)
builder = Gtk.Builder()
builder.add_from_resource(get_resource_path('ui/group-detail.ui'))
builder.connect_signals(self)
content = builder.get_object('content-wrapper')
lights_list = builder.get_object('light-list')
self.lights = lights
self._selected_lights = initial_selection
for light in self.lights:
row = Gtk.ListBoxRow(
activatable=False,
can_focus=False,
visible=True
)
box = Gtk.Box(
can_focus=False,
visible=True,
margin_start=12,
margin_end=6,
margin_top=8,
margin_bottom=8
)
check_box = Gtk.CheckButton(
active=light.light_id in self.selected_lights,
border_width=6,
can_focus=True,
draw_indicator=True,
label=light.name,
receives_default=False,
visible=True
)
check_box.connect('toggled', self._on_light_toggle, light)
box.add(check_box)
row.add(box)
lights_list.add(row)
self.add(content)
评论列表
文章目录