set title for internal options subpanels

the menu/subpanel system is a bit complex and hard to use
consider removing it and use individual panels of options
This commit is contained in:
alfrix 2022-11-22 00:44:51 -03:00
parent ef5f86a67d
commit 8d2f90f800
4 changed files with 7 additions and 5 deletions

View File

@ -61,7 +61,7 @@ class ScreenPanel:
def show_all(self):
self._screen.show_all()
def load_menu(self, widget, name):
def load_menu(self, widget, name, title=None):
if f"{name}_menu" not in self.labels:
return
@ -71,12 +71,14 @@ class ScreenPanel:
self.menu.append(f'{name}_menu')
self.content.add(self.labels[self.menu[-1]])
self.content.show_all()
if title:
self._screen.base_panel.set_title(f"{self.title} | {title}")
def unload_menu(self, widget=None):
logging.debug(f"self.menu: {self.menu}")
if len(self.menu) <= 1 or self.menu[-2] not in self.labels:
return
self._screen.base_panel.set_title(self._screen.panels[self._screen._cur_panels[-1]].title)
self.menu.pop()
for child in self.content.get_children():
self.content.remove(child)

View File

@ -28,7 +28,7 @@ class MacroPanel(ScreenPanel):
sort.set_hexpand(False)
adjust = self._gtk.ButtonImage("settings", None, "color2", 1, Gtk.PositionType.LEFT, 1)
adjust.connect("clicked", self.load_menu, 'options')
adjust.connect("clicked", self.load_menu, 'options', _("Settings"))
adjust.set_hexpand(False)
sbox = Gtk.Box()

View File

@ -113,7 +113,7 @@ class MovePanel(ScreenPanel):
self.labels['pos_y'] = Gtk.Label("Y: 0")
self.labels['pos_z'] = Gtk.Label("Z: 0")
adjust = self._gtk.ButtonImage("settings", None, "color2", 1, Gtk.PositionType.LEFT, 1)
adjust.connect("clicked", self.load_menu, 'options')
adjust.connect("clicked", self.load_menu, 'options', _('Settings'))
adjust.set_hexpand(False)
self.labels['move_dist'] = Gtk.Label(_("Move Distance (mm)"))

View File

@ -120,7 +120,7 @@ class SettingsPanel(ScreenPanel):
dev.add(box)
elif option['type'] == "menu":
open_menu = self._gtk.ButtonImage("settings", style="color3")
open_menu.connect("clicked", self.load_menu, option['menu'])
open_menu.connect("clicked", self.load_menu, option['menu'], option['name'])
open_menu.set_hexpand(False)
open_menu.set_halign(Gtk.Align.END)
dev.add(open_menu)