[gnac/devel] Code refactoring



commit a7d995f9347a6759ca487ff3c2428df3a7cf59d9
Author: BenoÃt Dupasquier <bdupasqu src gnome org>
Date:   Thu Nov 17 23:04:07 2011 +0000

    Code refactoring

 data/ui/gnac.xml |    3 +
 src/gnac-ui.c    |  178 ++++++++++++++++++++++-------------------------------
 src/gnac-ui.h    |    4 +-
 3 files changed, 79 insertions(+), 106 deletions(-)
---
diff --git a/data/ui/gnac.xml b/data/ui/gnac.xml
index 9ea7eed..af6367e 100644
--- a/data/ui/gnac.xml
+++ b/data/ui/gnac.xml
@@ -450,6 +450,9 @@ Alexandre Roux &lt;alexroux src gnome org&gt;</property>
                 <child>
                   <object class="GtkComboBox" id="filters_combo">
                     <property name="visible">True</property>
+                    <property name="width_request">185</property>
+                    <property name="height_request">29</property>
+                    <signal name="changed" handler="gnac_ui_on_filter_changed" object="gnac_file_chooser"/>
                   </object>
                   <packing>
                     <property name="expand">False</property>
diff --git a/src/gnac-ui.c b/src/gnac-ui.c
index 8a528ff..e5a3446 100644
--- a/src/gnac-ui.c
+++ b/src/gnac-ui.c
@@ -367,20 +367,14 @@ gnac_ui_file_chooser_new(void)
   model = gnac_ui_file_chooser_get_filters_model();
   combo = gnac_ui_get_widget("filters_combo");
   gtk_combo_box_set_model(GTK_COMBO_BOX(combo), model);
-  gtk_widget_set_size_request(combo, 174, 29);
 
   renderer = gtk_cell_renderer_text_new();
   gtk_cell_layout_pack_start(GTK_CELL_LAYOUT(combo), renderer, TRUE);
   gtk_cell_layout_set_cell_data_func(GTK_CELL_LAYOUT(combo), renderer,
-      (GtkCellLayoutDataFunc)gnac_ui_file_chooser_cell_data_func,
+      (GtkCellLayoutDataFunc) gnac_ui_file_chooser_cell_data_func,
       NULL, NULL);
 
-  g_signal_connect(G_OBJECT(combo), "changed",
-      G_CALLBACK(gnac_ui_on_filter_changed), gnac_file_chooser);
-
-  /* Use the 'Supported files' filter by default */
-  gtk_combo_box_set_active(GTK_COMBO_BOX(combo), 1);
-  gnac_ui_on_filter_changed(GTK_COMBO_BOX(combo), gnac_file_chooser);
+  gnac_ui_reset_file_filter();
 
   return gnac_file_chooser;
 }
@@ -390,8 +384,7 @@ static void
 gnac_ui_on_profile_changed_cb(GtkComboBox *box,
                               gpointer     data)
 {
-  const gchar *profile_name = NULL;
-  profile_name = gnac_profiles_get_name();
+  const gchar *profile_name = gnac_profiles_get_name();
   gnac_settings_set_string(GNAC_KEY_LAST_USED_PROFILE, profile_name);
 }
 
@@ -405,7 +398,7 @@ gnac_remove_track(gpointer data,
   GtkTreeRowReference *ref;
   gchar *uri = NULL;
 
-  ref = (GtkTreeRowReference*) data;
+  ref = (GtkTreeRowReference *) data;
 
   gnac_file_list_get(ref, &uri);
   file = g_file_new_for_uri(uri);
@@ -441,10 +434,10 @@ gnac_ui_show_toolbar(void)
 void
 gnac_ui_reset_file_filter(void)
 {
-  GtkComboBox *combo;
-  combo = GTK_COMBO_BOX(gnac_ui_get_widget("filters_combo"));
+  GtkComboBox *combo = GTK_COMBO_BOX(gnac_ui_get_widget("filters_combo"));
+  /* Use the 'Supported files' filter by default */
   gtk_combo_box_set_active(combo, 1);
-  gnac_ui_on_filter_changed(combo, gnac_file_chooser);
+  gnac_ui_on_filter_changed(gnac_file_chooser, combo);
 }
 
 
@@ -454,6 +447,7 @@ gnac_ui_get_file_chooser(void)
   if (G_UNLIKELY(!gnac_file_chooser)) {
     gnac_file_chooser = gnac_ui_file_chooser_new();
   }
+
   return gnac_file_chooser;
 }
 
@@ -498,8 +492,8 @@ gnac_ui_get_default_filter(void)
 
 
 void
-gnac_ui_on_filter_changed(GtkComboBox *combo,
-                          gpointer     user_data)
+gnac_ui_on_filter_changed(GtkWidget   *file_chooser,
+                          GtkComboBox *combo)
 {
   gpointer      filter;
   GtkTreeIter   iter;
@@ -511,7 +505,7 @@ gnac_ui_on_filter_changed(GtkComboBox *combo,
   g_return_if_fail(model);
   gtk_tree_model_get(model, &iter, 0, &filter, -1);
   if (GTK_IS_FILE_FILTER(filter)) {
-    gtk_file_chooser_set_filter(GTK_FILE_CHOOSER(user_data),
+    gtk_file_chooser_set_filter(GTK_FILE_CHOOSER(file_chooser),
         GTK_FILE_FILTER(filter));
   }
 }
@@ -547,7 +541,7 @@ gnac_ui_file_chooser_response_cb(GtkDialog *dialog,
 
       gnac_add_files(list_files);
 
-      /* Do we have to close de file chooser? */
+      /* Do we have to close the file chooser? */
       if (!gnac_ui_file_chooser_close_on_add_button_is_active()) return;
 
       break;
@@ -584,31 +578,18 @@ gnac_ui_file_chooser_key_press_event_cb(GtkWidget   *widget,
 }
 
 
-void
-gnac_ui_new(void)
+static void
+gnac_ui_add_audio_profile_combo_box(void)
 {
-  gchar           *current_profile;
-  GtkWidget       *audio_profile_hbox;
-  GtkWidget       *file_list;
-
-  gnac_stock_items_init();
-
-  gnac_main_builder = gnac_utils_create_gtk_builder(PKGDATADIR "/gnac.xml");
-
-  gtk_window_set_default_icon_name(PACKAGE);
+  gchar     *current_profile;
+  GtkWidget *audio_profile_hbox;
 
-  file_list = gnac_file_list_new();
-
-  /* Add audio profile combo box */
   audio_profile_hbox = gnac_ui_get_widget("audio_profile_hbox");
-
   audio_profile_chooser_combo = gnac_profiles_get_widget(
       gnac_ui_get_widget("main_window"));
 
-  g_signal_connect(G_OBJECT(audio_profile_chooser_combo), 
-      "changed",
-      G_CALLBACK(gnac_ui_on_profile_changed_cb),
-      NULL);
+  g_signal_connect(G_OBJECT(audio_profile_chooser_combo), "changed",
+      G_CALLBACK(gnac_ui_on_profile_changed_cb), NULL);
 
   current_profile = g_settings_get_string(settings, GNAC_KEY_LAST_USED_PROFILE);
   gnac_profiles_set_current_profile(current_profile);
@@ -616,26 +597,34 @@ gnac_ui_new(void)
 
   audio_profile_edit_button = gtk_button_new_from_stock(GTK_STOCK_EDIT);
   
-  g_signal_connect(G_OBJECT(audio_profile_edit_button), 
-      "clicked",
-      G_CALLBACK(gnac_profiles_on_edit), 
-      NULL);
+  g_signal_connect(G_OBJECT(audio_profile_edit_button), "clicked",
+      G_CALLBACK(gnac_profiles_on_edit), NULL);
   
-  gtk_box_pack_start(GTK_BOX(audio_profile_hbox), 
-      audio_profile_chooser_combo, 
+  gtk_box_pack_start(GTK_BOX(audio_profile_hbox), audio_profile_chooser_combo,
       FALSE, TRUE, 0);
 
-  gtk_box_pack_start(GTK_BOX(audio_profile_hbox), 
-      audio_profile_edit_button, 
+  gtk_box_pack_start(GTK_BOX(audio_profile_hbox), audio_profile_edit_button,
       FALSE, TRUE, 6);
+}
+
+void
+gnac_ui_new(void)
+{
+  GtkWidget *file_list;
+
+  gnac_stock_items_init();
+
+  gnac_main_builder = gnac_utils_create_gtk_builder(PKGDATADIR "/gnac.xml");
+
+  gtk_window_set_default_icon_name(PACKAGE);
+
+  file_list = gnac_file_list_new();
+
+  gnac_ui_add_audio_profile_combo_box();
 
   /* DnD portion code */
-  
-  gtk_drag_dest_set(file_list,
-      GTK_DEST_DEFAULT_ALL,
-      target_list,
-      n_targets,
-      GDK_ACTION_COPY);
+  gtk_drag_dest_set(file_list, GTK_DEST_DEFAULT_ALL,
+      target_list, n_targets, GDK_ACTION_COPY);
 }
 
 
@@ -660,8 +649,8 @@ void
 gnac_ui_set_progress_text(gchar *text)
 {
   GtkProgressBar *progress_bar;
-  progress_msg = text;
   progress_bar = GTK_PROGRESS_BAR(gnac_ui_get_widget("progressbar"));
+  progress_msg = text;
   gtk_progress_bar_set_text(progress_bar, progress_msg);
 }
 
@@ -682,22 +671,20 @@ gboolean
 gnac_ui_pulse_progress(void)
 {
   GtkWidget *progress_bar;
-  gchar *progress_text;
+  gchar     *progress_text;
+
+  if (state != GNAC_AUDIO_FILE_ACTION_STATE) return FALSE;
 
-  if (state == GNAC_AUDIO_FILE_ACTION_STATE) {
-    progress_bar = gnac_ui_get_widget("progressbar");
+  progress_bar = gnac_ui_get_widget("progressbar");
     
-    gtk_progress_bar_pulse(GTK_PROGRESS_BAR(progress_bar));
-    progress_text = g_strdup_printf(
-        ngettext("%u file added", "%u files added", nb_files_added),
-        nb_files_added);
-    gnac_ui_set_progress_text(progress_text);
-    g_free(progress_text);
+  gtk_progress_bar_pulse(GTK_PROGRESS_BAR(progress_bar));
+  progress_text = g_strdup_printf(
+      ngettext("%u file added", "%u files added", nb_files_added),
+      nb_files_added);
+  gnac_ui_set_progress_text(progress_text);
+  g_free(progress_text);
     
-    return TRUE;
-  } else {
-    return FALSE;
-  }
+  return TRUE;
 }
 
 
@@ -770,21 +757,16 @@ gnac_ui_show_popup_menu(GtkWidget      *treeview,
                         gpointer        user_data)
 {
   GtkWidget * popup_menu;
-
   popup_menu = gnac_ui_get_widget("main_popup");
-
-  gtk_menu_popup(GTK_MENU(popup_menu), NULL, NULL, NULL, NULL, 
-      (event != NULL) ? event->button : 0,
-      gdk_event_get_time((GdkEvent*) event));
+  gtk_menu_popup(GTK_MENU(popup_menu), NULL, NULL, NULL, NULL,
+      event ? event->button : 0, gdk_event_get_time((GdkEvent *) event));
 }
 
 
 void
 gnac_ui_show_about_dialog(void)
 {
-  GtkWidget *about_dialog;
-
-  about_dialog = gnac_ui_get_widget("aboutdialog");
+  GtkWidget *about_dialog = gnac_ui_get_widget("aboutdialog");
   gtk_about_dialog_set_version(GTK_ABOUT_DIALOG(about_dialog), PACKAGE_VERSION);
   gtk_widget_show_all(about_dialog);
 }
@@ -846,7 +828,7 @@ gnac_ui_on_audio_empty_state(void)
 void
 gnac_ui_on_audio_file_action_state(void)
 {
-  timeout_id = g_timeout_add(100, (GSourceFunc)gnac_ui_pulse_progress, NULL);
+  timeout_id = g_timeout_add(100, (GSourceFunc) gnac_ui_pulse_progress, NULL);
   gnac_bars_on_add_files();
   gnac_ui_show_progress(TRUE);
 }
@@ -989,21 +971,20 @@ gnac_ui_on_drag_data_received_cb(GtkWidget        *widget,
 
   uris = gtk_selection_data_get_uris(selection_data);
 
-  if (uris == NULL) {
+  if (!uris) {
     gtk_drag_finish (context, FALSE, FALSE, time);
     return;
   }
 
   uri = uris[0];
-  while (uri != NULL) {
+  while (uri) {
     file = g_file_new_for_uri(uri);
     list_uris = g_slist_append(list_uris, file);
-
-    index = index + 1;
+    index++;
     uri = uris[index];
   }
 
-  if (list_uris != NULL) gnac_add_files(list_uris);
+  if (list_uris) gnac_add_files(list_uris);
 
   gtk_drag_finish(context, TRUE, FALSE, time);
   g_strfreev(uris);
@@ -1149,7 +1130,7 @@ gnac_ui_show(void)
 {
   GtkWidget *main_window;
 
-  if (gnac_main_builder == NULL) {
+  if (!gnac_main_builder) {
     gnac_ui_new();
   }
 
@@ -1171,13 +1152,12 @@ gnac_ui_show(void)
 void
 gnac_ui_destroy(void)
 {
-  GtkWidget *main_window = NULL;
-  GtkWidget *about_dialog = NULL;
-
   gnac_properties_destroy();
   gnac_prefs_destroy();
   gnac_profiles_destroy();
 
+  gnac_file_list_destroy();
+
   if (trayicon) {
     g_object_unref(trayicon);
     trayicon = NULL;
@@ -1187,13 +1167,13 @@ gnac_ui_destroy(void)
     }
   }
 
-  gnac_file_list_destroy();
-  
   if (gnac_main_builder) {
-    main_window = gnac_ui_get_widget("main_window");
+    GtkWidget *main_window = gnac_ui_get_widget("main_window");
     if (main_window) gtk_widget_destroy(main_window);
-    about_dialog = gnac_ui_get_widget("aboutdialog");
+
+    GtkWidget *about_dialog = gnac_ui_get_widget("aboutdialog");
     if (about_dialog) gtk_widget_destroy(about_dialog);
+
     gnac_ui_file_chooser_dispose();
     g_object_unref(gnac_main_builder); 
     gnac_main_builder = NULL;
@@ -1213,11 +1193,8 @@ gnac_ui_confirm_exit(void)
   gnac_ui_trayicon_menu_activate(FALSE);
 
   dialog = gtk_message_dialog_new(
-      GTK_WINDOW(gnac_ui_get_widget("main_window")),
-      GTK_DIALOG_MODAL,
-      GTK_MESSAGE_WARNING,
-      GTK_BUTTONS_YES_NO,
-      "%s\n%s",
+      GTK_WINDOW(gnac_ui_get_widget("main_window")), GTK_DIALOG_MODAL,
+      GTK_MESSAGE_WARNING, GTK_BUTTONS_YES_NO, "%s\n%s",
       _("A conversion is currently running..."),
       _("Are you sure you want to quit?"));
 
@@ -1312,8 +1289,7 @@ gnac_ui_show_trayicon(void)
 
   main_window = gnac_ui_get_widget("main_window");
 
-  if (!trayicon) 
-  {
+  if (!trayicon) {
     trayicon = gtk_status_icon_new_from_icon_name("gnac");
     gtk_status_icon_set_has_tooltip(trayicon, TRUE);
     
@@ -1419,12 +1395,9 @@ gnac_ui_trayicon_tooltip_update(const gchar *tooltip)
     return;
   }
 
-  if (tooltip_path) {
-    g_free(tooltip_path);
-    tooltip_path = NULL;
-  }
-
+  g_free(tooltip_path);
   tooltip_path = g_strdup(tooltip);
+
   display = gdk_display_get_default();
   if (display) gtk_tooltip_trigger_tooltip_query(display);
 }
@@ -1481,11 +1454,8 @@ gnac_ui_show_error_trash(const gchar *filename)
 
   main_window = gnac_ui_get_widget("main_window");
 
-  dialog = gtk_message_dialog_new(
-      GTK_WINDOW(main_window),
-      GTK_DIALOG_DESTROY_WITH_PARENT,
-      GTK_MESSAGE_QUESTION,
-      GTK_BUTTONS_CANCEL,
+  dialog = gtk_message_dialog_new(GTK_WINDOW(main_window),
+      GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_QUESTION, GTK_BUTTONS_CANCEL,
       _("Failed to move the file to the Trash. Delete it permanently?"));
   gtk_dialog_add_button(GTK_DIALOG(dialog), GTK_STOCK_DELETE, 1);
 
diff --git a/src/gnac-ui.h b/src/gnac-ui.h
index 53029d2..51555cf 100644
--- a/src/gnac-ui.h
+++ b/src/gnac-ui.h
@@ -91,8 +91,8 @@ GtkFileFilter *
 gnac_ui_get_default_filter(void);
 
 void
-gnac_ui_on_filter_changed(GtkComboBox *combo,
-                          gpointer     user_data);
+gnac_ui_on_filter_changed(GtkWidget   *file_chooser,
+                          GtkComboBox *combo);
 
 void
 gnac_ui_file_chooser_response_cb(GtkDialog *dialog,



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]