3 * Copyright (C) 2008-2009 Jim Evins <evins@snaught.com>.
5 * This file is part of gLabels.
7 * gLabels is free software: you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation, either version 3 of the License, or
10 * (at your option) any later version.
12 * gLabels is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
17 * You should have received a copy of the GNU General Public License
18 * along with gLabels. If not, see <http://www.gnu.org/licenses/>.
21 #ifndef __GL_COLOR_BUTTON_H__
22 #define __GL_COLOR_BUTTON_H__
25 #include <gtk/gtkhbox.h>
30 #define TYPE_GL_COLOR_BUTTON (gl_color_button_get_type ())
31 #define GL_COLOR_BUTTON(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_GL_COLOR_BUTTON, glColorButton))
32 #define GL_COLOR_BUTTON_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_GL_COLOR_BUTTON, glColorButtonClass))
33 #define IS_GL_COLOR_BUTTON(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_GL_COLOR_BUTTON))
34 #define IS_GL_COLOR_BUTTON_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_GL_COLOR_BUTTON))
35 #define GL_COLOR_BUTTON_GET_CLASS(object) (G_TYPE_INSTANCE_GET_CLASS ((object), TYPE_GL_COLOR_BUTTON, glColorButtonClass))
38 typedef struct _glColorButton glColorButton;
39 typedef struct _glColorButtonPrivate glColorButtonPrivate;
40 typedef struct _glColorButtonClass glColorButtonClass;
43 struct _glColorButton {
46 glColorButtonPrivate *priv;
49 struct _glColorButtonClass {
50 GtkHBoxClass parent_class;
55 void (*color_changed) (glColorButton *object,
63 GType gl_color_button_get_type (void) G_GNUC_CONST;
65 GtkWidget *gl_color_button_new (GdkPixbuf *icon,
66 const gchar *default_label,
70 void gl_color_button_set_color (glColorButton *this,
73 void gl_color_button_set_to_default (glColorButton *this);
75 guint gl_color_button_get_color (glColorButton *this,
76 gboolean *is_default);
78 void gl_color_button_set_relief (glColorButton *this,
79 GtkReliefStyle relief);
84 #endif /* __GL_COLOR_BUTTON_H__ */
89 * Local Variables: -- emacs
91 * c-basic-offset: 8 -- emacs
92 * tab-width: 8 -- emacs
93 * indent-tabs-mode: nil -- emacs