[gnome-commander] Migrate type2string from gnome-vfs to gio



commit d00b6746922724b0723af1bf5087343f9a125e5d
Author: Uwe Scholz <u scholz83 gmx de>
Date:   Sun Jan 24 14:02:38 2021 +0100

    Migrate type2string from gnome-vfs to gio

 src/gnome-cmd-file.cc |  4 +---
 src/utils.cc          | 23 ++++++++++-------------
 src/utils.h           |  2 +-
 3 files changed, 12 insertions(+), 17 deletions(-)
---
diff --git a/src/gnome-cmd-file.cc b/src/gnome-cmd-file.cc
index 2a88ea86..0f9010ad 100644
--- a/src/gnome-cmd-file.cc
+++ b/src/gnome-cmd-file.cc
@@ -719,9 +719,7 @@ const gchar *GnomeCmdFile::get_type_string()
 {
     static gchar type_str[MAX_TYPE_LENGTH];
 
-    g_return_val_if_fail (info != nullptr, nullptr);
-
-    type2string (info->type, type_str, MAX_TYPE_LENGTH);
+    type2string (GetGfileAttributeUInt32(G_FILE_ATTRIBUTE_STANDARD_TYPE), type_str, MAX_TYPE_LENGTH);
     return type_str;
 }
 
diff --git a/src/utils.cc b/src/utils.cc
index 92f244f3..c13f7a6a 100644
--- a/src/utils.cc
+++ b/src/utils.cc
@@ -228,35 +228,32 @@ gint run_simple_dialog (GtkWidget *parent, gboolean ignore_close_box,
     return result;
 }
 
-const gchar *type2string (GnomeVFSFileType type, gchar *buf, guint max)
+const gchar *type2string (guint32 type, gchar *buf, guint max)
 {
     const char *s;
 
     switch (type)
     {
-        case GNOME_VFS_FILE_TYPE_UNKNOWN:
+        case G_FILE_TYPE_UNKNOWN:
             s = "?";
             break;
-        case GNOME_VFS_FILE_TYPE_REGULAR:
+        case G_FILE_TYPE_REGULAR:
             s = " ";
             break;
-        case GNOME_VFS_FILE_TYPE_DIRECTORY:
+        case G_FILE_TYPE_DIRECTORY:
             s = G_DIR_SEPARATOR_S;
             break;
-        case GNOME_VFS_FILE_TYPE_SYMBOLIC_LINK:
+        case G_FILE_TYPE_SYMBOLIC_LINK:
             s = "@";
             break;
-        case GNOME_VFS_FILE_TYPE_FIFO:
-            s = "F";
-            break;
-        case GNOME_VFS_FILE_TYPE_SOCKET:
+        case G_FILE_TYPE_SPECIAL:
             s = "S";
             break;
-        case GNOME_VFS_FILE_TYPE_CHARACTER_DEVICE:
-            s = "C";
+        case G_FILE_TYPE_SHORTCUT:
+            s = "K"; // "Keyboard shortcut"
             break;
-        case GNOME_VFS_FILE_TYPE_BLOCK_DEVICE:
-            s = "B";
+        case G_FILE_TYPE_MOUNTABLE:
+            s = "M";
             break;
 
         default:
diff --git a/src/utils.h b/src/utils.h
index a0c3a66a..d6206404 100644
--- a/src/utils.h
+++ b/src/utils.h
@@ -120,7 +120,7 @@ inline char *int2string (gint i)
     return g_strdup_printf ("%d", i);
 }
 
-const gchar *type2string (GnomeVFSFileType type, gchar *buf, guint max);
+const gchar *type2string (guint32 type, gchar *buf, guint max);
 const gchar *perm2string (GnomeVFSFilePermissions p, gchar *buf, guint max);
 const gchar *perm2textstring (GnomeVFSFilePermissions p, gchar *buf, guint max);
 const gchar *perm2numstring (GnomeVFSFilePermissions p, gchar *buf, guint max);


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