Author: cazfi
Date: Mon Nov 14 20:54:28 2016
New Revision: 34510

URL: http://svn.gna.org/viewcvs/freeciv?rev=34510&view=rev
Log:
Replaced deprecated gdk_cairo_create() calls with modern constructs in 
gtk3.22-client.

See patch #7964

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

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=34510&r1=34509&r2=34510&view=diff
==============================================================================
--- branches/S2_6/client/gui-gtk-3.22/mapview.c (original)
+++ branches/S2_6/client/gui-gtk-3.22/mapview.c Mon Nov 14 20:54:28 2016
@@ -548,20 +548,22 @@
   Put overlay tile to pixmap
 **************************************************************************/
 void pixmap_put_overlay_tile(GdkWindow *pixmap, float zoom,
-                            int canvas_x, int canvas_y,
-                            struct sprite *ssprite)
+                             int canvas_x, int canvas_y,
+                             struct sprite *ssprite)
 {
   cairo_t *cr;
+  GdkDrawingContext *ctx;
 
   if (!ssprite) {
     return;
   }
 
-  cr = gdk_cairo_create(pixmap);
+  ctx = gdk_window_begin_draw_frame(pixmap, NULL);
+  cr = gdk_drawing_context_get_cairo_context(ctx);
   cairo_scale(cr, zoom, zoom);
   cairo_set_source_surface(cr, ssprite->surface, canvas_x, canvas_y);
   cairo_paint(cr);
-  cairo_destroy(cr);
+  gdk_window_end_draw_frame(pixmap, ctx);
 }
 
 /**************************************************************************
@@ -749,6 +751,8 @@
   double dashes[2] = {4.0, 4.0};
   struct color *pcolor;
   cairo_t *cr;
+  GdkDrawingContext *ctx;
+  GdkWindow *wndw;
 
   if (w == 0 || h == 0) {
     return;
@@ -759,14 +763,16 @@
     return;
   }
 
-  cr = gdk_cairo_create(gtk_widget_get_window(map_canvas));
+  wndw = gtk_widget_get_window(map_canvas);
+  ctx = gdk_window_begin_draw_frame(wndw, NULL);
+  cr = gdk_drawing_context_get_cairo_context(ctx);
   gdk_cairo_set_source_rgba(cr, &pcolor->color);
   cairo_set_line_width(cr, 2.0);
   cairo_set_dash(cr, dashes, 2, 0);
   cairo_set_operator(cr, CAIRO_OPERATOR_DIFFERENCE);
   cairo_rectangle(cr, canvas_x, canvas_y, w, h);
   cairo_stroke(cr);
-  cairo_destroy(cr);
+  gdk_window_end_draw_frame(wndw, ctx);
 }
 
 /**************************************************************************


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

Reply via email to