refactoring
authorJean-Philippe Orsini <jeanfi@gmail.com>
Sat, 30 Nov 2013 17:59:43 +0000 (17:59 +0000)
committerJean-Philippe Orsini <jeanfi@gmail.com>
Sat, 30 Nov 2013 17:59:43 +0000 (17:59 +0000)
src/main.c
src/ui.c
src/ui.h

index 9b1817c..3837be6 100644 (file)
@@ -132,28 +132,15 @@ void refresh()
        struct task *task;
        int i;
        GtkTreeIter iter;
        struct task *task;
        int i;
        GtkTreeIter iter;
-       int status;
        const char *project;
 
        log_fct_enter();
        ui_taskpanel_update(NULL);
 
        const char *project;
 
        log_fct_enter();
        ui_taskpanel_update(NULL);
 
-       status = gtk_combo_box_get_active(w_status);
-       log_debug("status: %d", status);
-
        if (tasks)
                tw_task_list_free(tasks);
 
        if (tasks)
                tw_task_list_free(tasks);
 
-       switch (status) {
-       case 0:
-               tasks = tw_get_all_tasks("pending");
-               break;
-       case 1:
-               tasks = tw_get_all_tasks("completed");
-               break;
-       default:
-               tasks = tw_get_all_tasks("pending");
-       }
+       tasks = tw_get_all_tasks(ui_get_status_filter());
 
        model = gtk_tree_view_get_model(GTK_TREE_VIEW(w_treeview));
        gtk_list_store_clear(GTK_LIST_STORE(model));
 
        model = gtk_tree_view_get_model(GTK_TREE_VIEW(w_treeview));
        gtk_list_store_clear(GTK_LIST_STORE(model));
index 74b13ec..8c883ea 100644 (file)
--- a/src/ui.c
+++ b/src/ui.c
@@ -23,6 +23,8 @@
 #include <ui_projecttree.h>
 #include <ui_tasktree.h>
 
 #include <ui_projecttree.h>
 #include <ui_tasktree.h>
 
+static GtkComboBox *w_status;
+
 int newtask_clicked_cbk(GtkButton *btn, gpointer data)
 {
        ui_newtask();
 int newtask_clicked_cbk(GtkButton *btn, gpointer data)
 {
        ui_newtask();
@@ -66,6 +68,7 @@ GtkWindow *create_window(GtkBuilder *builder, GSettings *settings)
        int x, y, w, h;
 
        window = GTK_WINDOW(gtk_builder_get_object(builder, "window"));
        int x, y, w, h;
 
        window = GTK_WINDOW(gtk_builder_get_object(builder, "window"));
+       w_status = GTK_COMBO_BOX(gtk_builder_get_object(builder, "status"));
 
        w = g_settings_get_int(settings, "window-width");
        h = g_settings_get_int(settings, "window-height");
 
        w = g_settings_get_int(settings, "window-width");
        h = g_settings_get_int(settings, "window-height");
@@ -85,3 +88,23 @@ GtkWindow *create_window(GtkBuilder *builder, GSettings *settings)
 
        return window;
 }
 
        return window;
 }
+
+const char *ui_get_status_filter()
+{
+       const char *result;
+       int status;
+
+       log_fct_enter();
+
+       status = gtk_combo_box_get_active(w_status);
+       log_fct(__func__, "status: %d", status);
+
+       if (status == 1)
+               result = "completed";
+       else
+               result = "pending";
+
+       log_fct_exit();
+
+       return result;
+}
index 54914e3..0c70bbd 100644 (file)
--- a/src/ui.h
+++ b/src/ui.h
@@ -24,5 +24,6 @@
 
 GtkWindow *create_window(GtkBuilder *, GSettings *);
 void refresh();
 
 GtkWindow *create_window(GtkBuilder *, GSettings *);
 void refresh();
+const char *ui_get_status_filter();
 
 #endif
 
 #endif