[gnome-commander: 1/2] Replace deprecated widget GtkPixmap with GtkImage




commit d02231b5f6866ed6e1f4c5ac70ad28c316b43b5e
Author: Roman Pauer <roman pauer gmail com>
Date:   Thu Aug 11 11:17:35 2022 +0200

    Replace deprecated widget GtkPixmap with GtkImage

 src/gnome-cmd-file-list.cc     | 37 ++++++++++++++++++-------------------
 src/gnome-cmd-file-selector.cc | 14 +++++++-------
 src/gnome-cmd-main-menu.cc     | 10 +++++-----
 src/gnome-cmd-main-win.cc      | 22 +++++++++++-----------
 src/utils.cc                   | 16 ++++++++--------
 5 files changed, 49 insertions(+), 50 deletions(-)
---
diff --git a/src/gnome-cmd-file-list.cc b/src/gnome-cmd-file-list.cc
index 98c4e2d2..8f4b2ab7 100644
--- a/src/gnome-cmd-file-list.cc
+++ b/src/gnome-cmd-file-list.cc
@@ -147,7 +147,7 @@ struct GnomeCmdFileListClass
 
 struct GnomeCmdFileList::Private
 {
-    GtkWidget *column_pixmaps[NUM_COLUMNS];
+    GtkWidget *column_images[NUM_COLUMNS];
     GtkWidget *column_labels[NUM_COLUMNS];
 
     gint cur_file = -1;
@@ -193,7 +193,7 @@ struct GnomeCmdFileList::Private
 
 GnomeCmdFileList::Private::Private(GnomeCmdFileList *fl)
 {
-    memset(column_pixmaps, 0, sizeof(column_pixmaps));
+    memset(column_images, 0, sizeof(column_images));
     memset(column_labels, 0, sizeof(column_labels));
 
     base_dir = nullptr;
@@ -691,7 +691,7 @@ void GnomeCmdFileList::create_column_titles()
 
     for (gint i=COLUMN_NAME; i<NUM_COLUMNS; i++)
     {
-        GtkWidget *hbox, *pixmap;
+        GtkWidget *hbox, *image;
 
         GdkPixmap *pm = IMAGE_get_pixmap (PIXMAP_FLIST_ARROW_BLANK);
         GdkBitmap *bm = IMAGE_get_mask (PIXMAP_FLIST_ARROW_BLANK);
@@ -707,14 +707,13 @@ void GnomeCmdFileList::create_column_titles()
         gtk_widget_show (priv->column_labels[i]);
         gtk_box_pack_start (GTK_BOX (hbox), priv->column_labels[i], TRUE, TRUE, 0);
 
-        // ToDo: Replace GtkPixmap with GtkImage
-        pixmap = gtk_pixmap_new (pm, bm);
-        g_object_ref (pixmap);
-        g_object_set_data_full (*this, "column-pixmap", pixmap, g_object_unref);
-        gtk_widget_show (pixmap);
-        gtk_box_pack_start (GTK_BOX (hbox), pixmap, FALSE, FALSE, 0);
+        image = gtk_image_new_from_pixmap (pm, bm);
+        g_object_ref (image);
+        g_object_set_data_full (*this, "column-image", image, g_object_unref);
+        gtk_widget_show (image);
+        gtk_box_pack_start (GTK_BOX (hbox), image, FALSE, FALSE, 0);
 
-        priv->column_pixmaps[i] = pixmap;
+        priv->column_images[i] = image;
         gtk_clist_set_column_widget (*this, i, hbox);
     }
 
@@ -735,18 +734,18 @@ static void update_column_sort_arrows (GnomeCmdFileList *fl)
     for (gint i=GnomeCmdFileList::COLUMN_NAME; i<GnomeCmdFileList::NUM_COLUMNS; i++)
     {
         if (i != fl->priv->current_col)
-            gtk_pixmap_set (GTK_PIXMAP (fl->priv->column_pixmaps[i]),
-                            IMAGE_get_pixmap (PIXMAP_FLIST_ARROW_BLANK),
-                            IMAGE_get_mask (PIXMAP_FLIST_ARROW_BLANK));
+            gtk_image_set_from_pixmap (GTK_IMAGE (fl->priv->column_images[i]),
+                                       IMAGE_get_pixmap (PIXMAP_FLIST_ARROW_BLANK),
+                                       IMAGE_get_mask (PIXMAP_FLIST_ARROW_BLANK));
         else
             if (fl->priv->sort_raising[i])
-                gtk_pixmap_set (GTK_PIXMAP (fl->priv->column_pixmaps[i]),
-                                IMAGE_get_pixmap (PIXMAP_FLIST_ARROW_UP),
-                                IMAGE_get_mask (PIXMAP_FLIST_ARROW_UP));
+                gtk_image_set_from_pixmap (GTK_IMAGE (fl->priv->column_images[i]),
+                                           IMAGE_get_pixmap (PIXMAP_FLIST_ARROW_UP),
+                                           IMAGE_get_mask (PIXMAP_FLIST_ARROW_UP));
             else
-                gtk_pixmap_set (GTK_PIXMAP (fl->priv->column_pixmaps[i]),
-                                IMAGE_get_pixmap (PIXMAP_FLIST_ARROW_DOWN),
-                                IMAGE_get_mask (PIXMAP_FLIST_ARROW_DOWN));
+                gtk_image_set_from_pixmap (GTK_IMAGE (fl->priv->column_images[i]),
+                                           IMAGE_get_pixmap (PIXMAP_FLIST_ARROW_DOWN),
+                                           IMAGE_get_mask (PIXMAP_FLIST_ARROW_DOWN));
     }
 }
 
diff --git a/src/gnome-cmd-file-selector.cc b/src/gnome-cmd-file-selector.cc
index 6e84ca89..6bb62bc9 100644
--- a/src/gnome-cmd-file-selector.cc
+++ b/src/gnome-cmd-file-selector.cc
@@ -385,13 +385,13 @@ static void create_con_buttons (GnomeCmdFileSelector *fs)
 
         if (pm)
         {
-            GtkWidget *pixmap = gtk_pixmap_new (pm->pixmap, pm->mask);
-            if (pixmap)
+            GtkWidget *image = gtk_image_new_from_pixmap (pm->pixmap, pm->mask);
+            if (image)
             {
-                g_object_ref (pixmap);
-                g_object_set_data_full (*fs, "con-pixmap", pixmap, g_object_unref);
-                gtk_widget_show (pixmap);
-                gtk_box_pack_start (GTK_BOX (hbox), pixmap, TRUE, TRUE, 0);
+                g_object_ref (image);
+                g_object_set_data_full (*fs, "con-image", image, g_object_unref);
+                gtk_widget_show (image);
+                gtk_box_pack_start (GTK_BOX (hbox), image, TRUE, TRUE, 0);
             }
         }
 
@@ -1604,4 +1604,4 @@ GList* GnomeCmdFileSelector::GetTabs()
     GList *tabs = gtk_container_get_children (*this->notebook);
 
     return tabs;
-}
\ No newline at end of file
+}
diff --git a/src/gnome-cmd-main-menu.cc b/src/gnome-cmd-main-menu.cc
index 2664daff..cf91f3cb 100644
--- a/src/gnome-cmd-main-menu.cc
+++ b/src/gnome-cmd-main-menu.cc
@@ -87,19 +87,19 @@ add_menu_item (GnomeCmdMainMenu *main_menu,
     g_return_val_if_fail (GTK_IS_MENU_SHELL (menu), nullptr);
 
     GtkWidget *item, *label;
-    GtkWidget *pixmap_widget = nullptr;
+    GtkWidget *image_widget = nullptr;
 
     item = gtk_image_menu_item_new ();
 
     gtk_widget_set_tooltip_text (item, tooltip);
 
     if (pixmap && mask)
-        pixmap_widget = gtk_pixmap_new (pixmap, mask);
+        image_widget = gtk_image_new_from_pixmap (pixmap, mask);
 
-    if (pixmap_widget)
+    if (image_widget)
     {
-        gtk_widget_show (pixmap_widget);
-        gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (item), pixmap_widget);
+        gtk_widget_show (image_widget);
+        gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (item), image_widget);
     }
 
     gtk_widget_show (item);
diff --git a/src/gnome-cmd-main-win.cc b/src/gnome-cmd-main-win.cc
index 4a33c064..848d9d6b 100644
--- a/src/gnome-cmd-main-win.cc
+++ b/src/gnome-cmd-main-win.cc
@@ -643,7 +643,7 @@ void GnomeCmdMainWin::update_drop_con_button(GnomeCmdFileList *fl)
         return;
 
     GnomeCmdPixmap *pm = NULL;
-    static GtkWidget *prev_pixmap = NULL;
+    static GtkWidget *prev_widget = NULL;
 
     GnomeCmdCon *con = fl->con;
     if (!con)
@@ -655,10 +655,10 @@ void GnomeCmdMainWin::update_drop_con_button(GnomeCmdFileList *fl)
     GtkWidget *btn = priv->tb_con_drop_btn;
     g_return_if_fail (GTK_IS_TOOL_BUTTON (btn));
 
-    if (prev_pixmap)
+    if (prev_widget)
     {
-        gtk_widget_destroy (prev_pixmap);
-        prev_pixmap = nullptr;
+        gtk_widget_destroy (prev_widget);
+        prev_widget = nullptr;
     }
 
     if (gnome_cmd_con_is_closeable (con))
@@ -674,13 +674,13 @@ void GnomeCmdMainWin::update_drop_con_button(GnomeCmdFileList *fl)
 
     if (pm)
     {
-        GtkWidget *pixmap = gtk_pixmap_new (pm->pixmap, pm->mask);
-        if (pixmap)
+        GtkWidget *image = gtk_image_new_from_pixmap (pm->pixmap, pm->mask);
+        if (image)
         {
-            g_object_ref (pixmap);
-            gtk_widget_show (pixmap);
-            gtk_tool_button_set_icon_widget (GTK_TOOL_BUTTON(btn), pixmap);
-            prev_pixmap = pixmap;
+            g_object_ref (image);
+            gtk_widget_show (image);
+            gtk_tool_button_set_icon_widget (GTK_TOOL_BUTTON(btn), image);
+            prev_widget = image;
         }
     }
     else
@@ -691,7 +691,7 @@ void GnomeCmdMainWin::update_drop_con_button(GnomeCmdFileList *fl)
             g_object_ref (label);
             gtk_widget_show (label);
             gtk_tool_button_set_label_widget(GTK_TOOL_BUTTON(btn), label);
-            prev_pixmap = label;
+            prev_widget = label;
         }
     }
 }
diff --git a/src/utils.cc b/src/utils.cc
index 071e917a..70c15f2f 100644
--- a/src/utils.cc
+++ b/src/utils.cc
@@ -541,7 +541,7 @@ GtkWidget *create_styled_pixmap_button (const gchar *text, GnomeCmdPixmap *pm)
     GtkWidget *btn = create_styled_button (NULL);
     GtkWidget *hbox = gtk_hbox_new (FALSE, 1);
     GtkWidget *label = NULL;
-    GtkWidget *pixmap = NULL;
+    GtkWidget *image = NULL;
 
     g_object_set_data_full (G_OBJECT (btn), "hbox", hbox, g_object_unref);
     g_object_ref (hbox);
@@ -549,12 +549,12 @@ GtkWidget *create_styled_pixmap_button (const gchar *text, GnomeCmdPixmap *pm)
 
     if (pm)
     {
-        pixmap = gtk_pixmap_new (pm->pixmap, pm->mask);
-        if (pixmap)
+        image = gtk_image_new_from_pixmap (pm->pixmap, pm->mask);
+        if (image)
         {
-            g_object_ref (pixmap);
-            g_object_set_data_full (G_OBJECT (btn), "pixmap", pixmap, g_object_unref);
-            gtk_widget_show (pixmap);
+            g_object_ref (image);
+            g_object_set_data_full (G_OBJECT (btn), "image", image, g_object_unref);
+            gtk_widget_show (image);
         }
     }
 
@@ -567,13 +567,13 @@ GtkWidget *create_styled_pixmap_button (const gchar *text, GnomeCmdPixmap *pm)
     }
 
     if (pm && !text)
-        gtk_container_add (GTK_CONTAINER (btn), pixmap);
+        gtk_container_add (GTK_CONTAINER (btn), image);
     else
         if (!pm && text)
             gtk_container_add (GTK_CONTAINER (btn), label);
         else
         {
-            gtk_box_pack_start (GTK_BOX (hbox), pixmap, FALSE, TRUE, 0);
+            gtk_box_pack_start (GTK_BOX (hbox), image, FALSE, TRUE, 0);
             gtk_box_pack_start (GTK_BOX (hbox), label, TRUE, TRUE, 0);
             gtk_container_add (GTK_CONTAINER (btn), hbox);
         }


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