src/output/cairo.c (xr_chart_renderer): Set the chart size to 0.8 of the smallest...
[pspp] / src / ui / gui / psppire-cell-renderer-button.c
index c26849deae50b9dbbaa188e0d738d29e5e4e8ffd..e801cc6bf30ba6c1e8e42b7e1d40ee45e6bf8f70 100644 (file)
@@ -27,8 +27,9 @@
 #include "gl/configmake.h"
 #include "gl/relocatable.h"
 
-#include "gettext.h"
-#define _(msgid) gettext (msgid)
+G_GNUC_BEGIN_IGNORE_DEPRECATIONS
+
+#define P_(msgid) (msgid)
 
 static void psppire_cell_renderer_button_dispose (GObject *);
 static void psppire_cell_renderer_button_finalize (GObject *);
@@ -181,18 +182,16 @@ update_style_cache (PsppireCellRendererButton *button,
 
 static void
 psppire_cell_renderer_button_render (GtkCellRenderer      *cell,
-                                     GdkWindow            *window,
+                                     cairo_t              *cr,
                                      GtkWidget            *widget,
-                                     GdkRectangle         *background_area,
-                                     GdkRectangle         *cell_area,
-                                     GdkRectangle         *expose_area,
+                                     const GdkRectangle         *background_area,
+                                     const GdkRectangle         *cell_area,
                                      GtkCellRendererState  flags)
 {
   GtkStateType state_type;
   PsppireCellRendererButton *button = PSPPIRE_CELL_RENDERER_BUTTON (cell);
   gfloat xalign, yalign;
-  cairo_t *cr ;
-  
+
   if (!button->editable || ! gtk_cell_renderer_get_sensitive (cell))
     state_type = GTK_STATE_INSENSITIVE;
   else if (flags & GTK_CELL_RENDERER_SELECTED)
@@ -206,7 +205,7 @@ psppire_cell_renderer_button_render (GtkCellRenderer      *cell,
     state_type = GTK_STATE_PRELIGHT;
   else
     {
-      if (gtk_widget_get_state (widget) == GTK_STATE_INSENSITIVE)
+      if (gtk_widget_get_state_flags (widget) == GTK_STATE_FLAG_INSENSITIVE)
         state_type = GTK_STATE_INSENSITIVE;
       else
         state_type = GTK_STATE_NORMAL;
@@ -217,8 +216,7 @@ psppire_cell_renderer_button_render (GtkCellRenderer      *cell,
 
   update_style_cache (button, widget);
 
-  cr = gdk_cairo_create (window);
-  facade_button_render (widget, cr, expose_area,
+  facade_button_render (widget, cr,
                         cell_area, button->border_width, button->button_style,
                         state_type,
                         button->label_style, button->label, button->xpad,
@@ -228,7 +226,7 @@ psppire_cell_renderer_button_render (GtkCellRenderer      *cell,
     {
       cairo_set_line_width (cr, 1.0);
       cairo_set_line_cap (cr, CAIRO_LINE_CAP_SQUARE);
-      cairo_move_to (cr, 
+      cairo_move_to (cr,
                     cell_area->x,
                     cell_area->y + cell_area->height);
 
@@ -237,14 +235,12 @@ psppire_cell_renderer_button_render (GtkCellRenderer      *cell,
                     cell_area->y);
       cairo_stroke (cr);
     }
-
-  cairo_destroy (cr);
 }
 
 static void
 psppire_cell_renderer_button_get_size (GtkCellRenderer      *cell,
                                        GtkWidget            *widget,
-                                       GdkRectangle         *cell_area,
+                                       const GdkRectangle   *cell_area,
                                        gint                 *x_offset,
                                        gint                 *y_offset,
                                        gint                 *width,
@@ -409,8 +405,8 @@ psppire_cell_renderer_button_start_editing (GtkCellRenderer      *cell,
                                             GdkEvent             *event,
                                             GtkWidget            *widget,
                                             const gchar          *path,
-                                            GdkRectangle         *background_area,
-                                            GdkRectangle         *cell_area,
+                                            const GdkRectangle   *background_area,
+                                            const GdkRectangle   *cell_area,
                                             GtkCellRendererState  flags)
 {
   PsppireCellRendererButton *cell_button = PSPPIRE_CELL_RENDERER_BUTTON (cell);
@@ -494,24 +490,24 @@ psppire_cell_renderer_button_class_init (PsppireCellRendererButtonClass *class)
   g_object_class_install_property (gobject_class,
                                    PROP_EDITABLE,
                                    g_param_spec_boolean ("editable",
-                                                         "Editable",
-                                                         "Whether the button may be clicked.",
+                                                         P_("Editable"),
+                                                         P_("Whether the button may be clicked."),
                                                          FALSE,
                                                          G_PARAM_READWRITE));
 
   g_object_class_install_property (gobject_class,
                                    PROP_LABEL,
                                    g_param_spec_string ("label",
-                                                        "Label",
-                                                        "Text to appear in button.",
+                                                        P_("Label"),
+                                                        P_("Text to appear in button."),
                                                         "",
                                                         G_PARAM_READWRITE));
 
   g_object_class_install_property (gobject_class,
                                    PROP_SLASH,
                                    g_param_spec_boolean ("slash",
-                                                         _("Diagonal slash"),
-                                                         _("Whether to draw a diagonal slash across the button."),
+                                                         P_("Diagonal slash"),
+                                                         P_("Whether to draw a diagonal slash across the button."),
                                                          FALSE,
                                                          G_PARAM_READWRITE));
 
@@ -552,7 +548,7 @@ psppire_cell_renderer_button_dispose (GObject *obj)
 
   if (button->dispose_has_run)
     return;
-  
+
   button->dispose_has_run = TRUE;
 
   /* When called with NULL, as we are doing here, update_style_cache