[gtk+] range: Port to draw vfunc
- From: Benjamin Otte <otte src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+] range: Port to draw vfunc
- Date: Sun, 26 Sep 2010 13:33:56 +0000 (UTC)
commit e6052724367c135cba3d6caf983dfcf58938b7f6
Author: Benjamin Otte <otte redhat com>
Date: Sat Sep 4 21:44:54 2010 +0200
range: Port to draw vfunc
gtk/gtkrange.c | 21 +++++----------------
1 files changed, 5 insertions(+), 16 deletions(-)
---
diff --git a/gtk/gtkrange.c b/gtk/gtkrange.c
index 5c0188e..08781f9 100644
--- a/gtk/gtkrange.c
+++ b/gtk/gtkrange.c
@@ -189,8 +189,8 @@ static void gtk_range_realize (GtkWidget *widget);
static void gtk_range_unrealize (GtkWidget *widget);
static void gtk_range_map (GtkWidget *widget);
static void gtk_range_unmap (GtkWidget *widget);
-static gboolean gtk_range_expose (GtkWidget *widget,
- GdkEventExpose *event);
+static gboolean gtk_range_draw (GtkWidget *widget,
+ cairo_t *cr);
static gboolean gtk_range_button_press (GtkWidget *widget,
GdkEventButton *event);
static gboolean gtk_range_button_release (GtkWidget *widget,
@@ -297,7 +297,7 @@ gtk_range_class_init (GtkRangeClass *class)
widget_class->unrealize = gtk_range_unrealize;
widget_class->map = gtk_range_map;
widget_class->unmap = gtk_range_unmap;
- widget_class->expose_event = gtk_range_expose;
+ widget_class->draw = gtk_range_draw;
widget_class->button_press_event = gtk_range_button_press;
widget_class->button_release_event = gtk_range_button_release;
widget_class->motion_notify_event = gtk_range_motion_notify;
@@ -1864,10 +1864,9 @@ draw_stepper (GtkRange *range,
}
static gboolean
-gtk_range_expose (GtkWidget *widget,
- GdkEventExpose *event)
+gtk_range_draw (GtkWidget *widget,
+ cairo_t *cr)
{
- GtkAllocation allocation;
GtkRange *range = GTK_RANGE (widget);
GtkRangePrivate *priv = range->priv;
gboolean sensitive;
@@ -1878,12 +1877,6 @@ gtk_range_expose (GtkWidget *widget,
gint focus_line_width = 0;
gint focus_padding = 0;
gboolean touchscreen;
- cairo_t *cr;
-
- cr = gdk_cairo_create (event->window);
- gdk_cairo_region (cr, event->region);
- cairo_clip (cr);
- cairo_translate (cr, widget->allocation.x, widget->allocation.y);
g_object_get (gtk_widget_get_settings (widget),
"gtk-touchscreen-mode", &touchscreen,
@@ -1903,8 +1896,6 @@ gtk_range_expose (GtkWidget *widget,
g_source_remove (priv->repaint_id);
priv->repaint_id = 0;
- gtk_widget_get_allocation (widget, &allocation);
-
gtk_range_calc_marks (range);
gtk_range_calc_layout (range, priv->adjustment->value);
@@ -2146,8 +2137,6 @@ gtk_range_expose (GtkWidget *widget,
priv->grab_location == MOUSE_STEPPER_D,
!touchscreen && priv->mouse_location == MOUSE_STEPPER_D);
- cairo_destroy (cr);
-
return FALSE;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]