summaryrefslogtreecommitdiffstats
path: root/src/widgets/gimp
diff options
context:
space:
mode:
authorkamalpreetgrewal <grewalkamal005@gmail.com>2016-08-15 03:59:18 +0000
committerkamalpreetgrewal <grewalkamal005@gmail.com>2016-08-15 03:59:18 +0000
commit25a9ed4f38121eeb59cf15dbf19391aaef45bba3 (patch)
treee123aeae50d98a52e1ad4575b29bf3c199619e33 /src/widgets/gimp
parentSolve crash when deleting CSS property (diff)
parentinkview: Convert to ApplicationWindow (diff)
downloadinkscape-25a9ed4f38121eeb59cf15dbf19391aaef45bba3.tar.gz
inkscape-25a9ed4f38121eeb59cf15dbf19391aaef45bba3.zip
Merge changes from trunk
(bzr r14949.1.64)
Diffstat (limited to '')
-rw-r--r--src/widgets/gimp/CMakeLists.txt13
-rw-r--r--src/widgets/gimp/gimpcolorwheel.c (renamed from src/ui/widget/gimpcolorwheel.c)137
-rw-r--r--src/widgets/gimp/gimpcolorwheel.h (renamed from src/ui/widget/gimpcolorwheel.h)0
-rw-r--r--src/widgets/gimp/gimpspinscale.c (renamed from src/ui/widget/gimpspinscale.c)260
-rw-r--r--src/widgets/gimp/gimpspinscale.h (renamed from src/ui/widget/gimpspinscale.h)0
-rw-r--r--src/widgets/gimp/ruler.cpp (renamed from src/widgets/ruler.cpp)187
-rw-r--r--src/widgets/gimp/ruler.h (renamed from src/widgets/ruler.h)0
7 files changed, 35 insertions, 562 deletions
diff --git a/src/widgets/gimp/CMakeLists.txt b/src/widgets/gimp/CMakeLists.txt
new file mode 100644
index 000000000..7b3e834e3
--- /dev/null
+++ b/src/widgets/gimp/CMakeLists.txt
@@ -0,0 +1,13 @@
+set(gimpwidgets_SRC
+ gimpcolorwheel.c
+ gimpspinscale.c
+ ruler.cpp
+
+ # -------
+ # Headers
+ gimpcolorwheel.h
+ gimpspinscale.h
+ ruler.h
+)
+
+add_inkscape_source("${gimpwidgets_SRC}")
diff --git a/src/ui/widget/gimpcolorwheel.c b/src/widgets/gimp/gimpcolorwheel.c
index d54486505..212391497 100644
--- a/src/ui/widget/gimpcolorwheel.c
+++ b/src/widgets/gimp/gimpcolorwheel.c
@@ -110,7 +110,6 @@ static gboolean gimp_color_wheel_button_release (GtkWidget *widget,
GdkEventButton *event);
static gboolean gimp_color_wheel_motion (GtkWidget *widget,
GdkEventMotion *event);
-#if GTK_CHECK_VERSION(3,0,0)
static gboolean gimp_color_wheel_draw (GtkWidget *widget,
cairo_t *cr);
static void gimp_color_wheel_get_preferred_width (GtkWidget *widget,
@@ -119,13 +118,6 @@ static void gimp_color_wheel_get_preferred_width (GtkWidget *widget,
static void gimp_color_wheel_get_preferred_height (GtkWidget *widget,
gint *minimum_height,
gint *natural_height);
-#else
-static gboolean gimp_color_wheel_expose (GtkWidget *widget,
- GdkEventExpose *event);
-static void gimp_color_wheel_size_request (GtkWidget *widget,
- GtkRequisition *requisition);
-#endif
-
static gboolean gimp_color_wheel_grab_broken (GtkWidget *widget,
GdkEventGrabBroken *event);
static gboolean gimp_color_wheel_focus (GtkWidget *widget,
@@ -157,16 +149,9 @@ gimp_color_wheel_class_init (GimpColorWheelClass *class)
widget_class->button_press_event = gimp_color_wheel_button_press;
widget_class->button_release_event = gimp_color_wheel_button_release;
widget_class->motion_notify_event = gimp_color_wheel_motion;
-
-#if GTK_CHECK_VERSION(3,0,0)
widget_class->get_preferred_width = gimp_color_wheel_get_preferred_width;
widget_class->get_preferred_height = gimp_color_wheel_get_preferred_height;
widget_class->draw = gimp_color_wheel_draw;
-#else
- widget_class->size_request = gimp_color_wheel_size_request;
- widget_class->expose_event = gimp_color_wheel_expose;
-#endif
-
widget_class->focus = gimp_color_wheel_focus;
widget_class->grab_broken_event = gimp_color_wheel_grab_broken;
@@ -302,10 +287,6 @@ gimp_color_wheel_realize (GtkWidget *widget)
priv->window = gdk_window_new (parent_window, &attr, attr_mask);
gdk_window_set_user_data (priv->window, wheel);
-
-#if !GTK_CHECK_VERSION(3,0,0)
- gtk_widget_style_attach (widget);
-#endif
}
static void
@@ -321,7 +302,6 @@ gimp_color_wheel_unrealize (GtkWidget *widget)
GTK_WIDGET_CLASS (parent_class)->unrealize (widget);
}
-#if GTK_CHECK_VERSION(3,0,0)
static void
gimp_color_wheel_get_preferred_width (GtkWidget *widget,
gint *minimum_width,
@@ -353,23 +333,6 @@ gimp_color_wheel_get_preferred_height (GtkWidget *widget,
*minimum_height = *natural_height = DEFAULT_SIZE + 2 * (focus_width + focus_pad);
}
-#else
-static void
-gimp_color_wheel_size_request (GtkWidget *widget,
- GtkRequisition *requisition)
-{
- gint focus_width;
- gint focus_pad;
-
- gtk_widget_style_get (widget,
- "focus-line-width", &focus_width,
- "focus-padding", &focus_pad,
- NULL);
-
- requisition->width = DEFAULT_SIZE + 2 * (focus_width + focus_pad);
- requisition->height = DEFAULT_SIZE + 2 * (focus_width + focus_pad);
-}
-#endif
static void
gimp_color_wheel_size_allocate (GtkWidget *widget,
@@ -688,7 +651,6 @@ set_cross_grab (GimpColorWheel *wheel,
gdk_cursor_new_for_display (gtk_widget_get_display (GTK_WIDGET (wheel)),
GDK_CROSSHAIR);
-#if GTK_CHECK_VERSION(3,0,0)
gdk_device_grab (gtk_get_current_event_device(),
priv->window,
GDK_OWNERSHIP_NONE,
@@ -698,14 +660,6 @@ set_cross_grab (GimpColorWheel *wheel,
GDK_BUTTON_RELEASE_MASK,
cursor, time);
g_object_unref (cursor);
-#else
- gdk_pointer_grab (priv->window, FALSE,
- GDK_POINTER_MOTION_MASK |
- GDK_POINTER_MOTION_HINT_MASK |
- GDK_BUTTON_RELEASE_MASK,
- NULL, cursor, time);
- gdk_cursor_unref (cursor);
-#endif
}
static gboolean gimp_color_wheel_grab_broken(GtkWidget *widget, GdkEventGrabBroken *event)
@@ -805,13 +759,8 @@ gimp_color_wheel_button_release (GtkWidget *widget,
else
g_assert_not_reached ();
-#if GTK_CHECK_VERSION(3,0,0)
gdk_device_ungrab (gtk_get_current_event_device(),
event->time);
-#else
- gdk_display_pointer_ungrab (gdk_window_get_display (event->window),
- event->time);
-#endif
return TRUE;
}
@@ -859,11 +808,7 @@ static void
paint_ring (GimpColorWheel *wheel,
cairo_t *cr)
{
-#if GTK_CHECK_VERSION(3,0,0)
GtkWidget *widget = GTK_WIDGET (wheel);
-#else
- GtkAllocation allocation;
-#endif
GimpColorWheelPrivate *priv = wheel->priv;
gint width, height;
gint xx, yy;
@@ -879,14 +824,8 @@ paint_ring (GimpColorWheel *wheel,
cairo_t *source_cr;
gint stride;
-#if GTK_CHECK_VERSION(3,0,0)
width = gtk_widget_get_allocated_width (widget);
height = gtk_widget_get_allocated_height (widget);
-#else
- gtk_widget_get_allocation (GTK_WIDGET (wheel), &allocation);
- width = allocation.width;
- height = allocation.height;
-#endif
center_x = width / 2.0;
center_y = height / 2.0;
@@ -1027,19 +966,10 @@ paint_triangle (GimpColorWheel *wheel,
gdouble r, g, b;
gint stride;
gint width, height;
-#if GTK_CHECK_VERSION(3,0,0)
GtkStyleContext *context;
width = gtk_widget_get_allocated_width (widget);
height = gtk_widget_get_allocated_height (widget);
-#else
- gchar *detail;
-
- GtkAllocation allocation;
- gtk_widget_get_allocation (widget, &allocation);
- width = allocation.width;
- height = allocation.height;
-#endif
/* Compute triangle's vertices */
@@ -1180,28 +1110,18 @@ paint_triangle (GimpColorWheel *wheel,
b = priv->v;
hsv_to_rgb (&r, &g, &b);
-#if GTK_CHECK_VERSION(3,0,0)
context = gtk_widget_get_style_context (widget);
gtk_style_context_save (context);
-#endif
if (INTENSITY (r, g, b) > 0.5)
{
-#if GTK_CHECK_VERSION(3,0,0)
gtk_style_context_add_class (context, "light-area-focus");
-#else
- detail = "colorwheel_light";
-#endif
cairo_set_source_rgb (cr, 0.0, 0.0, 0.0);
}
else
{
-#if GTK_CHECK_VERSION(3,0,0)
gtk_style_context_add_class (context, "dark-area-focus");
-#else
- detail = "colorwheel_dark";
-#endif
cairo_set_source_rgb (cr, 1.0, 1.0, 1.0);
}
@@ -1224,31 +1144,16 @@ paint_triangle (GimpColorWheel *wheel,
"focus-padding", &focus_pad,
NULL);
-#if GTK_CHECK_VERSION(3,0,0)
gtk_render_focus (context, cr,
xx - FOCUS_RADIUS - focus_width - focus_pad,
yy - FOCUS_RADIUS - focus_width - focus_pad,
2 * (FOCUS_RADIUS + focus_width + focus_pad),
2 * (FOCUS_RADIUS + focus_width + focus_pad));
-#else
- gtk_widget_get_allocation (widget, &allocation);
- gtk_paint_focus (gtk_widget_get_style (widget),
- gtk_widget_get_window (widget),
- gtk_widget_get_state (widget),
- NULL, widget, detail,
- allocation.x + xx - FOCUS_RADIUS - focus_width - focus_pad,
- allocation.y + yy - FOCUS_RADIUS - focus_width - focus_pad,
- 2 * (FOCUS_RADIUS + focus_width + focus_pad),
- 2 * (FOCUS_RADIUS + focus_width + focus_pad));
-#endif
}
-#if GTK_CHECK_VERSION(3,0,0)
gtk_style_context_restore (context);
-#endif
}
-#if GTK_CHECK_VERSION(3,0,0)
static gboolean
gimp_color_wheel_draw (GtkWidget *widget,
cairo_t *cr)
@@ -1273,48 +1178,6 @@ gimp_color_wheel_draw (GtkWidget *widget,
return FALSE;
}
-#else
-static gint
-gimp_color_wheel_expose (GtkWidget *widget,
- GdkEventExpose *event)
-{
- cairo_t *cr = gdk_cairo_create (gtk_widget_get_window (widget));
-
- GimpColorWheel *wheel = GIMP_COLOR_WHEEL (widget);
- GimpColorWheelPrivate *priv = wheel->priv;
- gboolean draw_focus;
- GtkAllocation allocation;
-
- if (! (event->window == gtk_widget_get_window (widget) &&
- gtk_widget_is_drawable (widget)))
- return FALSE;
-
- gdk_cairo_region (cr, event->region);
- cairo_clip (cr);
-
- gtk_widget_get_allocation (widget, &allocation);
- cairo_translate (cr, allocation.x, allocation.y);
-
- draw_focus = gtk_widget_has_focus (widget);
-
- paint_ring (wheel, cr);
- paint_triangle (wheel, cr, draw_focus);
-
- cairo_destroy (cr);
-
- if (draw_focus && priv->focus_on_ring)
- gtk_paint_focus (gtk_widget_get_style (widget),
- gtk_widget_get_window (widget),
- gtk_widget_get_state (widget),
- &event->area, widget, NULL,
- allocation.x,
- allocation.y,
- allocation.width,
- allocation.height);
-
- return FALSE;
-}
-#endif
static gboolean
gimp_color_wheel_focus (GtkWidget *widget,
diff --git a/src/ui/widget/gimpcolorwheel.h b/src/widgets/gimp/gimpcolorwheel.h
index 016fb593f..016fb593f 100644
--- a/src/ui/widget/gimpcolorwheel.h
+++ b/src/widgets/gimp/gimpcolorwheel.h
diff --git a/src/ui/widget/gimpspinscale.c b/src/widgets/gimp/gimpspinscale.c
index d99646a64..8d8c6c935 100644
--- a/src/ui/widget/gimpspinscale.c
+++ b/src/widgets/gimp/gimpspinscale.c
@@ -41,10 +41,8 @@ typedef enum
{
TARGET_NUMBER,
TARGET_UPPER,
- TARGET_LOWER
-#if WITH_GTKMM_3_0
- ,TARGET_NONE
-#endif
+ TARGET_LOWER,
+ TARGET_NONE
} SpinScaleTarget;
typedef enum
@@ -94,7 +92,6 @@ static void gimp_spin_scale_get_property (GObject *object,
static void gimp_spin_scale_style_set (GtkWidget *widget,
GtkStyle *prev_style);
-#if WITH_GTKMM_3_0
static void gimp_spin_scale_get_preferred_width (GtkWidget *widget,
gint *minimum_width,
gint *natural_width);
@@ -103,13 +100,6 @@ static void gimp_spin_scale_get_preferred_height (GtkWidget *widget
gint *natural_width);
static gboolean gimp_spin_scale_draw (GtkWidget *widget,
cairo_t *cr);
-#else
-static void gimp_spin_scale_size_request (GtkWidget *widget,
- GtkRequisition *requisition);
-
-static gboolean gimp_spin_scale_expose (GtkWidget *widget,
- GdkEventExpose *event);
-#endif
static gboolean gimp_spin_scale_button_press (GtkWidget *widget,
GdkEventButton *event);
@@ -145,14 +135,9 @@ gimp_spin_scale_class_init (GimpSpinScaleClass *klass)
object_class->get_property = gimp_spin_scale_get_property;
widget_class->style_set = gimp_spin_scale_style_set;
-#if WITH_GTKMM_3_0
widget_class->get_preferred_width = gimp_spin_scale_get_preferred_width;
widget_class->get_preferred_height = gimp_spin_scale_get_preferred_height;
widget_class->draw = gimp_spin_scale_draw;
-#else
- widget_class->size_request = gimp_spin_scale_size_request;
- widget_class->expose_event = gimp_spin_scale_expose;
-#endif
widget_class->button_press_event = gimp_spin_scale_button_press;
widget_class->button_release_event = gimp_spin_scale_button_release;
widget_class->motion_notify_event = gimp_spin_scale_motion_notify;
@@ -294,7 +279,6 @@ gimp_spin_scale_set_appearance( GtkWidget *widget, const gchar *appearance)
}
}
-#if GTK_CHECK_VERSION(3,0,0)
static void
gimp_spin_scale_get_preferred_width (GtkWidget *widget,
gint *minimum_width,
@@ -355,48 +339,6 @@ gimp_spin_scale_get_preferred_height (GtkWidget *widget,
pango_font_metrics_unref (metrics);
}
-#else
-static void
-gimp_spin_scale_size_request (GtkWidget *widget,
- GtkRequisition *requisition)
-{
- GimpSpinScalePrivate *private = GET_PRIVATE (widget);
- GtkStyle *style = gtk_widget_get_style (widget);
- PangoContext *context = gtk_widget_get_pango_context (widget);
- PangoFontMetrics *metrics;
- gint height;
-
- GTK_WIDGET_CLASS (parent_class)->size_request (widget, requisition);
-
- metrics = pango_context_get_metrics (context, style->font_desc,
- pango_context_get_language (context));
-
- height = PANGO_PIXELS (pango_font_metrics_get_ascent (metrics) +
- pango_font_metrics_get_descent (metrics));
-
- if (private->appearanceMode == APPEARANCE_COMPACT) {
- requisition->height += 1;
- } else {
- requisition->height += height;
- }
-
- if (private->label)
- {
- gint char_width;
- gint digit_width;
- gint char_pixels;
-
- char_width = pango_font_metrics_get_approximate_char_width (metrics);
- digit_width = pango_font_metrics_get_approximate_digit_width (metrics);
- char_pixels = PANGO_PIXELS (MAX (char_width, digit_width));
-
- /* ~3 chars for the ellipses */
- requisition->width += char_pixels * 3;
- }
-
- pango_font_metrics_unref (metrics);
-}
-#endif
static void
gimp_spin_scale_style_set (GtkWidget *widget,
@@ -415,16 +357,10 @@ gimp_spin_scale_style_set (GtkWidget *widget,
static gboolean
-#if GTK_CHECK_VERSION(3,0,0)
gimp_spin_scale_draw (GtkWidget *widget,
cairo_t *cr)
-#else
- gimp_spin_scale_expose (GtkWidget *widget,
- GdkEventExpose *event)
-#endif
{
GimpSpinScalePrivate *private = GET_PRIVATE (widget);
-#if GTK_CHECK_VERSION(3,0,0)
GtkStyleContext *style = gtk_widget_get_style_context(widget);
GtkAllocation allocation;
GdkRGBA color;
@@ -434,66 +370,31 @@ static gboolean
cairo_restore (cr);
gtk_widget_get_allocation (widget, &allocation);
-#else
- GtkStyle *style = gtk_widget_get_style (widget);
- cairo_t *cr;
- gint w;
-
- GTK_WIDGET_CLASS (parent_class)->expose_event (widget, event);
-
- cr = gdk_cairo_create (event->window);
- gdk_cairo_region (cr, event->region);
- cairo_clip (cr);
-
- w = gdk_window_get_width (event->window);
-#endif
cairo_set_line_width (cr, 1.0);
-#if GTK_CHECK_VERSION(3,0,0)
if (private->label)
{
GdkRectangle text_area;
gint minimum_width;
gint natural_width;
-#else
- if (private->label &&
- gtk_widget_is_drawable (widget) &&
- event->window == gtk_entry_get_text_window (GTK_ENTRY (widget)))
- {
- GtkRequisition requisition;
- GtkAllocation allocation;
-#endif
PangoRectangle logical;
gint layout_offset_x;
gint layout_offset_y;
-#if GTK_CHECK_VERSION(3,0,0)
GtkStateFlags state;
GdkRGBA text_color;
GdkRGBA bar_text_color;
-#else
- GtkStateType state;
- GdkColor text_color;
- GdkColor bar_text_color;
- gint window_width;
- gint window_height;
-#endif
gdouble progress_fraction;
gint progress_x;
gint progress_y;
gint progress_width;
gint progress_height;
-#if GTK_CHECK_VERSION(3,0,0)
gtk_entry_get_text_area (GTK_ENTRY (widget), &text_area);
GTK_WIDGET_CLASS (parent_class)->get_preferred_width (widget,
&minimum_width,
&natural_width);
-#else
- GTK_WIDGET_CLASS (parent_class)->size_request (widget, &requisition);
- gtk_widget_get_allocation (widget, &allocation);
-#endif
if (! private->layout)
{
@@ -504,27 +405,18 @@ static gboolean
pango_layout_set_width (private->layout,
PANGO_SCALE *
-#if GTK_CHECK_VERSION(3,0,0)
(allocation.width - minimum_width));
-#else
- (allocation.width - requisition.width));
-#endif
pango_layout_get_pixel_extents (private->layout, NULL, &logical);
gtk_entry_get_layout_offsets (GTK_ENTRY (widget), NULL, &layout_offset_y);
if (gtk_widget_get_direction (widget) == GTK_TEXT_DIR_RTL)
-#if GTK_CHECK_VERSION(3,0,0)
layout_offset_x = text_area.x + text_area.width - logical.width - 4;
-#else
- layout_offset_x = w - logical.width - 4;
-#endif
else
layout_offset_x = 4;
layout_offset_x -= logical.x;
-#if GTK_CHECK_VERSION(3,0,0)
state = gtk_widget_get_state_flags (widget);
gtk_style_context_get_color (style, state, &text_color);
@@ -533,16 +425,6 @@ static gboolean
gtk_style_context_add_class (style, GTK_STYLE_CLASS_PROGRESSBAR);
gtk_style_context_get_color (style, state, &bar_text_color);
gtk_style_context_restore (style);
-#else
- state = GTK_STATE_SELECTED;
- if (! gtk_widget_get_sensitive (widget))
- state = GTK_STATE_INSENSITIVE;
- text_color = style->text[gtk_widget_get_state (widget)];
- bar_text_color = style->fg[state];
-
- window_width = gdk_window_get_width (event->window);
- window_height = gdk_window_get_height (event->window);
-#endif
progress_fraction = gtk_entry_get_progress_fraction (GTK_ENTRY (widget));
@@ -550,53 +432,30 @@ static gboolean
{
progress_fraction = 1.0 - progress_fraction;
-#if GTK_CHECK_VERSION(3,0,0)
progress_x = text_area.width * progress_fraction;
-#else
- progress_x = window_width * progress_fraction;
-#endif
progress_y = 0;
-#if GTK_CHECK_VERSION(3,0,0)
progress_width = text_area.width - progress_x;
progress_height = text_area.height;
-#else
- progress_width = window_width - progress_x;
- progress_height = window_height;
-#endif
}
else
{
progress_x = 0;
progress_y = 0;
-#if GTK_CHECK_VERSION(3,0,0)
progress_width = text_area.width * progress_fraction;
progress_height = text_area.height;
-#else
- progress_width = window_width * progress_fraction;
- progress_height = window_height;
-#endif
}
cairo_save (cr);
cairo_set_fill_rule (cr, CAIRO_FILL_RULE_EVEN_ODD);
-#if GTK_CHECK_VERSION(3,0,0)
cairo_rectangle (cr, 0, 0, text_area.width, text_area.height);
-#else
- cairo_rectangle (cr, 0, 0, window_width, window_height);
-#endif
cairo_rectangle (cr, progress_x, progress_y,
progress_width, progress_height);
cairo_clip (cr);
cairo_set_fill_rule (cr, CAIRO_FILL_RULE_WINDING);
-#if GTK_CHECK_VERSION(3,0,0)
cairo_move_to (cr, layout_offset_x, text_area.y + layout_offset_y-3);
gdk_cairo_set_source_rgba (cr, &text_color);
-#else
- cairo_move_to (cr, layout_offset_x, layout_offset_y-3);
- gdk_cairo_set_source_color (cr, &text_color);
-#endif
pango_cairo_show_layout (cr, private->layout);
cairo_restore (cr);
@@ -604,24 +463,14 @@ static gboolean
progress_width, progress_height);
cairo_clip (cr);
-#if GTK_CHECK_VERSION(3,0,0)
cairo_move_to (cr, layout_offset_x, text_area.y + layout_offset_y-3);
gdk_cairo_set_source_rgba (cr, &bar_text_color);
-#else
- cairo_move_to (cr, layout_offset_x, layout_offset_y-3);
- gdk_cairo_set_source_color (cr, &bar_text_color);
-#endif
pango_cairo_show_layout (cr, private->layout);
}
-#if !GTK_CHECK_VERSION(3,0,0)
- cairo_destroy (cr);
-#endif
-
return FALSE;
}
-#if WITH_GTKMM_3_0
/* Returns TRUE if a translation should be done */
static gboolean
gtk_widget_get_translation_to_window (GtkWidget *widget,
@@ -685,7 +534,6 @@ gimp_spin_scale_event_to_widget_coords (GtkWidget *widget,
*widget_x = event_x;
*widget_y = event_y;
}
-#endif
static SpinScaleTarget
gimp_spin_scale_get_target (GtkWidget *widget,
@@ -702,7 +550,6 @@ gimp_spin_scale_get_target (GtkWidget *widget,
pango_layout_get_pixel_extents (gtk_entry_get_layout (GTK_ENTRY (widget)),
NULL, &logical);
-#if WITH_GTKMM_3_0
GdkRectangle text_area;
gtk_entry_get_text_area (GTK_ENTRY (widget), &text_area);
@@ -726,19 +573,6 @@ gimp_spin_scale_get_target (GtkWidget *widget,
}
return TARGET_NONE;
-#else
- if (x > layout_x && x < layout_x + logical.width &&
- y > layout_y && y < layout_y + logical.height)
- {
- return TARGET_NUMBER;
- }
-
- else if (y > allocation.height / 2)
- {
- return TARGET_LOWER;
- }
- return TARGET_UPPER;
-#endif
}
static void
@@ -773,49 +607,21 @@ gimp_spin_scale_change_value (GtkWidget *widget,
gdouble lower;
gdouble upper;
gdouble value;
-#if WITH_GTKMM_3_0
-#else
-#endif
-#if WITH_GTKMM_3_0
GdkRectangle text_area;
gtk_entry_get_text_area (GTK_ENTRY (widget), &text_area);
gimp_spin_scale_get_limits (GIMP_SPIN_SCALE (widget), &lower, &upper);
-#else
- GdkWindow *text_window = gtk_entry_get_text_window (GTK_ENTRY (widget));
- gint width;
-
- gimp_spin_scale_get_limits (GIMP_SPIN_SCALE (widget), &lower, &upper);
-
- width = gdk_window_get_width (text_window);
-#endif
-
if (gtk_widget_get_direction (widget) == GTK_TEXT_DIR_RTL)
-#if WITH_GTKMM_3_0
x = text_area.width - x;
-#else
- x = width - x;
-#endif
-
if (private->relative_change)
{
gdouble diff;
gdouble step;
-
-#if WITH_GTKMM_3_0
step = (upper - lower) / text_area.width / 10.0;
-#else
- step = (upper - lower) / width / 10.0;
-#endif
if (gtk_widget_get_direction (widget) == GTK_TEXT_DIR_RTL)
-
-#if WITH_GTKMM_3_0
diff = x - (text_area.width - private->start_x);
-#else
- diff = x - (width - private->start_x);
-#endif
else
diff = x - private->start_x;
@@ -825,12 +631,7 @@ gimp_spin_scale_change_value (GtkWidget *widget,
{
gdouble fraction;
-
-#if WITH_GTKMM_3_0
fraction = x / (gdouble) text_area.width;
-#else
- fraction = x / (gdouble) width;
-#endif
if (fraction > 0.0)
fraction = pow (fraction, private->gamma);
@@ -849,7 +650,6 @@ gimp_spin_scale_button_press (GtkWidget *widget,
private->changing_value = FALSE;
private->relative_change = FALSE;
-#if WITH_GTKMM_3_0
gint x, y;
gimp_spin_scale_event_to_widget_coords (widget, event->window,
event->x, event->y,
@@ -879,36 +679,6 @@ gimp_spin_scale_button_press (GtkWidget *widget,
default:
break;
}
-#else
- if (event->window == gtk_entry_get_text_window (GTK_ENTRY (widget)))
- {
- switch (gimp_spin_scale_get_target (widget, event->x, event->y))
- {
- case TARGET_UPPER:
- private->changing_value = TRUE;
-
- gtk_widget_grab_focus (widget);
-
- gimp_spin_scale_change_value (widget, event->x);
-
- return TRUE;
-
- case TARGET_LOWER:
- private->changing_value = TRUE;
-
- gtk_widget_grab_focus (widget);
-
- private->relative_change = TRUE;
- private->start_x = event->x;
- private->start_value = gtk_adjustment_get_value (gtk_spin_button_get_adjustment (GTK_SPIN_BUTTON (widget)));
-
- return TRUE;
-
- default:
- break;
- }
- }
-#endif
return GTK_WIDGET_CLASS (parent_class)->button_press_event (widget, event);
}
@@ -918,22 +688,16 @@ gimp_spin_scale_button_release (GtkWidget *widget,
GdkEventButton *event)
{
GimpSpinScalePrivate *private = GET_PRIVATE (widget);
-#if WITH_GTKMM_3_0
gint x, y;
gimp_spin_scale_event_to_widget_coords (widget, event->window,
event->x, event->y,
&x, &y);
-#endif
if (private->changing_value)
{
private->changing_value = FALSE;
-#if WITH_GTKMM_3_0
gimp_spin_scale_change_value (widget, x);
-#else
- gimp_spin_scale_change_value (widget, event->x);
-#endif
return TRUE;
}
@@ -948,21 +712,15 @@ gimp_spin_scale_motion_notify (GtkWidget *widget,
gdk_event_request_motions (event);
-#if WITH_GTKMM_3_0
gint x, y;
gimp_spin_scale_event_to_widget_coords (widget, event->window,
event->x, event->y,
&x, &y);
-#endif
if (private->changing_value)
{
-#if WITH_GTKMM_3_0
gimp_spin_scale_change_value (widget, x);
-#else
- gimp_spin_scale_change_value (widget, event->x);
-#endif
return TRUE;
}
@@ -971,20 +729,12 @@ gimp_spin_scale_motion_notify (GtkWidget *widget,
if (! (event->state &
(GDK_BUTTON1_MASK | GDK_BUTTON2_MASK | GDK_BUTTON3_MASK))
-#if WITH_GTKMM_3_0
-#else
- && event->window == gtk_entry_get_text_window (GTK_ENTRY (widget))
-#endif
)
{
GdkDisplay *display = gtk_widget_get_display (widget);
GdkCursor *cursor = NULL;
-#if WITH_GTKMM_3_0
switch (gimp_spin_scale_get_target (widget, x, y))
-#else
- switch (gimp_spin_scale_get_target (widget, event->x, event->y))
-#endif
{
case TARGET_NUMBER:
cursor = gdk_cursor_new_for_display (display, GDK_XTERM);
@@ -1002,17 +752,11 @@ gimp_spin_scale_motion_notify (GtkWidget *widget,
break;
}
-
-#if WITH_GTKMM_3_0
if (cursor)
{
gdk_window_set_cursor (event->window, cursor);
g_object_unref (cursor);
}
-#else
- gdk_window_set_cursor (event->window, cursor);
- gdk_cursor_unref (cursor);
-#endif
}
return FALSE;
diff --git a/src/ui/widget/gimpspinscale.h b/src/widgets/gimp/gimpspinscale.h
index b42a0faf8..b42a0faf8 100644
--- a/src/ui/widget/gimpspinscale.h
+++ b/src/widgets/gimp/gimpspinscale.h
diff --git a/src/widgets/ruler.cpp b/src/widgets/gimp/ruler.cpp
index 1f6e4396c..bfb9c9071 100644
--- a/src/widgets/ruler.cpp
+++ b/src/widgets/gimp/ruler.cpp
@@ -119,7 +119,6 @@ static void sp_ruler_unmap (GtkWidget *widget);
static void sp_ruler_size_allocate (GtkWidget *widget,
GtkAllocation *allocation);
-#if GTK_CHECK_VERSION(3,0,0)
static void sp_ruler_get_preferred_width (GtkWidget *widget,
gint *minimum_width,
gint *natural_width);
@@ -128,21 +127,11 @@ static void sp_ruler_get_preferred_height (GtkWidget *widget,
gint *minimum_height,
gint *natural_height);
static void sp_ruler_style_updated (GtkWidget *widget);
-#else
-static void sp_ruler_size_request (GtkWidget *widget,
- GtkRequisition *requisition);
-static void sp_ruler_style_set (GtkWidget *widget,
- GtkStyle *prev_style);
-#endif
static gboolean sp_ruler_motion_notify (GtkWidget *widget,
GdkEventMotion *event);
static gboolean sp_ruler_draw (GtkWidget *widget,
cairo_t *cr);
-#if !GTK_CHECK_VERSION(3,0,0)
-static gboolean sp_ruler_expose (GtkWidget *widget,
- GdkEventExpose *event);
-#endif
static void sp_ruler_draw_ticks (SPRuler *ruler);
static GdkRectangle sp_ruler_get_pos_rect (SPRuler *ruler,
gdouble position);
@@ -180,16 +169,10 @@ sp_ruler_class_init (SPRulerClass *klass)
widget_class->map = sp_ruler_map;
widget_class->unmap = sp_ruler_unmap;
widget_class->size_allocate = sp_ruler_size_allocate;
-#if GTK_CHECK_VERSION(3,0,0)
widget_class->get_preferred_width = sp_ruler_get_preferred_width;
widget_class->get_preferred_height = sp_ruler_get_preferred_height;
widget_class->style_updated = sp_ruler_style_updated;
widget_class->draw = sp_ruler_draw;
-#else
- widget_class->size_request = sp_ruler_size_request;
- widget_class->style_set = sp_ruler_style_set;
- widget_class->expose_event = sp_ruler_expose;
-#endif
widget_class->motion_notify_event = sp_ruler_motion_notify;
g_type_class_add_private (object_class, sizeof (SPRulerPrivate));
@@ -486,16 +469,10 @@ sp_ruler_realize (GtkWidget *widget)
attributes.width = allocation.width;
attributes.height = allocation.height;
attributes.wclass = GDK_INPUT_ONLY;
-#if GTK_CHECK_VERSION(3,0,0)
attributes.event_mask = (gtk_widget_get_events (widget) |
GDK_EXPOSURE_MASK |
GDK_POINTER_MOTION_MASK |
GDK_POINTER_MOTION_HINT_MASK);
-#else
- attributes.event_mask = (gtk_widget_get_events (widget) |
- GDK_EXPOSURE_MASK |
- GDK_POINTER_MOTION_MASK);
-#endif
attributes_mask = GDK_WA_X | GDK_WA_Y;
@@ -598,7 +575,6 @@ sp_ruler_size_request (GtkWidget *widget,
size = 2 + ink_rect.height * 1.7;
-#if GTK_CHECK_VERSION(3,0,0)
GtkStyleContext *context = gtk_widget_get_style_context (widget);
GtkBorder border;
@@ -606,47 +582,25 @@ sp_ruler_size_request (GtkWidget *widget,
requisition->width = border.left + border.right;
requisition->height = border.top + border.bottom;
-#else
- GtkStyle *style = gtk_widget_get_style(widget);
-#endif
if (priv->orientation == GTK_ORIENTATION_HORIZONTAL)
{
-#if GTK_CHECK_VERSION(3,0,0)
requisition->width += 1;
requisition->height += size;
-#else
- requisition->width = style->xthickness * 2 + 1;
- requisition->height = style->ythickness * 2 + size;
-#endif
}
else
{
-#if GTK_CHECK_VERSION(3,0,0)
requisition->width += size;
requisition->height += 1;
-#else
- requisition->width = style->xthickness * 2 + size;
- requisition->height = style->ythickness * 2 + 1;
-#endif
}
}
static void
-#if GTK_CHECK_VERSION(3,0,0)
sp_ruler_style_updated (GtkWidget *widget)
-#else
-sp_ruler_style_set (GtkWidget *widget,
- GtkStyle *prev_style)
-#endif
{
SPRulerPrivate *priv = SP_RULER_GET_PRIVATE (widget);
-#if GTK_CHECK_VERSION(3,0,0)
GTK_WIDGET_CLASS (sp_ruler_parent_class)->style_updated (widget);
-#else
- GTK_WIDGET_CLASS (sp_ruler_parent_class)->style_set (widget, prev_style);
-#endif
gtk_widget_style_get (widget,
"font-scale", &priv->font_scale,
@@ -659,7 +613,6 @@ sp_ruler_style_set (GtkWidget *widget,
}
}
-#if GTK_CHECK_VERSION(3,0,0)
static void
sp_ruler_get_preferred_width (GtkWidget *widget,
gint *minimum_width,
@@ -683,33 +636,19 @@ sp_ruler_get_preferred_height (GtkWidget *widget,
*minimum_height = *natural_height = requisition.height;
}
-#else
-static gboolean
-sp_ruler_expose (GtkWidget *widget,
- GdkEventExpose *event)
-{
- cairo_t *cr = gdk_cairo_create(gtk_widget_get_window(widget));
- GtkAllocation allocation;
-
- gdk_cairo_region (cr, event->region);
- cairo_clip (cr);
-
- gtk_widget_get_allocation (widget, &allocation);
-
- gboolean result = sp_ruler_draw (widget, cr);
-
- cairo_destroy (cr);
-
- return result;
-}
-#endif
static gboolean
sp_ruler_draw (GtkWidget *widget,
cairo_t *cr)
{
- SPRuler *ruler = SP_RULER (widget);
- SPRulerPrivate *priv = SP_RULER_GET_PRIVATE (ruler);
+ SPRuler *ruler = SP_RULER (widget);
+ SPRulerPrivate *priv = SP_RULER_GET_PRIVATE (ruler);
+ GtkStyleContext *context = gtk_widget_get_style_context (widget);
+ GtkAllocation allocation;
+
+ gtk_widget_get_allocation (widget, &allocation);
+ gtk_render_background (context, cr, 0, 0, allocation.width, allocation.height);
+ gtk_render_frame (context, cr, 0, 0, allocation.width, allocation.height);
sp_ruler_draw_ticks (ruler);
@@ -735,7 +674,7 @@ sp_ruler_make_pixmap (SPRuler *ruler)
priv->backing_store =
gdk_window_create_similar_surface (gtk_widget_get_window (widget),
- CAIRO_CONTENT_COLOR,
+ CAIRO_CONTENT_COLOR_ALPHA,
allocation.width,
allocation.height);
@@ -748,13 +687,8 @@ sp_ruler_draw_pos (SPRuler *ruler,
{
GtkWidget *widget = GTK_WIDGET (ruler);
-#if GTK_CHECK_VERSION(3,0,0)
GtkStyleContext *context = gtk_widget_get_style_context (widget);
GdkRGBA color;
-#else
- GtkStyle *style = gtk_widget_get_style (widget);
- GtkStateType state = gtk_widget_get_state (widget);
-#endif
SPRulerPrivate *priv = SP_RULER_GET_PRIVATE (ruler);
GdkRectangle pos_rect;
@@ -766,13 +700,9 @@ sp_ruler_draw_pos (SPRuler *ruler,
if ((pos_rect.width > 0) && (pos_rect.height > 0))
{
-#if GTK_CHECK_VERSION(3,0,0)
gtk_style_context_get_color (context, gtk_widget_get_state_flags (widget),
&color);
gdk_cairo_set_source_rgba (cr, &color);
-#else
- gdk_cairo_set_source_color (cr, &style->fg[state]);
-#endif
cairo_move_to (cr, pos_rect.x, pos_rect.y);
@@ -1111,16 +1041,9 @@ sp_ruler_draw_ticks (SPRuler *ruler)
{
GtkWidget *widget = GTK_WIDGET (ruler);
-#if GTK_CHECK_VERSION(3,0,0)
GtkStyleContext *context = gtk_widget_get_style_context (widget);
GtkBorder border;
GdkRGBA color;
-#else
- GtkStyle *style = gtk_widget_get_style (widget);
- GtkStateType state = gtk_widget_get_state (widget);
- gint xthickness;
- gint ythickness;
-#endif
SPRulerPrivate *priv = SP_RULER_GET_PRIVATE (ruler);
GtkAllocation allocation;
@@ -1149,12 +1072,7 @@ sp_ruler_draw_ticks (SPRuler *ruler)
gtk_widget_get_allocation (widget, &allocation);
-#if GTK_CHECK_VERSION(3,0,0)
gtk_style_context_get_border (context, static_cast<GtkStateFlags>(0), &border);
-#else
- xthickness = style->xthickness;
- ythickness = style->ythickness;
-#endif
layout = sp_ruler_get_layout (widget, "0123456789");
pango_layout_get_extents (layout, &ink_rect, &logical_rect);
@@ -1165,28 +1083,20 @@ sp_ruler_draw_ticks (SPRuler *ruler)
if (priv->orientation == GTK_ORIENTATION_HORIZONTAL)
{
width = allocation.width;
-#if GTK_CHECK_VERSION(3,0,0)
height = allocation.height - (border.top + border.bottom);
-#else
- height = allocation.height - ythickness * 2;
-#endif
}
else
{
width = allocation.height;
-#if GTK_CHECK_VERSION(3,0,0)
height = allocation.width - (border.top + border.bottom);
-#else
- height = allocation.width - ythickness * 2;
-#endif
}
cr = cairo_create (priv->backing_store);
-#if GTK_CHECK_VERSION(3,0,0)
- gtk_render_background (context, cr, 0, 0, allocation.width, allocation.height);
- gtk_render_frame (context, cr, 0, 0, allocation.width, allocation.height);
-
+ cairo_set_operator (cr, CAIRO_OPERATOR_CLEAR);
+ cairo_paint (cr);
+ cairo_set_operator (cr, CAIRO_OPERATOR_OVER);
+
gtk_style_context_get_color (context, gtk_widget_get_state_flags (widget),
&color);
gdk_cairo_set_source_rgba (cr, &color);
@@ -1207,30 +1117,6 @@ sp_ruler_draw_ticks (SPRuler *ruler)
1,
allocation.height - (border.top + border.bottom));
}
-#else
- gdk_cairo_set_source_color (cr, &style->bg[state]);
-
- cairo_paint (cr);
-
- gdk_cairo_set_source_color(cr, &style->fg[state]);
-
- if (priv->orientation == GTK_ORIENTATION_HORIZONTAL)
- {
- cairo_rectangle (cr,
- xthickness,
- height + ythickness,
- allocation.width - 2 * xthickness,
- 1);
- }
- else
- {
- cairo_rectangle (cr,
- height + xthickness,
- ythickness,
- 1,
- allocation.height - 2 * ythickness);
- }
-#endif
sp_ruler_get_range (ruler, &lower, &upper, &max_size);
@@ -1311,7 +1197,6 @@ sp_ruler_draw_ticks (SPRuler *ruler)
// by a pixel, and jump back on the next redraw). This is suppressed by adding 1e-9 (that's only one nanopixel ;-))
pos = gint(Inkscape::round((cur - lower) * increment + 1e-12));
-#if GTK_CHECK_VERSION(3,0,0)
if (priv->orientation == GTK_ORIENTATION_HORIZONTAL)
{
cairo_rectangle (cr,
@@ -1324,20 +1209,6 @@ sp_ruler_draw_ticks (SPRuler *ruler)
height + border.left - length, pos,
length, 1);
}
-#else
- if (priv->orientation == GTK_ORIENTATION_HORIZONTAL)
- {
- cairo_rectangle (cr,
- pos, height + ythickness - length,
- 1, length);
- }
- else
- {
- cairo_rectangle (cr,
- height + xthickness - length, pos,
- length, 1);
- }
-#endif
/* draw label */
double label_spacing_px = fabs(increment*(double)ruler_metric.ruler_scale[scale]/ruler_metric.subdivide[i]);
@@ -1355,15 +1226,9 @@ sp_ruler_draw_ticks (SPRuler *ruler)
pango_layout_set_text (layout, unit_str, -1);
pango_layout_get_extents (layout, &logical_rect, NULL);
-#if GTK_CHECK_VERSION(3,0,0)
cairo_move_to (cr,
pos + 2,
border.top + PANGO_PIXELS (logical_rect.y - digit_offset));
-#else
- cairo_move_to (cr,
- pos + 2,
- ythickness + PANGO_PIXELS (logical_rect.y - digit_offset));
-#endif
pango_cairo_show_layout(cr, layout);
}
@@ -1377,15 +1242,9 @@ sp_ruler_draw_ticks (SPRuler *ruler)
pango_layout_set_text (layout, digit_str, 1);
pango_layout_get_extents (layout, NULL, &logical_rect);
-#if GTK_CHECK_VERSION(3,0,0)
cairo_move_to (cr,
border.left + 1,
pos + digit_height * j + 2 + PANGO_PIXELS (logical_rect.y - digit_offset));
-#else
- cairo_move_to (cr,
- xthickness + 1,
- pos + digit_height * j + 2 + PANGO_PIXELS (logical_rect.y - digit_offset));
-#endif
pango_cairo_show_layout (cr, layout);
}
}
@@ -1422,7 +1281,6 @@ sp_ruler_get_pos_rect (SPRuler *ruler,
gtk_widget_get_allocation (widget, &allocation);
-#if GTK_CHECK_VERSION(3,0,0)
GtkStyleContext *context = gtk_widget_get_style_context (widget);
GtkBorder padding;
@@ -1430,11 +1288,6 @@ sp_ruler_get_pos_rect (SPRuler *ruler,
xthickness = padding.left + padding.right;
ythickness = padding.top + padding.bottom;
-#else
- GtkStyle *style = gtk_widget_get_style (widget);
- xthickness = style->xthickness;
- ythickness = style->ythickness;
-#endif
if (priv->orientation == GTK_ORIENTATION_HORIZONTAL)
{
@@ -1472,9 +1325,6 @@ sp_ruler_get_pos_rect (SPRuler *ruler,
rect.y = ROUND ((position - lower) * increment) + (ythickness - rect.height) / 2 - 1;
}
- rect.x += allocation.x;
- rect.y += allocation.y;
-
return rect;
}
@@ -1497,18 +1347,21 @@ sp_ruler_queue_pos_redraw (SPRuler *ruler)
{
SPRulerPrivate *priv = SP_RULER_GET_PRIVATE (ruler);
const GdkRectangle rect = sp_ruler_get_pos_rect (ruler, priv->position);
+ GtkAllocation allocation;
+
+ gtk_widget_get_allocation (GTK_WIDGET(ruler), &allocation);
gtk_widget_queue_draw_area (GTK_WIDGET(ruler),
- rect.x,
- rect.y,
+ rect.x + allocation.x,
+ rect.y + allocation.y,
rect.width,
rect.height);
if (priv->last_pos_rect.width != 0 || priv->last_pos_rect.height != 0)
{
gtk_widget_queue_draw_area (GTK_WIDGET(ruler),
- priv->last_pos_rect.x,
- priv->last_pos_rect.y,
+ priv->last_pos_rect.x + allocation.x,
+ priv->last_pos_rect.y + allocation.y,
priv->last_pos_rect.width,
priv->last_pos_rect.height);
diff --git a/src/widgets/ruler.h b/src/widgets/gimp/ruler.h
index ed529d082..ed529d082 100644
--- a/src/widgets/ruler.h
+++ b/src/widgets/gimp/ruler.h