* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
* Boston, MA 02111-1307, USA.
*/
-#ifndef __GTK_HSV_H__
-#define __GTK_HSV_H__
/*
* Modified by the GTK+ Team and others 1997-2000. See the AUTHORS
* GTK+ at ftp://ftp.gtk.org/pub/gtk/.
*/
+#if !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION)
+#error "Only <gtk/gtk.h> can be included directly."
+#endif
+
+#ifndef __GTK_HSV_H__
+#define __GTK_HSV_H__
+
#include <gtk/gtkwidget.h>
-#ifdef __cplusplus
-extern "C" {
-#endif
+G_BEGIN_DECLS
#define GTK_TYPE_HSV (gtk_hsv_get_type ())
-#define GTK_HSV(obj) (GTK_CHECK_CAST ((obj), GTK_TYPE_HSV, GtkHSV))
-#define GTK_HSV_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GTK_TYPE_HSV, GtkHSV))
-#define GTK_IS_HSV(obj) (GTK_CHECK_TYPE ((obj), GTK_TYPE_HSV))
-#define GTK_IS_HSV_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GTK_TYPE_HSV))
-#define GTK_HSV_GET_CLASS(obj) (GTK_CHECK_GET_CLASS ((obj), GTK_TYPE_HSV, GtkHSVClass))
+#define GTK_HSV(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_HSV, GtkHSV))
+#define GTK_HSV_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_HSV, GtkHSVClass))
+#define GTK_IS_HSV(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_HSV))
+#define GTK_IS_HSV_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_HSV))
+#define GTK_HSV_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_HSV, GtkHSVClass))
typedef struct _GtkHSV GtkHSV;
struct _GtkHSV
{
GtkWidget parent_instance;
-
+
/* Private data */
- gpointer priv;
+ gpointer GSEAL (priv);
};
struct _GtkHSVClass
{
GtkWidgetClass parent_class;
-
+
/* Notification signals */
-
- void (*changed) (GtkHSV *hsv);
+ void (* changed) (GtkHSV *hsv);
+
+ /* Keybindings */
+ void (* move) (GtkHSV *hsv,
+ GtkDirectionType type);
+
+ /* Padding for future expansion */
+ void (*_gtk_reserved1) (void);
+ void (*_gtk_reserved2) (void);
+ void (*_gtk_reserved3) (void);
+ void (*_gtk_reserved4) (void);
};
-GtkType gtk_hsv_get_type (void) G_GNUC_CONST;
+GType gtk_hsv_get_type (void) G_GNUC_CONST;
GtkWidget* gtk_hsv_new (void);
void gtk_hsv_set_color (GtkHSV *hsv,
double h,
gint *size,
gint *ring_width);
gboolean gtk_hsv_is_adjusting (GtkHSV *hsv);
+
+/* Convert colors between the RGB and HSV color spaces */
void gtk_hsv_to_rgb (gdouble h,
gdouble s,
gdouble v,
gdouble *s,
gdouble *v);
-
-#ifdef __cplusplus
-}
-#endif
+G_END_DECLS
#endif /* __GTK_HSV_H__ */