libgimpwidgets: move all GimpColorDisplay members to a private struct

This commit is contained in:
Michael Natterer 2010-12-31 19:03:47 +01:00
parent db6c2ea658
commit 79dd44fb18
3 changed files with 64 additions and 47 deletions

View file

@ -62,13 +62,19 @@ enum
};
typedef struct
typedef struct _GimpColorDisplayPrivate GimpColorDisplayPrivate;
struct _GimpColorDisplayPrivate
{
gboolean enabled;
GimpColorConfig *config;
GimpColorManaged *managed;
} GimpColorDisplayPrivate;
};
#define GET_PRIVATE(obj) (G_TYPE_INSTANCE_GET_PRIVATE ((obj), \
GIMP_TYPE_COLOR_DISPLAY, \
GimpColorDisplayPrivate))
#define GIMP_COLOR_DISPLAY_GET_PRIVATE(obj) (G_TYPE_INSTANCE_GET_PRIVATE ((obj), GIMP_TYPE_COLOR_DISPLAY, GimpColorDisplayPrivate))
static void gimp_color_display_constructed (GObject *object);
@ -106,8 +112,6 @@ gimp_color_display_class_init (GimpColorDisplayClass *klass)
object_class->set_property = gimp_color_display_set_property;
object_class->get_property = gimp_color_display_get_property;
g_type_class_add_private (object_class, sizeof (GimpColorDisplayPrivate));
g_object_class_install_property (object_class, PROP_ENABLED,
g_param_spec_boolean ("enabled",
"Enabled",
@ -153,12 +157,16 @@ gimp_color_display_class_init (GimpColorDisplayClass *klass)
klass->configure = NULL;
klass->configure_reset = NULL;
klass->changed = NULL;
g_type_class_add_private (object_class, sizeof (GimpColorDisplayPrivate));
}
static void
gimp_color_display_init (GimpColorDisplay *display)
{
display->enabled = FALSE;
GimpColorDisplayPrivate *private = GET_PRIVATE (display);
private->enabled = FALSE;
}
static void
@ -173,7 +181,7 @@ gimp_color_display_constructed (GObject *object)
static void
gimp_color_display_dispose (GObject *object)
{
GimpColorDisplayPrivate *private = GIMP_COLOR_DISPLAY_GET_PRIVATE (object);
GimpColorDisplayPrivate *private = GET_PRIVATE (object);
if (private->config)
{
@ -202,12 +210,13 @@ gimp_color_display_set_property (GObject *object,
const GValue *value,
GParamSpec *pspec)
{
GimpColorDisplay *display = GIMP_COLOR_DISPLAY (object);
GimpColorDisplay *display = GIMP_COLOR_DISPLAY (object);
GimpColorDisplayPrivate *private = GET_PRIVATE (object);
switch (property_id)
{
case PROP_ENABLED:
display->enabled = g_value_get_boolean (value);
private->enabled = g_value_get_boolean (value);
break;
case PROP_COLOR_CONFIG:
@ -232,22 +241,20 @@ gimp_color_display_get_property (GObject *object,
GValue *value,
GParamSpec *pspec)
{
GimpColorDisplay *display = GIMP_COLOR_DISPLAY (object);
GimpColorDisplayPrivate *private = GET_PRIVATE (object);
switch (property_id)
{
case PROP_ENABLED:
g_value_set_boolean (value, display->enabled);
g_value_set_boolean (value, private->enabled);
break;
case PROP_COLOR_CONFIG:
g_value_set_object (value,
GIMP_COLOR_DISPLAY_GET_PRIVATE (display)->config);
g_value_set_object (value, private->config);
break;
case PROP_COLOR_MANAGED:
g_value_set_object (value,
GIMP_COLOR_DISPLAY_GET_PRIVATE (display)->managed);
g_value_set_object (value, private->managed);
break;
default:
@ -260,7 +267,7 @@ static void
gimp_color_display_set_color_config (GimpColorDisplay *display,
GimpColorConfig *config)
{
GimpColorDisplayPrivate *private = GIMP_COLOR_DISPLAY_GET_PRIVATE (display);
GimpColorDisplayPrivate *private = GET_PRIVATE (display);
g_return_if_fail (private->config == NULL);
@ -278,7 +285,7 @@ static void
gimp_color_display_set_color_managed (GimpColorDisplay *display,
GimpColorManaged *managed)
{
GimpColorDisplayPrivate *private = GIMP_COLOR_DISPLAY_GET_PRIVATE (display);
GimpColorDisplayPrivate *private = GET_PRIVATE (display);
g_return_if_fail (private->managed == NULL);
@ -324,12 +331,10 @@ gimp_color_display_clone (GimpColorDisplay *display)
if (clone)
{
GimpColorDisplayPrivate *private;
private = GIMP_COLOR_DISPLAY_GET_PRIVATE (display);
GimpColorDisplayPrivate *private = GET_PRIVATE (display);
g_object_set (clone,
"enabled", display->enabled,
"enabled", private->enabled,
"color-managed", private->managed,
NULL);
}
@ -355,10 +360,14 @@ gimp_color_display_convert_buffer (GimpColorDisplay *display,
GeglBuffer *buffer,
GeglRectangle *area)
{
GimpColorDisplayPrivate *private;
g_return_if_fail (GIMP_IS_COLOR_DISPLAY (display));
g_return_if_fail (GEGL_IS_BUFFER (buffer));
if (display->enabled &&
private = GET_PRIVATE (display);
if (private->enabled &&
GIMP_COLOR_DISPLAY_GET_CLASS (display)->convert_buffer)
{
GIMP_COLOR_DISPLAY_GET_CLASS (display)->convert_buffer (display, buffer,
@ -381,12 +390,16 @@ void
gimp_color_display_convert_surface (GimpColorDisplay *display,
cairo_surface_t *surface)
{
GimpColorDisplayPrivate *private;
g_return_if_fail (GIMP_IS_COLOR_DISPLAY (display));
g_return_if_fail (surface != NULL);
g_return_if_fail (cairo_surface_get_type (surface) ==
CAIRO_SURFACE_TYPE_IMAGE);
if (display->enabled &&
private = GET_PRIVATE (display);
if (private->enabled &&
GIMP_COLOR_DISPLAY_GET_CLASS (display)->convert_surface)
{
cairo_surface_flush (surface);
@ -416,11 +429,15 @@ gimp_color_display_convert (GimpColorDisplay *display,
gint bpp,
gint bpl)
{
GimpColorDisplayPrivate *private;
g_return_if_fail (GIMP_IS_COLOR_DISPLAY (display));
private = GET_PRIVATE (display);
/* implementing the convert method is deprecated
*/
if (display->enabled && GIMP_COLOR_DISPLAY_GET_CLASS (display)->convert)
if (private->enabled && GIMP_COLOR_DISPLAY_GET_CLASS (display)->convert)
GIMP_COLOR_DISPLAY_GET_CLASS (display)->convert (display, buf,
width, height,
bpp, bpl);
@ -513,9 +530,13 @@ void
gimp_color_display_set_enabled (GimpColorDisplay *display,
gboolean enabled)
{
GimpColorDisplayPrivate *private;
g_return_if_fail (GIMP_IS_COLOR_DISPLAY (display));
if (enabled != display->enabled)
private = GET_PRIVATE (display);
if (enabled != private->enabled)
{
g_object_set (display,
"enabled", enabled,
@ -528,7 +549,7 @@ gimp_color_display_get_enabled (GimpColorDisplay *display)
{
g_return_val_if_fail (GIMP_IS_COLOR_DISPLAY (display), FALSE);
return display->enabled;
return GET_PRIVATE (display)->enabled;
}
/**
@ -544,7 +565,7 @@ gimp_color_display_get_config (GimpColorDisplay *display)
{
g_return_val_if_fail (GIMP_IS_COLOR_DISPLAY (display), NULL);
return GIMP_COLOR_DISPLAY_GET_PRIVATE (display)->config;
return GET_PRIVATE (display)->config;
}
/**
@ -560,5 +581,5 @@ gimp_color_display_get_managed (GimpColorDisplay *display)
{
g_return_val_if_fail (GIMP_IS_COLOR_DISPLAY (display), NULL);
return GIMP_COLOR_DISPLAY_GET_PRIVATE (display)->managed;
return GET_PRIVATE (display)->managed;
}

View file

@ -44,8 +44,6 @@ typedef struct _GimpColorDisplayClass GimpColorDisplayClass;
struct _GimpColorDisplay
{
GObject parent_instance;
gboolean enabled;
};
struct _GimpColorDisplayClass
@ -54,12 +52,21 @@ struct _GimpColorDisplayClass
const gchar *name;
const gchar *help_id;
const gchar *icon_name;
/* virtual functions */
/* implementing the GimpColorDisplay::clone method is deprecated */
GimpColorDisplay * (* clone) (GimpColorDisplay *display);
void (* convert_buffer) (GimpColorDisplay *display,
GeglBuffer *buffer,
GeglRectangle *area);
/* implementing the GimpColorDisplay::convert_surface method is deprecated */
void (* convert_surface) (GimpColorDisplay *display,
cairo_surface_t *surface);
/* implementing the GimpColorDisplay::convert method is deprecated */
void (* convert) (GimpColorDisplay *display,
guchar *buf,
@ -83,22 +90,11 @@ struct _GimpColorDisplayClass
/* signals */
void (* changed) (GimpColorDisplay *display);
#ifdef GIMP_DISABLE_DEPRECATED
gpointer deprecated_stock_id;
#else
const gchar *stock_id;
#endif
/* implementing the GimpColorDisplay::convert_surface method is deprecated */
void (* convert_surface) (GimpColorDisplay *display,
cairo_surface_t *surface);
void (* convert_buffer) (GimpColorDisplay *display,
GeglBuffer *buffer,
GeglRectangle *area);
/* icon name */
const gchar *icon_name;
/* Padding for future expansion */
void (* _gimp_reserved1) (void);
void (* _gimp_reserved2) (void);
void (* _gimp_reserved3) (void);
void (* _gimp_reserved4) (void);
};

View file

@ -387,7 +387,7 @@ static void
gimp_color_display_stack_display_changed (GimpColorDisplay *display,
GimpColorDisplayStack *stack)
{
if (display->enabled)
if (gimp_color_display_get_enabled (display))
gimp_color_display_stack_changed (stack);
}