[gimp] Move the "flush_accum" to GimpImagePrivate
- From: Michael Natterer <mitch src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [gimp] Move the "flush_accum" to GimpImagePrivate
- Date: Fri, 5 Feb 2010 08:13:53 +0000 (UTC)
commit 2b2464d6c8742fc4ce970c269d2b776640ecd5b3
Author: Michael Natterer <mitch gimp org>
Date: Fri Feb 5 09:13:25 2010 +0100
Move the "flush_accum" to GimpImagePrivate
app/core/gimpimage-private.h | 14 ++++++++++++++
app/core/gimpimage.c | 41 +++++++++++++++++++++--------------------
app/core/gimpimage.h | 18 ++----------------
3 files changed, 37 insertions(+), 36 deletions(-)
---
diff --git a/app/core/gimpimage-private.h b/app/core/gimpimage-private.h
index d63e979..752807d 100644
--- a/app/core/gimpimage-private.h
+++ b/app/core/gimpimage-private.h
@@ -19,6 +19,17 @@
#define __GIMP_IMAGE_PRIVATE_H__
+typedef struct _GimpImageFlushAccumulator GimpImageFlushAccumulator;
+
+struct _GimpImageFlushAccumulator
+{
+ gboolean alpha_changed;
+ gboolean mask_changed;
+ gboolean floating_selection_changed;
+ gboolean preview_invalidated;
+};
+
+
typedef struct _GimpImagePrivate GimpImagePrivate;
struct _GimpImagePrivate
@@ -91,6 +102,9 @@ struct _GimpImagePrivate
/* Preview */
TempBuf *preview; /* the projection preview */
+
+ /* Signal emmision accumulator */
+ GimpImageFlushAccumulator flush_accum;
};
#define GIMP_IMAGE_GET_PRIVATE(image) \
diff --git a/app/core/gimpimage.c b/app/core/gimpimage.c
index 004b455..d74e70b 100644
--- a/app/core/gimpimage.c
+++ b/app/core/gimpimage.c
@@ -678,10 +678,10 @@ gimp_image_init (GimpImage *image)
private->preview = NULL;
- image->flush_accum.alpha_changed = FALSE;
- image->flush_accum.mask_changed = FALSE;
- image->flush_accum.floating_selection_changed = FALSE;
- image->flush_accum.preview_invalidated = FALSE;
+ private->flush_accum.alpha_changed = FALSE;
+ private->flush_accum.mask_changed = FALSE;
+ private->flush_accum.floating_selection_changed = FALSE;
+ private->flush_accum.preview_invalidated = FALSE;
}
static GObject *
@@ -1193,32 +1193,33 @@ static void
gimp_image_projectable_flush (GimpProjectable *projectable,
gboolean invalidate_preview)
{
- GimpImage *image = GIMP_IMAGE (projectable);
+ GimpImage *image = GIMP_IMAGE (projectable);
+ GimpImagePrivate *private = GIMP_IMAGE_GET_PRIVATE (image);
- if (image->flush_accum.alpha_changed)
+ if (private->flush_accum.alpha_changed)
{
gimp_image_alpha_changed (image);
- image->flush_accum.alpha_changed = FALSE;
+ private->flush_accum.alpha_changed = FALSE;
}
- if (image->flush_accum.mask_changed)
+ if (private->flush_accum.mask_changed)
{
gimp_image_mask_changed (image);
- image->flush_accum.mask_changed = FALSE;
+ private->flush_accum.mask_changed = FALSE;
}
- if (image->flush_accum.floating_selection_changed)
+ if (private->flush_accum.floating_selection_changed)
{
gimp_image_floating_selection_changed (image);
- image->flush_accum.floating_selection_changed = FALSE;
+ private->flush_accum.floating_selection_changed = FALSE;
}
- if (image->flush_accum.preview_invalidated)
+ if (private->flush_accum.preview_invalidated)
{
/* don't invalidate the preview here, the projection does this when
* it is completely constructed.
*/
- image->flush_accum.preview_invalidated = FALSE;
+ private->flush_accum.preview_invalidated = FALSE;
}
}
@@ -1289,7 +1290,7 @@ gimp_image_mask_update (GimpDrawable *drawable,
gint height,
GimpImage *image)
{
- image->flush_accum.mask_changed = TRUE;
+ GIMP_IMAGE_GET_PRIVATE (image)->flush_accum.mask_changed = TRUE;
}
static void
@@ -1299,7 +1300,7 @@ gimp_image_layer_alpha_changed (GimpDrawable *drawable,
GimpImagePrivate *private = GIMP_IMAGE_GET_PRIVATE (image);
if (gimp_container_get_n_children (private->layers) == 1)
- image->flush_accum.alpha_changed = TRUE;
+ private->flush_accum.alpha_changed = TRUE;
}
static void
@@ -1691,7 +1692,7 @@ gimp_image_set_floating_selection (GimpImage *image,
{
private->floating_sel = floating_sel;
- image->flush_accum.floating_selection_changed = TRUE;
+ private->flush_accum.floating_selection_changed = TRUE;
}
}
@@ -1916,7 +1917,7 @@ gimp_image_invalidate (GimpImage *image,
gimp_projectable_invalidate (GIMP_PROJECTABLE (image),
x, y, width, height);
- image->flush_accum.preview_invalidated = TRUE;
+ GIMP_IMAGE_GET_PRIVATE (image)->flush_accum.preview_invalidated = TRUE;
}
void
@@ -2282,7 +2283,7 @@ gimp_image_flush (GimpImage *image)
g_return_if_fail (GIMP_IS_IMAGE (image));
gimp_projectable_flush (GIMP_PROJECTABLE (image),
- image->flush_accum.preview_invalidated);
+ GIMP_IMAGE_GET_PRIVATE (image)->flush_accum.preview_invalidated);
}
@@ -3364,7 +3365,7 @@ gimp_image_add_layer (GimpImage *image,
layer);
if (old_has_alpha != gimp_image_has_alpha (image))
- image->flush_accum.alpha_changed = TRUE;
+ private->flush_accum.alpha_changed = TRUE;
return TRUE;
}
@@ -3511,7 +3512,7 @@ gimp_image_remove_layer (GimpImage *image,
g_object_unref (layer);
if (old_has_alpha != gimp_image_has_alpha (image))
- image->flush_accum.alpha_changed = TRUE;
+ private->flush_accum.alpha_changed = TRUE;
if (undo_group)
gimp_image_undo_group_end (image);
diff --git a/app/core/gimpimage.h b/app/core/gimpimage.h
index 4bd2da0..9eef21f 100644
--- a/app/core/gimpimage.h
+++ b/app/core/gimpimage.h
@@ -78,17 +78,6 @@
#define GIMP_IMAGE_ACTIVE_PARENT ((gpointer) 1)
-typedef struct _GimpImageFlushAccumulator GimpImageFlushAccumulator;
-
-struct _GimpImageFlushAccumulator
-{
- gboolean alpha_changed;
- gboolean mask_changed;
- gboolean floating_selection_changed;
- gboolean preview_invalidated;
-};
-
-
#define GIMP_TYPE_IMAGE (gimp_image_get_type ())
#define GIMP_IMAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_IMAGE, GimpImage))
#define GIMP_IMAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_IMAGE, GimpImageClass))
@@ -101,12 +90,9 @@ typedef struct _GimpImageClass GimpImageClass;
struct _GimpImage
{
- GimpViewable parent_instance;
-
- Gimp *gimp; /* the GIMP the image belongs to*/
+ GimpViewable parent_instance;
- /* Signal emmision accumulator */
- GimpImageFlushAccumulator flush_accum;
+ Gimp *gimp; /* the GIMP the image belongs to */
};
struct _GimpImageClass
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]