Author: cazfi
Date: Sun Oct 23 09:40:03 2016
New Revision: 34213

URL: http://svn.gna.org/viewcvs/freeciv?rev=34213&view=rev
Log:
Use GtkImage for indicator icons in gtk3.22-client instead of GtkPixcomm.

See patch #6987

Modified:
    branches/S2_6/client/gui-gtk-3.22/gui_main.c
    branches/S2_6/client/gui-gtk-3.22/mapview.c

Modified: branches/S2_6/client/gui-gtk-3.22/gui_main.c
URL: 
http://svn.gna.org/viewcvs/freeciv/branches/S2_6/client/gui-gtk-3.22/gui_main.c?rev=34213&r1=34212&r2=34213&view=diff
==============================================================================
--- branches/S2_6/client/gui-gtk-3.22/gui_main.c        (original)
+++ branches/S2_6/client/gui-gtk-3.22/gui_main.c        Sun Oct 23 09:40:03 2016
@@ -162,7 +162,7 @@
 GtkWidget *flake_ebox;
 GtkWidget *government_ebox;
 
-const char * const gui_character_encoding = "UTF-8";
+const char *const gui_character_encoding = "UTF-8";
 const bool gui_use_transliteration = FALSE;
 
 static GtkWidget *main_menubar;
@@ -1118,9 +1118,9 @@
   GtkWidget *button, *view, *vgrid, *right_vbox = NULL;
   int i;
   char buf[256];
-  struct sprite *sprite;
   GtkWidget *notebook, *statusbar;
   GtkWidget *dtach_lowbox = NULL;
+  GdkPixbuf *pb;
 
   message_buffer = gtk_text_buffer_new(NULL);
 
@@ -1295,6 +1295,8 @@
   gtk_container_add(GTK_CONTAINER(ebox), table2);
   
   for (i = 0; i < 10; i++) {
+    struct sprite *spr;
+
     ebox = gtk_event_box_new();
     gtk_event_box_set_visible_window(GTK_EVENT_BOX(ebox), FALSE);
     gtk_widget_add_events(ebox, GDK_BUTTON_PRESS_MASK);
@@ -1304,20 +1306,26 @@
     g_signal_connect(ebox, "button_press_event",
                      G_CALLBACK(taxrates_callback), GINT_TO_POINTER(i));
 
-    sprite = i < 5 ? get_tax_sprite(tileset, O_SCIENCE) : 
get_tax_sprite(tileset, O_GOLD);
-    econ_label[i] = gtk_pixcomm_new_from_sprite(sprite);
+    spr = i < 5 ? get_tax_sprite(tileset, O_SCIENCE) : get_tax_sprite(tileset, 
O_GOLD);
+    pb = sprite_get_pixbuf(spr);
+    econ_label[i] = gtk_image_new_from_pixbuf(pb);
+    g_object_unref(pb);
     gtk_container_add(GTK_CONTAINER(ebox), econ_label[i]);
   }
 
   /* science, environmental, govt, timeout */
-  bulb_label
-    = gtk_pixcomm_new_from_sprite(client_research_sprite());
-  sun_label
-    = gtk_pixcomm_new_from_sprite(client_warming_sprite());
-  flake_label
-    = gtk_pixcomm_new_from_sprite(client_cooling_sprite());
-  government_label
-    = gtk_pixcomm_new_from_sprite(client_government_sprite());
+  pb = sprite_get_pixbuf(client_research_sprite());
+  bulb_label = gtk_image_new_from_pixbuf(pb);
+  g_object_unref(pb);
+  pb = sprite_get_pixbuf(client_warming_sprite());
+  sun_label = gtk_image_new_from_pixbuf(pb);
+  g_object_unref(pb);
+  pb = sprite_get_pixbuf(client_cooling_sprite());
+  flake_label = gtk_image_new_from_pixbuf(pb);
+  g_object_unref(pb);
+  pb = sprite_get_pixbuf(client_government_sprite());
+  government_label = gtk_image_new_from_pixbuf(pb);
+  g_object_unref(pb);
 
   for (i = 0; i < 4; i++) {
     GtkWidget *w;

Modified: branches/S2_6/client/gui-gtk-3.22/mapview.c
URL: 
http://svn.gna.org/viewcvs/freeciv/branches/S2_6/client/gui-gtk-3.22/mapview.c?rev=34213&r1=34212&r2=34213&view=diff
==============================================================================
--- branches/S2_6/client/gui-gtk-3.22/mapview.c (original)
+++ branches/S2_6/client/gui-gtk-3.22/mapview.c Sun Oct 23 09:40:03 2016
@@ -155,39 +155,48 @@
                      
get_info_label_text(!GUI_GTK_OPTION(small_display_layout)));
 
   set_indicator_icons(client_research_sprite(),
-                     client_warming_sprite(),
-                     client_cooling_sprite(),
-                     client_government_sprite());
+                      client_warming_sprite(),
+                      client_cooling_sprite(),
+                      client_government_sprite());
 
   if (NULL != client.conn.playing) {
     int d = 0;
 
     for (; d < client.conn.playing->economic.luxury /10; d++) {
-      struct sprite *sprite = get_tax_sprite(tileset, O_LUXURY);
-
-      gtk_pixcomm_set_from_sprite(GTK_PIXCOMM(econ_label[d]), sprite);
+      struct sprite *spr = get_tax_sprite(tileset, O_LUXURY);
+      GdkPixbuf *pb;
+
+      pb = sprite_get_pixbuf(spr);
+      gtk_image_set_from_pixbuf(GTK_IMAGE(econ_label[d]), pb);
+      g_object_unref(pb);
     }
- 
+
     for (; d < (client.conn.playing->economic.science
                + client.conn.playing->economic.luxury) / 10; d++) {
-      struct sprite *sprite = get_tax_sprite(tileset, O_SCIENCE);
-
-      gtk_pixcomm_set_from_sprite(GTK_PIXCOMM(econ_label[d]), sprite);
+      struct sprite *spr = get_tax_sprite(tileset, O_SCIENCE);
+      GdkPixbuf *pb;
+
+      pb = sprite_get_pixbuf(spr);
+      gtk_image_set_from_pixbuf(GTK_IMAGE(econ_label[d]), pb);
+      g_object_unref(pb);
     }
- 
+
     for (; d < 10; d++) {
-      struct sprite *sprite = get_tax_sprite(tileset, O_GOLD);
-
-      gtk_pixcomm_set_from_sprite(GTK_PIXCOMM(econ_label[d]), sprite);
+      struct sprite *spr = get_tax_sprite(tileset, O_GOLD);
+      GdkPixbuf *pb;
+
+      pb = sprite_get_pixbuf(spr);
+      gtk_image_set_from_pixbuf(GTK_IMAGE(econ_label[d]), pb);
+      g_object_unref(pb);
     }
   }
- 
+
   update_timeout_label();
 
   /* update tooltips. */
   gtk_widget_set_tooltip_text(econ_ebox,
-                      _("Shows your current luxury/science/tax rates; "
-                        "click to toggle them."));
+                              _("Shows your current luxury/science/tax rates; "
+                                "click to toggle them."));
 
   gtk_widget_set_tooltip_text(bulb_ebox, get_bulb_tooltip());
   gtk_widget_set_tooltip_text(sun_ebox, get_global_warming_tooltip());
@@ -256,7 +265,6 @@
   update_unit_pix_label(punits);
 }
 
-
 /**************************************************************************
   Get sprite for treaty acceptance or rejection.
 **************************************************************************/
@@ -271,12 +279,22 @@
   indicator.
 ****************************************************************************/
 void set_indicator_icons(struct sprite *bulb, struct sprite *sol,
-                        struct sprite *flake, struct sprite *gov)
-{
-  gtk_pixcomm_set_from_sprite(GTK_PIXCOMM(bulb_label), bulb);
-  gtk_pixcomm_set_from_sprite(GTK_PIXCOMM(sun_label), sol);
-  gtk_pixcomm_set_from_sprite(GTK_PIXCOMM(flake_label), flake);
-  gtk_pixcomm_set_from_sprite(GTK_PIXCOMM(government_label), gov);
+                         struct sprite *flake, struct sprite *gov)
+{
+  GdkPixbuf *pb;
+
+  pb = sprite_get_pixbuf(bulb);
+  gtk_image_set_from_pixbuf(GTK_IMAGE(bulb_label), pb);
+  g_object_unref(pb);
+  pb = sprite_get_pixbuf(sol);
+  gtk_image_set_from_pixbuf(GTK_IMAGE(sun_label), pb);
+  g_object_unref(pb);
+  pb = sprite_get_pixbuf(flake);
+  gtk_image_set_from_pixbuf(GTK_IMAGE(flake_label), pb);
+  g_object_unref(pb);
+  pb = sprite_get_pixbuf(gov);
+  gtk_image_set_from_pixbuf(GTK_IMAGE(government_label), pb);
+  g_object_unref(pb);
 }
 
 /****************************************************************************
@@ -475,7 +493,6 @@
 
   put_unit(punit, &canvas_store, 1.0, 0, 0);
 }
-
 
 /**************************************************************************
   FIXME:


_______________________________________________
Freeciv-commits mailing list
Freeciv-commits@gna.org
https://mail.gna.org/listinfo/freeciv-commits

Reply via email to