~fabrixxm/confy

dedfaf3a44265db437f949c0a0b6c79ed0ab015d — fabrixxm 8 months ago 3636e83
Search, not finished
5 files changed, 32 insertions(+), 6 deletions(-)

M src/mainwindow.blp
M src/mainwindow.py
M src/pages.py
M src/pages_events.blp
M src/widgets_pageheaderbar.blp
M src/mainwindow.blp => src/mainwindow.blp +10 -0
@@ 34,6 34,11 @@ template CMainWindow : Adw.ApplicationWindow  {
							Adw.HeaderBar {
								show-end-title-buttons: bind leaflet.folded;

								[start]
								Gtk.Button {
									icon-name: "system-search-symbolic";
									action-name: "win.search-all";
								}

								[end]
								MenuButton button_menu {


@@ 71,6 76,7 @@ template CMainWindow : Adw.ApplicationWindow  {
							}

							Gtk.Stack main_stack {

								Gtk.StackPage {
									name: "info";
									title: _("Event info");


@@ 134,6 140,10 @@ template CMainWindow : Adw.ApplicationWindow  {
					.CPageDetails subpage_details {
					} // /subpage_details

					.CPageEvents subpage_search_all {
						model: "search";
					}// /subpage_search_all}

				}// /subpage_leaflet

			};// overlay

M src/mainwindow.py => src/mainwindow.py +4 -0
@@ 47,6 47,7 @@ class MainWindow(Adw.ApplicationWindow):
        self._add_action("show-sidebar", None, lambda *_: self.show_sidebar())
        self._add_action("show-page", None, lambda *_: self.show_stack())
        self._add_action("return-to-events", None, self.return_to_event_list)
        self._add_action("search-all", None, lambda *_: self.show_search_all())

        self.nm = NetworkConnectionMonitor()
        self.nm.connect("notify",self._on_networkconnectionmonitor_notify)


@@ 145,6 146,9 @@ class MainWindow(Adw.ApplicationWindow):
    def subpage_navigate_back(self):
        self.subpage_leaflet.navigate(Adw.NavigationDirection.BACK)

    def show_search_all(self):
        self.subpage_leaflet.get_page(self.subpage_events).set_navigatable(False)
        self.subpage_leaflet.get_page(self.subpage_details).set_navigatable(False)
    @Gtk.Template.Callback()
    def _on_pagelist_row_activated(self, page):
        self.subpage_events.set_model(page.get_model())

M src/pages.py => src/pages.py +13 -0
@@ 222,6 222,9 @@ class PageEvents(Gtk.Box):

    pagebox = Gtk.Template.Child()

    search_button = Gtk.Template.Child()
    searchbar = Gtk.Template.Child()

    def get_value(self):
        return self._value



@@ 269,6 272,9 @@ class PageEvents(Gtk.Box):
            models.dbUpdateWatcher.disconnect(self._update_handler_id)
        self._update_handler_id = None

        self.search_button.props.visible = True
        self.searchbar.props.search_mode_enabled = False

        if self._model == "days":
            self.props.title = _("Talks on {}").format(obj.date.strftime(FMT_DAY))
            self.props.subtitle = ""


@@ 305,6 311,13 @@ class PageEvents(Gtk.Box):
            self.group_by = "day"  # TODO: or None?
            self._update_handler_id = models.dbUpdateWatcher.connect("update", self.update)

        elif self.model == "search":
            self.props.title = _("Search Talks")
            self.props.subtitle = ""
            self.filters = None
            self.group_by = None


        else:
            print(f"PageEvents: set_value: no valid model set '{self._model}'")


M src/pages_events.blp => src/pages_events.blp +5 -1
@@ 21,7 21,7 @@ template CPageEvents : Gtk.Box {
		}

		[start]
		Gtk.Button {
		Gtk.Button search_button {
			icon-name: "system-search-symbolic";
		}



@@ 31,6 31,10 @@ template CPageEvents : Gtk.Box {
		}
	}

	.CSearchBarOverlay searchbar {
	}


	Gtk.ScrolledWindow {
		hexpand: true;
		vexpand: true;

M src/widgets_pageheaderbar.blp => src/widgets_pageheaderbar.blp +0 -5
@@ 21,11 21,6 @@ template CPageHeaderBar : Gtk.Box {
			action-name: 'win.show-sidebar';
		}

		[start]
		Gtk.Button {
			icon-name: "system-search-symbolic";
		}

		[end]
		Gtk.Button {
			icon-name: "open-menu-symbolic";