From: Philipp Zabel Date: Sun, 11 Jul 2010 10:43:08 +0000 (+0200) Subject: Movie list window: keep movie count, show "No movies" label if emptied X-Git-Url: http://vcs.maemo.org/git/?p=cinaest;a=commitdiff_plain;h=a7c8fc2a81f2d21a11f68c0ae3553c1e0691a069 Movie list window: keep movie count, show "No movies" label if emptied --- diff --git a/src/movie-list-window.vala b/src/movie-list-window.vala index bc415e1..d5b6b4f 100644 --- a/src/movie-list-window.vala +++ b/src/movie-list-window.vala @@ -32,6 +32,7 @@ public class MovieListWindow : StackableWindow { private bool search_bar_visible; private MovieWindow movie_window; private Alignment alignment; + private int count; public MovieListWindow (MovieSource source) { set_title (source.get_description ()); @@ -98,6 +99,8 @@ public class MovieListWindow : StackableWindow { close_button.clicked.connect (on_close_button_clicked); key_press_event.connect (on_key_press_event); movie_list.movie_activated.connect (on_movie_activated); + store.row_deleted.connect (on_row_deleted); + store.row_inserted.connect (on_row_inserted); store.search_finished.connect (on_search_finished); store.notify["update-running"].connect (on_update_running_changed); @@ -242,6 +245,20 @@ public class MovieListWindow : StackableWindow { movie_window.show (); } + private void on_row_deleted (TreePath path) { + if (--count == 0) { + no_movies.show (); + movie_list.hide (); + } + } + + private void on_row_inserted (TreePath path, TreeIter iter) { + if (count++ == 0) { + no_movies.hide (); + movie_list.show (); + } + } + private void on_update_running_changed (GLib.Object source, ParamSpec spec) { TreeIter iter;