[gnome-commander/GSettings] Adds show_regular filter option to GSettings migration (now known as hide-regular)



commit d30056c4251f99dc9db0b9eaba27cf162f5d41d3
Author: Uwe Scholz <uwescholz src gnome org>
Date:   Tue May 17 19:17:58 2016 +0200

    Adds show_regular filter option to GSettings migration (now known as hide-regular)

 data/org.gnome.gnome-commander.gschema.xml |    4 ++--
 src/gnome-cmd-data.cc                      |   16 ++++++++++++++--
 src/gnome-cmd-data.h                       |    1 +
 3 files changed, 17 insertions(+), 4 deletions(-)
---
diff --git a/data/org.gnome.gnome-commander.gschema.xml b/data/org.gnome.gnome-commander.gschema.xml
index d076526..3d0d5a8 100644
--- a/data/org.gnome.gnome-commander.gschema.xml
+++ b/data/org.gnome.gnome-commander.gschema.xml
@@ -316,8 +316,8 @@
     </key>
     <key name="hide-regular" type="b">
       <default>false</default>
-      <summary></summary>
-      <description></description>
+      <summary>Hide regular files</summary>
+      <description>Hide regular files</description>
     </key>
     <key name="hide-directory" type="b">
       <default>false</default>
diff --git a/src/gnome-cmd-data.cc b/src/gnome-cmd-data.cc
index 5901901..dc13ee1 100644
--- a/src/gnome-cmd-data.cc
+++ b/src/gnome-cmd-data.cc
@@ -135,6 +135,9 @@ void on_filter_changed ()
     filter = g_settings_get_boolean (gnome_cmd_data.options.gcmd_settings->filter, 
GCMD_SETTINGS_FILTER_HIDE_UNKNOWN);
     gnome_cmd_data.options.filter.file_types[GNOME_VFS_FILE_TYPE_UNKNOWN] = filter;
 
+    filter = g_settings_get_boolean (gnome_cmd_data.options.gcmd_settings->filter, 
GCMD_SETTINGS_FILTER_HIDE_REGULAR);
+    gnome_cmd_data.options.filter.file_types[GNOME_VFS_FILE_TYPE_REGULAR] = filter;
+
     main_win->update_view();
 }
 
@@ -184,6 +187,11 @@ static void gcmd_connect_gsettings_signals(GcmdSettings *gs)
                       G_CALLBACK (on_filter_changed),
                       NULL);
 
+    g_signal_connect (gs->filter,
+                      "changed::hide-regular",
+                      G_CALLBACK (on_filter_changed),
+                      NULL);
+
 }
 
 
@@ -1535,6 +1543,10 @@ void GnomeCmdData::migrate_all_data_to_gsettings()
         migrate_data_int_value_into_gsettings(gnome_cmd_data_get_bool ("/options/show_unknown", FALSE) ? 1 : 
0,
                                                         options.gcmd_settings->filter, 
GCMD_SETTINGS_FILTER_HIDE_UNKNOWN);
 
+        //show_regular
+        migrate_data_int_value_into_gsettings(gnome_cmd_data_get_bool ("/options/show_regular", FALSE) ? 1 : 
0,
+                                                        options.gcmd_settings->filter, 
GCMD_SETTINGS_FILTER_HIDE_REGULAR);
+
         // ToDo: Move old xml-file to ~/.gnome-commander/gnome-commander.xml.backup
         //       à la save_devices_old ("devices.backup");
         //       and move .gnome2/gnome-commander to .gnome2/gnome-commander.backup
@@ -1653,7 +1665,7 @@ void GnomeCmdData::load()
     options.confirm_mouse_dnd = gnome_cmd_data_get_bool ("/confirm/confirm_mouse_dnd", TRUE);
 
     options.filter.file_types[GNOME_VFS_FILE_TYPE_UNKNOWN] = g_settings_get_boolean 
(options.gcmd_settings->filter, GCMD_SETTINGS_FILTER_HIDE_UNKNOWN);
-    options.filter.file_types[GNOME_VFS_FILE_TYPE_REGULAR] = gnome_cmd_data_get_bool 
("/options/show_regular", FALSE);
+    options.filter.file_types[GNOME_VFS_FILE_TYPE_REGULAR] = g_settings_get_boolean 
(options.gcmd_settings->filter, GCMD_SETTINGS_FILTER_HIDE_REGULAR);
     options.filter.file_types[GNOME_VFS_FILE_TYPE_DIRECTORY] = gnome_cmd_data_get_bool 
("/options/show_directory", FALSE);
     options.filter.file_types[GNOME_VFS_FILE_TYPE_FIFO] = gnome_cmd_data_get_bool ("/options/show_fifo", 
FALSE);
     options.filter.file_types[GNOME_VFS_FILE_TYPE_SOCKET] = gnome_cmd_data_get_bool ("/options/show_socket", 
FALSE);
@@ -2198,7 +2210,7 @@ void GnomeCmdData::save()
     gnome_cmd_data_set_bool   ("/confirm/confirm_mouse_dnd", options.confirm_mouse_dnd);
 
     set_gsettings_when_changed      (options.gcmd_settings->filter, GCMD_SETTINGS_FILTER_HIDE_UNKNOWN, 
&(options.filter.file_types[GNOME_VFS_FILE_TYPE_UNKNOWN]));
-    gnome_cmd_data_set_bool   ("/options/show_regular", 
options.filter.file_types[GNOME_VFS_FILE_TYPE_REGULAR]);
+    set_gsettings_when_changed      (options.gcmd_settings->filter, GCMD_SETTINGS_FILTER_HIDE_REGULAR, 
&(options.filter.file_types[GNOME_VFS_FILE_TYPE_REGULAR]));
     gnome_cmd_data_set_bool   ("/options/show_directory", 
options.filter.file_types[GNOME_VFS_FILE_TYPE_DIRECTORY]);
     gnome_cmd_data_set_bool   ("/options/show_fifo", options.filter.file_types[GNOME_VFS_FILE_TYPE_FIFO]);
     gnome_cmd_data_set_bool   ("/options/show_socket", 
options.filter.file_types[GNOME_VFS_FILE_TYPE_SOCKET]);
diff --git a/src/gnome-cmd-data.h b/src/gnome-cmd-data.h
index 280b01c..02379fb 100644
--- a/src/gnome-cmd-data.h
+++ b/src/gnome-cmd-data.h
@@ -65,6 +65,7 @@ GcmdSettings *gcmd_settings_new (void);
 
 #define GCMD_PREF_FILTER                              "org.gnome.gnome-commander.preferences.filter"
 #define GCMD_SETTINGS_FILTER_HIDE_UNKNOWN             "hide-unknown"
+#define GCMD_SETTINGS_FILTER_HIDE_REGULAR             "hide-regular"
 
 struct GnomeCmdConRemote;
 


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