diff options
| author | Joris Guyonvarch | 2025-12-30 17:34:13 +0100 |
|---|---|---|
| committer | Joris Guyonvarch | 2025-12-30 17:34:13 +0100 |
| commit | 65cae8a887504f49735aa9035ae53fcffd10fbc9 (patch) | |
| tree | 49bd8ddca5be035b51a08a9516d1ee78d18941c4 /src/main_window.py | |
| parent | 9566791adef22f0f1102bf73f0ba02ae9842b7cf (diff) | |
Add textual search
Search in titles, subtitles, authors and years.
Diffstat (limited to 'src/main_window.py')
| -rw-r--r-- | src/main_window.py | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/main_window.py b/src/main_window.py index c01c120..bc9fde2 100644 --- a/src/main_window.py +++ b/src/main_window.py @@ -21,29 +21,32 @@ class MainWindow(Gtk.ApplicationWindow): init_books = db.get_books(conn) init_progress = 'Reading' init_genre = models.all_genres + init_search = '' add_book_button = Gtk.Button(label='Ajouter un livre') add_book_button.connect('clicked', lambda _: BookForm(self, resources, library, conn, self._msg).present()) header = Gtk.Box(orientation=Gtk.Orientation.HORIZONTAL) utils.set_margin(header, 20) - self._filters = Filters(init_books, init_progress, init_genre, self._msg) + self._filters = Filters(init_books, init_progress, init_genre, init_search, self._msg) self._filters.set_hexpand(True) header.append(self._filters) header.append(add_book_button) box = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, spacing=0) box.append(header) - self._books = BookFlow(self, resources, library, ereader, conn, init_books, init_progress, init_genre, self._msg) + self._books = BookFlow(self, resources, library, ereader, conn, init_books, init_progress, init_genre, init_search, self._msg) box.append(self._books) self.set_child(box) def _msg(self, msg): match msg: case ['progress-selected', progress]: - self._books.update_filters(self._filters.get_progress(), self._filters.get_genre()) + self._books.update_filters(self._filters.get_progress(), self._filters.get_genre(), self._filters.get_search()) case ['genre-selected', genre]: - self._books.update_filters(self._filters.get_progress(), self._filters.get_genre()) + self._books.update_filters(self._filters.get_progress(), self._filters.get_genre(), self._filters.get_search()) + case ['search-updated', search]: + self._books.update_filters(self._filters.get_progress(), self._filters.get_genre(), self._filters.get_search()) case ['book-saved', book_id, data]: self._filters.select_progress(data['progress']) if not self._filters.get_genre() in data['genres']: |
