From c03a5b837e69f357e623db90d088aa2f6d11ab83 Mon Sep 17 00:00:00 2001 From: Sven Neumann Date: Mon, 26 Jul 2004 18:14:48 +0000 Subject: [PATCH] register GimpRGB as a boxed type. 2004-07-26 Sven Neumann * libgimpcolor/gimprgb.[ch]: register GimpRGB as a boxed type. * libgimpcolor/gimpadaptivesupersample.c * libgimpcolor/gimpcolorspace.c * libgimpcolor/gimprgb-parse.c * libgimp/gimp.h: include instead of . --- ChangeLog | 9 +++++++ .../libgimpcolor/libgimpcolor-sections.txt | 4 +++ devel-docs/libgimpcolor/tmpl/gimprgb.sgml | 8 ++++++ libgimp/gimp.h | 2 +- libgimpcolor/gimpadaptivesupersample.c | 2 +- libgimpcolor/gimpcolorspace.c | 2 +- libgimpcolor/gimprgb-parse.c | 2 +- libgimpcolor/gimprgb.c | 27 ++++++++++++++++++- libgimpcolor/gimprgb.h | 6 +++++ 9 files changed, 57 insertions(+), 5 deletions(-) diff --git a/ChangeLog b/ChangeLog index 5a88dac034..efb15590ae 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +2004-07-26 Sven Neumann + + * libgimpcolor/gimprgb.[ch]: register GimpRGB as a boxed type. + + * libgimpcolor/gimpadaptivesupersample.c + * libgimpcolor/gimpcolorspace.c + * libgimpcolor/gimprgb-parse.c + * libgimp/gimp.h: include instead of . + 2004-07-26 Shlomi Fish * plug-ins/gimpressionist/: placed all the orientation map-related diff --git a/devel-docs/libgimpcolor/libgimpcolor-sections.txt b/devel-docs/libgimpcolor/libgimpcolor-sections.txt index dff9a9dd9a..48177f7475 100644 --- a/devel-docs/libgimpcolor/libgimpcolor-sections.txt +++ b/devel-docs/libgimpcolor/libgimpcolor-sections.txt @@ -78,6 +78,10 @@ GIMP_RGB_INTENSITY GIMP_RGB_INTENSITY_RED GIMP_RGB_INTENSITY_GREEN GIMP_RGB_INTENSITY_BLUE +GIMP_VALUE_HOLDS_RGB + +GIMP_TYPE_RGB +gimp_rgb_get_type
diff --git a/devel-docs/libgimpcolor/tmpl/gimprgb.sgml b/devel-docs/libgimpcolor/tmpl/gimprgb.sgml index 3dfa2585b3..9f5f2a8302 100644 --- a/devel-docs/libgimpcolor/tmpl/gimprgb.sgml +++ b/devel-docs/libgimpcolor/tmpl/gimprgb.sgml @@ -334,3 +334,11 @@ coefficients taken from the NTSC analog television standard. + + + + + +@value: + + diff --git a/libgimp/gimp.h b/libgimp/gimp.h index 4109a5e54b..f38f636b4f 100644 --- a/libgimp/gimp.h +++ b/libgimp/gimp.h @@ -22,7 +22,7 @@ #ifndef __GIMP_H__ #define __GIMP_H__ -#include +#include #include #include diff --git a/libgimpcolor/gimpadaptivesupersample.c b/libgimpcolor/gimpadaptivesupersample.c index 6a7ca51fb6..bc79f6eda0 100644 --- a/libgimpcolor/gimpadaptivesupersample.c +++ b/libgimpcolor/gimpadaptivesupersample.c @@ -19,7 +19,7 @@ #include "config.h" -#include +#include #include "libgimpmath/gimpmath.h" diff --git a/libgimpcolor/gimpcolorspace.c b/libgimpcolor/gimpcolorspace.c index 9f069847d7..21841e1272 100644 --- a/libgimpcolor/gimpcolorspace.c +++ b/libgimpcolor/gimpcolorspace.c @@ -19,7 +19,7 @@ #include "config.h" -#include +#include #include "libgimpmath/gimpmath.h" diff --git a/libgimpcolor/gimprgb-parse.c b/libgimpcolor/gimprgb-parse.c index ade9c05405..25bcd048d7 100644 --- a/libgimpcolor/gimprgb-parse.c +++ b/libgimpcolor/gimprgb-parse.c @@ -29,7 +29,7 @@ #include #include -#include +#include #include "gimpcolortypes.h" diff --git a/libgimpcolor/gimprgb.c b/libgimpcolor/gimprgb.c index 7f94ee7af9..d9a5e69909 100644 --- a/libgimpcolor/gimprgb.c +++ b/libgimpcolor/gimprgb.c @@ -19,7 +19,7 @@ #include "config.h" -#include +#include #include "libgimpmath/gimpmath.h" @@ -28,6 +28,31 @@ #include "gimprgb.h" +/* RGB type */ + +static GimpRGB * rgb_copy (const GimpRGB *rgb); + + +GType +gimp_rgb_get_type (void) +{ + static GType rgb_type = 0; + + if (!rgb_type) + rgb_type = g_boxed_type_register_static ("GimpRGB", + (GBoxedCopyFunc) rgb_copy, + (GBoxedFreeFunc) g_free); + + return rgb_type; +} + +static GimpRGB * +rgb_copy (const GimpRGB *rgb) +{ + return g_memdup (rgb, sizeof (GimpRGB)); +} + + /* RGB functions */ /** diff --git a/libgimpcolor/gimprgb.h b/libgimpcolor/gimprgb.h index 18d3c890c4..199c521284 100644 --- a/libgimpcolor/gimprgb.h +++ b/libgimpcolor/gimprgb.h @@ -25,6 +25,12 @@ G_BEGIN_DECLS /* For information look into the C source or the html documentation */ +#define GIMP_TYPE_RGB (gimp_rgb_get_type ()) +#define GIMP_VALUE_HOLDS_RGB(value) (G_TYPE_CHECK_VALUE_TYPE ((value), GIMP_TYPE_RGB)) + +GType gimp_rgb_get_type (void) G_GNUC_CONST; + + /* RGB and RGBA color types and operations taken from LibGCK */ typedef enum