[gnome-commander/get_rid_of_xml] Store file selector id instead of just a boolean for the file list tabs



commit b6bb42adf3684eed16e7b463f47797aabf518404
Author: Uwe Scholz <u scholz83 gmx de>
Date:   Mon Oct 1 23:08:11 2018 +0200

    Store file selector id instead of just a boolean for the file list tabs

 src/gnome-cmd-data.cc | 39 +++++++++++++++++++++++++++++----------
 src/gnome-cmd-data.h  |  2 +-
 2 files changed, 30 insertions(+), 11 deletions(-)
---
diff --git a/src/gnome-cmd-data.cc b/src/gnome-cmd-data.cc
index 107e2985..3688a294 100644
--- a/src/gnome-cmd-data.cc
+++ b/src/gnome-cmd-data.cc
@@ -1750,17 +1750,36 @@ void GnomeCmdData::save_advrename_profiles (const gchar *fname)
 /**
  * Save tabs of a FileSelectorID in a given GKeyFile
  */
-static void save_tabs(GKeyFile* keyFile, enum FileSelectorID side)
+static void save_tabs(GKeyFile* keyFile, enum FileSelectorID fileSelectorId)
 {
     static gint counter = 1;
+    string fileSelectorIdString;
 
-    bool left = true;
-    if (side == LEFT)
-        left = true;
-    else if (side == RIGHT)
-        left = RIGHT;
+    switch (fileSelectorId)
+    {
+        case LEFT:
+        {
+            fileSelectorIdString = "left";
+            break;
+        }
+        case RIGHT:
+        {
+            fileSelectorIdString = "right";
+            break;
+        }
+        case ACTIVE:
+        {
+            fileSelectorIdString = "active";
+            break;
+        }
+        case INACTIVE:
+        {
+            fileSelectorIdString = "inactive";
+            break;
+        }
+    }
 
-    GnomeCmdFileSelector gnomeCmdFileSelector = *main_win->fs(side);
+    GnomeCmdFileSelector gnomeCmdFileSelector = *main_win->fs(fileSelectorId);
     GList *tabs = gnomeCmdFileSelector.GetTabs();
 
     for (GList *i=tabs; i; i=i->next)
@@ -1772,7 +1791,7 @@ static void save_tabs(GKeyFile* keyFile, enum FileSelectorID side)
                 if (GNOME_CMD_FILE_LIST (fl) && gnome_cmd_con_is_local (fl->con))
                 {
                     g_key_file_set_string(keyFile, alias.c_str(), TAB_PATH, GNOME_CMD_FILE 
(fl->cwd)->get_real_path());
-                    g_key_file_set_boolean(keyFile, alias.c_str(), TAB_LEFT, left);
+                    g_key_file_set_string(keyFile, alias.c_str(), TAB_FILESLECTORID, 
fileSelectorIdString.c_str());
                     g_key_file_set_boolean(keyFile, alias.c_str(), TAB_SORT, fl->get_sort_column());
                     g_key_file_set_boolean(keyFile, alias.c_str(), TAB_ASC, fl->get_sort_order());
                     g_key_file_set_boolean(keyFile, alias.c_str(), TAB_LOCK, fl->locked);
@@ -1786,7 +1805,7 @@ static void save_tabs(GKeyFile* keyFile, enum FileSelectorID side)
                 if (GNOME_CMD_FILE_LIST (fl) && gnome_cmd_con_is_local (fl->con) && 
(fl==gnomeCmdFileSelector.file_list() || fl->locked))
                 {
                     g_key_file_set_string(keyFile, alias.c_str(), TAB_PATH, GNOME_CMD_FILE 
(fl->cwd)->get_real_path());
-                    g_key_file_set_boolean(keyFile, alias.c_str(), TAB_LEFT, left);
+                    g_key_file_set_string(keyFile, alias.c_str(), TAB_FILESLECTORID, 
fileSelectorIdString.c_str());
                     g_key_file_set_boolean(keyFile, alias.c_str(), TAB_SORT, fl->get_sort_column());
                     g_key_file_set_boolean(keyFile, alias.c_str(), TAB_ASC, fl->get_sort_order());
                     g_key_file_set_boolean(keyFile, alias.c_str(), TAB_LOCK, fl->locked);
@@ -1798,7 +1817,7 @@ static void save_tabs(GKeyFile* keyFile, enum FileSelectorID side)
                 if (GNOME_CMD_FILE_LIST (fl) && gnome_cmd_con_is_local (fl->con) && fl->locked)
                 {
                     g_key_file_set_string(keyFile, alias.c_str(), TAB_PATH, GNOME_CMD_FILE 
(fl->cwd)->get_real_path());
-                    g_key_file_set_boolean(keyFile, alias.c_str(), TAB_LEFT, left);
+                    g_key_file_set_string(keyFile, alias.c_str(), TAB_FILESLECTORID, 
fileSelectorIdString.c_str());
                     g_key_file_set_boolean(keyFile, alias.c_str(), TAB_SORT, fl->get_sort_column());
                     g_key_file_set_boolean(keyFile, alias.c_str(), TAB_ASC, fl->get_sort_order());
                     g_key_file_set_boolean(keyFile, alias.c_str(), TAB_LOCK, fl->locked);
diff --git a/src/gnome-cmd-data.h b/src/gnome-cmd-data.h
index ef3c2fa4..0f488bfb 100644
--- a/src/gnome-cmd-data.h
+++ b/src/gnome-cmd-data.h
@@ -227,7 +227,7 @@ GcmdSettings *gcmd_settings_new (void);
 #define FAV_APPS_REQUIRES_TERMINAL                    "requires_terminal"
 #define TABS_LAYOUT_FILENAME                          "file-list-tabs"
 #define TAB_PATH                                      "path"
-#define TAB_LEFT                                      "left"
+#define TAB_FILESLECTORID                             "fileSelectorId"
 #define TAB_SORT                                      "sort"
 #define TAB_ASC                                       "asc"
 #define TAB_LOCK                                      "lock"


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