[gnome-commander] GnomeCmdFile: initial migration to C++



commit 5b58496627d23ed90d13252cc7a5dcc7486d893f
Author: Piotr Eljasiak <epiotr src gnome org>
Date:   Thu Aug 12 00:52:17 2010 +0200

    GnomeCmdFile: initial migration to C++

 src/gnome-cmd-file-list.cc         |   22 +++++++++++-----------
 src/gnome-cmd-file-popmenu.cc      |    2 +-
 src/gnome-cmd-file-props-dialog.cc |    2 +-
 src/gnome-cmd-file-selector.cc     |    4 ++--
 src/gnome-cmd-file.cc              |   18 +++++++-----------
 src/gnome-cmd-file.h               |   24 +++++++++++-------------
 6 files changed, 33 insertions(+), 39 deletions(-)
---
diff --git a/src/gnome-cmd-file-list.cc b/src/gnome-cmd-file-list.cc
index 6a1d6d6..f4b5fcf 100644
--- a/src/gnome-cmd-file-list.cc
+++ b/src/gnome-cmd-file-list.cc
@@ -856,7 +856,7 @@ static gint sort_by_name (GnomeCmdFile *f1, GnomeCmdFile *f2, GnomeCmdFileList *
 
     gboolean raising = fl->priv->sort_raising[fl->priv->current_col];
 
-    return my_strcmp (gnome_cmd_file_get_collation_fname (f1), gnome_cmd_file_get_collation_fname (f2), raising);
+    return my_strcmp (f1->get_collation_fname(), f2->get_collation_fname(), raising);
 }
 
 
@@ -877,7 +877,7 @@ static gint sort_by_ext (GnomeCmdFile *f1, GnomeCmdFile *f2, GnomeCmdFileList *f
     gboolean raising = fl->priv->sort_raising[fl->priv->current_col];
 
     if (!gnome_cmd_file_get_extension (f1) && !gnome_cmd_file_get_extension (f2))
-        return my_strcmp (gnome_cmd_file_get_collation_fname (f1), gnome_cmd_file_get_collation_fname (f2), fl->priv->sort_raising[1]);
+        return my_strcmp (f1->get_collation_fname(), f2->get_collation_fname(), fl->priv->sort_raising[1]);
 
     if (!gnome_cmd_file_get_extension (f1))
         return raising?1:-1;
@@ -886,7 +886,7 @@ static gint sort_by_ext (GnomeCmdFile *f1, GnomeCmdFile *f2, GnomeCmdFileList *f
 
     gint ret = my_strcmp (gnome_cmd_file_get_extension (f1), gnome_cmd_file_get_extension (f2), raising);
 
-    return ret ? ret : my_strcmp (gnome_cmd_file_get_collation_fname (f1), gnome_cmd_file_get_collation_fname (f2), fl->priv->sort_raising[1]);
+    return ret ? ret : my_strcmp (f1->get_collation_fname(), f2->get_collation_fname(), fl->priv->sort_raising[1]);
 }
 
 
@@ -919,7 +919,7 @@ static gint sort_by_dir (GnomeCmdFile *f1, GnomeCmdFile *f2, GnomeCmdFileList *f
 
     // return ret;
 
-    return my_strcmp (gnome_cmd_file_get_collation_fname (f1), gnome_cmd_file_get_collation_fname (f2), raising);
+    return my_strcmp (f1->get_collation_fname(), f2->get_collation_fname(), raising);
 }
 
 
@@ -940,7 +940,7 @@ static gint sort_by_size (GnomeCmdFile *f1, GnomeCmdFile *f2, GnomeCmdFileList *
     {
         ret = my_filesizecmp (f1->info->size, f2->info->size, raising);
         if (!ret)
-            ret = my_strcmp (gnome_cmd_file_get_collation_fname (f1), gnome_cmd_file_get_collation_fname (f2), file_raising);
+            ret = my_strcmp (f1->get_collation_fname(), f2->get_collation_fname(), file_raising);
     }
     return ret;
 }
@@ -962,7 +962,7 @@ static gint sort_by_perm (GnomeCmdFile *f1, GnomeCmdFile *f2, GnomeCmdFileList *
     {
         ret = my_intcmp (f1->info->permissions, f2->info->permissions, raising);
         if (!ret)
-            ret = my_strcmp (gnome_cmd_file_get_collation_fname (f1), gnome_cmd_file_get_collation_fname (f2), file_raising);
+            ret = my_strcmp (f1->get_collation_fname(), f2->get_collation_fname(), file_raising);
     }
     return ret;
 }
@@ -984,7 +984,7 @@ static gint sort_by_date (GnomeCmdFile *f1, GnomeCmdFile *f2, GnomeCmdFileList *
     {
         ret = my_intcmp (f1->info->mtime, f2->info->mtime, raising);
         if (!ret)
-            ret = my_strcmp (gnome_cmd_file_get_collation_fname (f1), gnome_cmd_file_get_collation_fname (f2), file_raising);
+            ret = my_strcmp (f1->get_collation_fname(), f2->get_collation_fname(), file_raising);
     }
     return ret;
 }
@@ -1006,7 +1006,7 @@ static gint sort_by_owner (GnomeCmdFile *f1, GnomeCmdFile *f2, GnomeCmdFileList
     {
         ret = my_intcmp (f1->info->uid, f2->info->uid, raising);
         if (!ret)
-            ret = my_strcmp (gnome_cmd_file_get_collation_fname (f1), gnome_cmd_file_get_collation_fname (f2), file_raising);
+            ret = my_strcmp (f1->get_collation_fname(), f2->get_collation_fname(), file_raising);
     }
     return ret;
 }
@@ -1028,7 +1028,7 @@ static gint sort_by_group (GnomeCmdFile *f1, GnomeCmdFile *f2, GnomeCmdFileList
     {
         ret = my_intcmp (f1->info->gid, f2->info->gid, raising);
         if (!ret)
-            ret = my_strcmp (gnome_cmd_file_get_collation_fname (f1), gnome_cmd_file_get_collation_fname (f2), file_raising);
+            ret = my_strcmp (f1->get_collation_fname(), f2->get_collation_fname(), file_raising);
     }
     return ret;
 }
@@ -1779,7 +1779,7 @@ void GnomeCmdFileList::show_files(GnomeCmdDir *dir)
 
 void GnomeCmdFileList::update_file(GnomeCmdFile *f)
 {
-    if (!gnome_cmd_file_needs_update (f))
+    if (!f->needs_update())
         return;
 
     gint row = get_row_from_file(f);
@@ -2679,7 +2679,7 @@ void GnomeCmdFileList::invalidate_tree_size()
     {
         GnomeCmdFile *f = (GnomeCmdFile *) tmp->data;
         if (f->info->type == GNOME_VFS_FILE_TYPE_DIRECTORY)
-            gnome_cmd_file_invalidate_tree_size (f);
+            f->invalidate_tree_size();
     }
 }
 
diff --git a/src/gnome-cmd-file-popmenu.cc b/src/gnome-cmd-file-popmenu.cc
index ef07299..122e9b3 100644
--- a/src/gnome-cmd-file-popmenu.cc
+++ b/src/gnome-cmd-file-popmenu.cc
@@ -93,7 +93,7 @@ static void cb_exec_default (GtkMenuItem *menu_item, GList *files)
     for (; files; files = files->next)
     {
         GnomeCmdFile *f = (GnomeCmdFile *) files->data;
-        GnomeVFSMimeApplication *vfs_app = gnome_cmd_file_get_default_application (f);
+        GnomeVFSMimeApplication *vfs_app = f->get_default_application();
 
         if (vfs_app)
         {
diff --git a/src/gnome-cmd-file-props-dialog.cc b/src/gnome-cmd-file-props-dialog.cc
index ace80fc..065d9b8 100644
--- a/src/gnome-cmd-file-props-dialog.cc
+++ b/src/gnome-cmd-file-props-dialog.cc
@@ -469,7 +469,7 @@ inline GtkWidget *create_properties_tab (GnomeCmdFilePropsDialogPrivate *data)
         label = create_bold_label (dialog, _("Opens with:"));
         table_add (table, label, 0, y, GTK_FILL);
 
-        GnomeVFSMimeApplication *vfs_app = gnome_cmd_file_get_default_application (data->f);
+        GnomeVFSMimeApplication *vfs_app = data->f->get_default_application();
 
         if (vfs_app)
         {
diff --git a/src/gnome-cmd-file-selector.cc b/src/gnome-cmd-file-selector.cc
index b93b0d3..f46b6af 100644
--- a/src/gnome-cmd-file-selector.cc
+++ b/src/gnome-cmd-file-selector.cc
@@ -139,7 +139,7 @@ inline void GnomeCmdFileSelector::update_selected_files_label()
                 if (!f->is_dotdot)
                 {
                     num_dirs++;
-                    if (gnome_cmd_file_has_tree_size (f))
+                    if (f->has_tree_size())
                         total_bytes += gnome_cmd_file_get_tree_size (f);
                 }
                 break;
@@ -162,7 +162,7 @@ inline void GnomeCmdFileSelector::update_selected_files_label()
         {
             case GNOME_VFS_FILE_TYPE_DIRECTORY:
                 num_sel_dirs++;
-                if (gnome_cmd_file_has_tree_size (f))
+                if (f->has_tree_size())
                     sel_bytes += gnome_cmd_file_get_tree_size (f);
                 break;
 
diff --git a/src/gnome-cmd-file.cc b/src/gnome-cmd-file.cc
index 9e0ac06..00ebb93 100644
--- a/src/gnome-cmd-file.cc
+++ b/src/gnome-cmd-file.cc
@@ -1004,15 +1004,15 @@ inline gulong tv2ms (const GTimeVal &t)
 }
 
 
-gboolean gnome_cmd_file_needs_update (GnomeCmdFile *f)
+gboolean GnomeCmdFile::needs_update()
 {
     GTimeVal t;
 
     g_get_current_time (&t);
 
-    if (tv2ms (t) - tv2ms (f->priv->last_update) > gnome_cmd_data.gui_update_rate)
+    if (tv2ms (t) - tv2ms (priv->last_update) > gnome_cmd_data.gui_update_rate)
     {
-        f->priv->last_update = t;
+        priv->last_update = t;
         return TRUE;
     }
 
@@ -1020,17 +1020,13 @@ gboolean gnome_cmd_file_needs_update (GnomeCmdFile *f)
 }
 
 
-void gnome_cmd_file_invalidate_tree_size (GnomeCmdFile *f)
+void GnomeCmdFile::invalidate_tree_size()
 {
-    g_return_if_fail (GNOME_CMD_IS_FILE (f));
-
-    f->priv->tree_size = -1;
+    priv->tree_size = -1;
 }
 
 
-gboolean gnome_cmd_file_has_tree_size (GnomeCmdFile *f)
+gboolean GnomeCmdFile::has_tree_size()
 {
-    g_return_val_if_fail (f != NULL, FALSE);
-
-    return f->priv->tree_size != -1;
+    return priv->tree_size != -1;
 }
diff --git a/src/gnome-cmd-file.h b/src/gnome-cmd-file.h
index 6af55ee..86532cb 100644
--- a/src/gnome-cmd-file.h
+++ b/src/gnome-cmd-file.h
@@ -41,6 +41,15 @@ struct GnomeCmdFile
     gchar *collate_key;                 // necessary for proper sorting of UTF-8 encoded file names
     GnomeCmdFilePrivate *priv;
     GnomeCmdFileMetadata *metadata;
+
+    char *get_collation_fname() const    {  return collate_key ? collate_key : info->name;  }
+
+    gboolean needs_update();
+
+    void invalidate_tree_size();
+    gboolean has_tree_size();
+
+    GnomeVFSMimeApplication *get_default_application();
 };
 
 struct GnomeCmdFileClass
@@ -85,11 +94,6 @@ gchar *gnome_cmd_file_get_unescaped_dirname (GnomeCmdFile *f);
 GnomeVFSURI *gnome_cmd_file_get_uri (GnomeCmdFile *f, const gchar *name=NULL);
 gchar *gnome_cmd_file_get_uri_str (GnomeCmdFile *f, GnomeVFSURIHideOptions hide_options=GNOME_VFS_URI_HIDE_NONE);
 
-inline char *gnome_cmd_file_get_collation_fname (GnomeCmdFile *f)
-{
-    return f->collate_key ? f->collate_key : f->info->name;
-}
-
 const gchar *gnome_cmd_file_get_extension (GnomeCmdFile *f);
 const gchar *gnome_cmd_file_get_owner (GnomeCmdFile *f);
 const gchar *gnome_cmd_file_get_group (GnomeCmdFile *f);
@@ -132,15 +136,9 @@ gboolean gnome_cmd_file_is_executable (GnomeCmdFile *f);
 void gnome_cmd_file_is_deleted (GnomeCmdFile *f);
 void gnome_cmd_file_execute (GnomeCmdFile *f);
 
-gboolean gnome_cmd_file_needs_update (GnomeCmdFile *f);
-
-//misc tree size functions
-void gnome_cmd_file_invalidate_tree_size (GnomeCmdFile *f);
-gboolean gnome_cmd_file_has_tree_size (GnomeCmdFile *f);
-
-inline GnomeVFSMimeApplication *gnome_cmd_file_get_default_application (GnomeCmdFile *f)
+inline GnomeVFSMimeApplication *GnomeCmdFile::get_default_application()
 {
-    return f && f->info->mime_type ? gnome_vfs_mime_get_default_application (f->info->mime_type) : NULL;
+    return info->mime_type ? gnome_vfs_mime_get_default_application (info->mime_type) : NULL;
 }
 
 #endif // __GNOME_CMD_FILE_H__



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