led: layout tweaks
This commit is contained in:
parent
adc59f7df1
commit
700e8dcc5b
@ -12,7 +12,9 @@ class Panel(ScreenPanel):
|
|||||||
|
|
||||||
def __init__(self, screen, title):
|
def __init__(self, screen, title):
|
||||||
super().__init__(screen, title)
|
super().__init__(screen, title)
|
||||||
self.preview = Gtk.DrawingArea()
|
self.da_size = self._gtk.img_scale * 2
|
||||||
|
self.preview = Gtk.DrawingArea(width_request=self.da_size, height_request=self.da_size)
|
||||||
|
self.preview.set_size_request(-1, self.da_size * 1.9)
|
||||||
self.preview.connect("draw", self.on_draw)
|
self.preview.connect("draw", self.on_draw)
|
||||||
self.preview_label = Gtk.Label(label='')
|
self.preview_label = Gtk.Label(label='')
|
||||||
self.preset_list = self._gtk.HomogeneousGrid()
|
self.preset_list = self._gtk.HomogeneousGrid()
|
||||||
@ -82,14 +84,13 @@ class Panel(ScreenPanel):
|
|||||||
self.back()
|
self.back()
|
||||||
return
|
return
|
||||||
scale_grid = self._gtk.HomogeneousGrid()
|
scale_grid = self._gtk.HomogeneousGrid()
|
||||||
da_size = self._gtk.img_scale * 2.75
|
|
||||||
for idx, col_value in enumerate(self.color_data):
|
for idx, col_value in enumerate(self.color_data):
|
||||||
if not self.color_available(idx):
|
if not self.color_available(idx):
|
||||||
continue
|
continue
|
||||||
color = [0, 0, 0, 0]
|
color = [0, 0, 0, 0]
|
||||||
color[idx] = 1
|
color[idx] = 1
|
||||||
button = self._gtk.Button()
|
button = self._gtk.Button()
|
||||||
preview = Gtk.DrawingArea(width_request=da_size, height_request=da_size)
|
preview = Gtk.DrawingArea(width_request=self.da_size, height_request=self.da_size)
|
||||||
preview.connect("draw", self.on_draw, color)
|
preview.connect("draw", self.on_draw, color)
|
||||||
button.set_image(preview)
|
button.set_image(preview)
|
||||||
button.connect("clicked", self.apply_preset, color)
|
button.connect("clicked", self.apply_preset, color)
|
||||||
@ -103,13 +104,11 @@ class Panel(ScreenPanel):
|
|||||||
scale.connect("button-release-event", self.apply_scales)
|
scale.connect("button-release-event", self.apply_scales)
|
||||||
scale.connect("value_changed", self.update_preview)
|
scale.connect("value_changed", self.update_preview)
|
||||||
self.scales[idx] = scale
|
self.scales[idx] = scale
|
||||||
scale_grid.attach(button, 1, idx, 1, 1)
|
scale_grid.attach(button, 0, idx, 1, 1)
|
||||||
scale_grid.attach(scale, 2, idx, 3, 1)
|
scale_grid.attach(scale, 1, idx, 3, 1)
|
||||||
grid.attach(scale_grid, 0, 0, 2, 1)
|
grid.attach(scale_grid, 0, 0, 3, 1)
|
||||||
|
|
||||||
columns = 3 if self._screen.vertical_mode else 2
|
columns = 3 if self._screen.vertical_mode else 2
|
||||||
self.preset_list.attach(self.preview_label, 0, 0, 1, 1)
|
|
||||||
self.preset_list.attach(self.preview, 1, 0, columns - 1, 1)
|
|
||||||
data_misc = self._screen.apiclient.send_request(
|
data_misc = self._screen.apiclient.send_request(
|
||||||
"server/database/item?namespace=mainsail&key=miscellaneous.entries")
|
"server/database/item?namespace=mainsail&key=miscellaneous.entries")
|
||||||
if data_misc:
|
if data_misc:
|
||||||
@ -118,7 +117,7 @@ class Panel(ScreenPanel):
|
|||||||
self.presets.update(self.parse_presets(presets_data))
|
self.presets.update(self.parse_presets(presets_data))
|
||||||
for i, key in enumerate(self.presets):
|
for i, key in enumerate(self.presets):
|
||||||
logging.info(f'Adding preset: {key}')
|
logging.info(f'Adding preset: {key}')
|
||||||
preview = Gtk.DrawingArea(width_request=da_size, height_request=da_size)
|
preview = Gtk.DrawingArea(width_request=self.da_size, height_request=self.da_size)
|
||||||
preview.connect("draw", self.on_draw, self.presets[key])
|
preview.connect("draw", self.on_draw, self.presets[key])
|
||||||
button = self._gtk.Button()
|
button = self._gtk.Button()
|
||||||
button.set_image(preview)
|
button.set_image(preview)
|
||||||
@ -127,10 +126,17 @@ class Panel(ScreenPanel):
|
|||||||
|
|
||||||
scroll = self._gtk.ScrolledWindow()
|
scroll = self._gtk.ScrolledWindow()
|
||||||
scroll.add(self.preset_list)
|
scroll.add(self.preset_list)
|
||||||
|
preview_box = Gtk.Box(orientation=Gtk.Orientation.HORIZONTAL)
|
||||||
|
preview_box.add(self.preview_label)
|
||||||
|
preview_box.add(self.preview)
|
||||||
|
preview_box.set_homogeneous(True)
|
||||||
|
box = Gtk.Box(orientation=Gtk.Orientation.VERTICAL)
|
||||||
|
box.add(preview_box)
|
||||||
|
box.add(scroll)
|
||||||
if self._screen.vertical_mode:
|
if self._screen.vertical_mode:
|
||||||
grid.attach(scroll, 0, 1, 2, 1)
|
grid.attach(box, 0, 1, 3, 1)
|
||||||
else:
|
else:
|
||||||
grid.attach(scroll, 2, 0, 1, 1)
|
grid.attach(box, 3, 0, 2, 1)
|
||||||
return grid
|
return grid
|
||||||
|
|
||||||
def on_draw(self, da, ctx, color=None):
|
def on_draw(self, da, ctx, color=None):
|
||||||
|
Loading…
x
Reference in New Issue
Block a user