[gimp] app: add more accessors to GimpGrid and use them instead of grid->foo
- From: Michael Natterer <mitch src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gimp] app: add more accessors to GimpGrid and use them instead of grid->foo
- Date: Wed, 21 May 2014 19:46:42 +0000 (UTC)
commit d3966c2c9004390038200afa2c856f070390e368
Author: Michael Natterer <mitch gimp org>
Date: Wed May 21 21:44:28 2014 +0200
app: add more accessors to GimpGrid and use them instead of grid->foo
app/core/gimpgrid.c | 31 +++++++++++++++++++++++++++++++
app/core/gimpgrid.h | 7 +++++++
app/display/gimpcanvas-style.c | 21 ++++++++++++---------
app/display/gimpcanvasgrid.c | 2 +-
4 files changed, 51 insertions(+), 10 deletions(-)
---
diff --git a/app/core/gimpgrid.c b/app/core/gimpgrid.c
index 4f78c4b..dfb6cbd 100644
--- a/app/core/gimpgrid.c
+++ b/app/core/gimpgrid.c
@@ -226,6 +226,37 @@ gimp_grid_set_property (GObject *object,
}
}
+
+/* public functions */
+
+GimpGridStyle
+gimp_grid_get_style (GimpGrid *grid)
+{
+ g_return_val_if_fail (GIMP_IS_GRID (grid), GIMP_GRID_SOLID);
+
+ return grid->style;
+}
+
+void
+gimp_grid_get_fgcolor (GimpGrid *grid,
+ GimpRGB *fgcolor)
+{
+ g_return_if_fail (GIMP_IS_GRID (grid));
+ g_return_if_fail (fgcolor != NULL);
+
+ *fgcolor = grid->fgcolor;
+}
+
+void
+gimp_grid_get_bgcolor (GimpGrid *grid,
+ GimpRGB *bgcolor)
+{
+ g_return_if_fail (GIMP_IS_GRID (grid));
+ g_return_if_fail (bgcolor != NULL);
+
+ *bgcolor = grid->bgcolor;
+}
+
void
gimp_grid_get_spacing (GimpGrid *grid,
gdouble *xspacing,
diff --git a/app/core/gimpgrid.h b/app/core/gimpgrid.h
index 198ac48..6a18278 100644
--- a/app/core/gimpgrid.h
+++ b/app/core/gimpgrid.h
@@ -59,6 +59,13 @@ struct _GimpGridClass
GType gimp_grid_get_type (void) G_GNUC_CONST;
+GimpGridStyle gimp_grid_get_style (GimpGrid *grid);
+
+void gimp_grid_get_fgcolor (GimpGrid *grid,
+ GimpRGB *fgcolor);
+void gimp_grid_get_bgcolor (GimpGrid *grid,
+ GimpRGB *bgcolor);
+
void gimp_grid_get_spacing (GimpGrid *grid,
gdouble *xspacing,
gdouble *yspacing);
diff --git a/app/display/gimpcanvas-style.c b/app/display/gimpcanvas-style.c
index 9868417..81b840b 100644
--- a/app/display/gimpcanvas-style.c
+++ b/app/display/gimpcanvas-style.c
@@ -122,13 +122,18 @@ gimp_canvas_set_grid_style (GtkWidget *canvas,
cairo_t *cr,
GimpGrid *grid)
{
+ GimpRGB fg;
+ GimpRGB bg;
+
g_return_if_fail (GTK_IS_WIDGET (canvas));
g_return_if_fail (cr != NULL);
g_return_if_fail (GIMP_IS_GRID (grid));
cairo_set_line_width (cr, 1.0);
- switch (grid->style)
+ gimp_grid_get_fgcolor (grid, &fg);
+
+ switch (gimp_grid_get_style (grid))
{
cairo_pattern_t *pattern;
@@ -136,17 +141,15 @@ gimp_canvas_set_grid_style (GtkWidget *canvas,
case GIMP_GRID_DOUBLE_DASH:
if (grid->style == GIMP_GRID_DOUBLE_DASH)
{
- pattern = gimp_cairo_stipple_pattern_create (&grid->fgcolor,
- &grid->bgcolor,
- 0);
+ gimp_grid_get_bgcolor (grid, &bg);
+
+ pattern = gimp_cairo_stipple_pattern_create (&fg, &bg, 0);
}
else
{
- GimpRGB bg = { 0.0, 0.0, 0.0, 0.0 };
+ gimp_rgba_set (&bg, 0.0, 0.0, 0.0, 0.0);
- pattern = gimp_cairo_stipple_pattern_create (&grid->fgcolor,
- &bg,
- 0);
+ pattern = gimp_cairo_stipple_pattern_create (&fg, &bg, 0);
}
cairo_set_source (cr, pattern);
@@ -156,7 +159,7 @@ gimp_canvas_set_grid_style (GtkWidget *canvas,
case GIMP_GRID_DOTS:
case GIMP_GRID_INTERSECTIONS:
case GIMP_GRID_SOLID:
- gimp_cairo_set_source_rgb (cr, &grid->fgcolor);
+ gimp_cairo_set_source_rgb (cr, &fg);
break;
}
}
diff --git a/app/display/gimpcanvasgrid.c b/app/display/gimpcanvasgrid.c
index 7ba850e..fa26f96 100644
--- a/app/display/gimpcanvasgrid.c
+++ b/app/display/gimpcanvasgrid.c
@@ -229,7 +229,7 @@ gimp_canvas_grid_draw (GimpCanvasItem *item,
while (yoffset > 0)
yoffset -= yspacing;
- switch (private->grid->style)
+ switch (gimp_grid_get_style (private->grid))
{
case GIMP_GRID_DOTS:
for (x = xoffset; x <= width; x += xspacing)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]