chore: dynamic breadcrumbs

This commit is contained in:
aclist committed 2026-01-24 08:55:00 +09:00
1 parent e794aa82dc
commit eb05cbdbfd
1 file changed
+2 -30
+2 -30
View File
@@ -14,6 +14,7 @@ from dzgui.util.format import embolden
# TODO: import notebook only and add components there? # TODO: import notebook only and add components there?
from dzgui.views.pages.changelog import Changelog from dzgui.views.pages.changelog import Changelog
from dzgui.views.components.connect_panel import ConnectPanel from dzgui.views.components.connect_panel import ConnectPanel
from dzgui.views.components.crumbs import Breadcrumbs
from dzgui.views.pages.devs import Developers from dzgui.views.pages.devs import Developers
from dzgui.views.pages.help import Help from dzgui.views.pages.help import Help
from dzgui.views.pages.keys import Keybindings from dzgui.views.pages.keys import Keybindings
@@ -185,8 +186,6 @@ class Notebook(ScrollableMixin, Gtk.Notebook): # type: ignore
super().__init__(show_tabs=False) super().__init__(show_tabs=False)
self.prior_page: NotebookPage self.prior_page: NotebookPage
self.prior_status: str
self.is_return = False
MainController.register_widget("notebook", self) MainController.register_widget("notebook", self)
@@ -254,7 +253,6 @@ class Notebook(ScrollableMixin, Gtk.Notebook): # type: ignore
self.set_page_by_enum(self.prior_page) self.set_page_by_enum(self.prior_page)
self.settings.unblock_text_entry() self.settings.unblock_text_entry()
return return
self.is_return = True
self.set_page_by_enum(self.prior_page) self.set_page_by_enum(self.prior_page)
def get_page_by_enum(self) -> NotebookPage | None: def get_page_by_enum(self) -> NotebookPage | None:
@@ -268,7 +266,6 @@ class Notebook(ScrollableMixin, Gtk.Notebook): # type: ignore
if cur_page == NotebookPage.KEYS: if cur_page == NotebookPage.KEYS:
self.return_prior() self.return_prior()
else: else:
# self.prior_status = MainController.get_statusbar()
self.set_page_by_enum(NotebookPage.KEYS) self.set_page_by_enum(NotebookPage.KEYS)
def focus_current(self) -> None: def focus_current(self) -> None:
@@ -300,20 +297,7 @@ class Notebook(ScrollableMixin, Gtk.Notebook): # type: ignore
def _on_page_changed( def _on_page_changed(
self, notebook: "Notebook", page: Gtk.Widget, page_num: int self, notebook: "Notebook", page: Gtk.Widget, page_num: int
) -> None: ) -> None:
return pass
# enum = self.get_page_by_enum()
# TODO: crumbs signal
# if enum is not None:
# crumbs = enum.dict["crumbs"]
# MainController.set_crumbs(crumbs)
# if self.is_return is True:
# MainController.mediator.statusbar.emit(
# "notebook_page_returned", self.prior_page
# )
# else:
# MainController.mediator.statusbar.emit("notebook_page_changed", enum)
# self.is_return = False
class Grid(Gtk.Grid): class Grid(Gtk.Grid):
@@ -329,17 +313,13 @@ class Grid(Gtk.Grid):
self.statusbar = Statusbar(MainController) self.statusbar = Statusbar(MainController)
self.right_panel = RightPanel(MainController) self.right_panel = RightPanel(MainController)
# self.breadcrumbs = Gtk.Label(halign=Gtk.Align.START)
# self.set_breadcrumbs(strings.label_main_menu)
# self.bu = Gtk.Button(label="Shrink to fit", halign=Gtk.Align.END) # self.bu = Gtk.Button(label="Shrink to fit", halign=Gtk.Align.END)
# self.bu.connect("clicked", self._shrink) # self.bu.connect("clicked", self._shrink)
# self.crumb_box.add(self.bu) # self.crumb_box.add(self.bu)
self.notebook = Notebook() self.notebook = Notebook()
self.conpan = ConnectPanel(MainController) self.conpan = ConnectPanel(MainController)
from dzgui.views.components.crumbs import Breadcrumbs
self.breadcrumbs = Breadcrumbs(MainController) self.breadcrumbs = Breadcrumbs(MainController)
self.crumb_box = Gtk.Box(orientation=Gtk.Orientation.HORIZONTAL) self.crumb_box = Gtk.Box(orientation=Gtk.Orientation.HORIZONTAL)
@@ -383,14 +363,6 @@ class Grid(Gtk.Grid):
def toggle_refresh_button(self, state: bool) -> None: def toggle_refresh_button(self, state: bool) -> None:
self.right_panel.refresh_button.set_visible(state) self.right_panel.refresh_button.set_visible(state)
# TODO: make this method internal to Statusbar
def get_breadcrumbs(self) -> str:
return self.breadcrumbs.get_text()
def set_breadcrumbs(self, text: str) -> None:
crumbs = embolden(text)
self.breadcrumbs.set_markup(crumbs)
class App(Gtk.Application): class App(Gtk.Application):
def __init__(self, prefs: "UserPrefs") -> None: def __init__(self, prefs: "UserPrefs") -> None: