00001
00002
00003 #ifndef _LIBGNOMEUIMM_COLOR_PICKER_H
00004 #define _LIBGNOMEUIMM_COLOR_PICKER_H
00005
00006
00007 #include <glibmm.h>
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034 #include <gtkmm/button.h>
00035
00036
00037 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00038 typedef struct _GnomeColorPicker GnomeColorPicker;
00039 typedef struct _GnomeColorPickerClass GnomeColorPickerClass;
00040 #endif
00041
00042
00043 namespace Gnome
00044 {
00045
00046 namespace UI
00047 { class ColorPicker_Class; }
00048
00049 }
00050 namespace Gnome
00051 {
00052
00053 namespace UI
00054 {
00055
00056 #ifndef GNOMEMM_DISABLE_DEPRECATED
00057
00058
00059
00060
00061
00062
00063
00064
00065
00066
00067
00068
00069
00070
00071 class ColorPicker : public Gtk::Button
00072 {
00073 public:
00074 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00075 typedef ColorPicker CppObjectType;
00076 typedef ColorPicker_Class CppClassType;
00077 typedef GnomeColorPicker BaseObjectType;
00078 typedef GnomeColorPickerClass BaseClassType;
00079 #endif
00080
00081 virtual ~ColorPicker();
00082
00083 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00084
00085 private:
00086 friend class ColorPicker_Class;
00087 static CppClassType colorpicker_class_;
00088
00089
00090 ColorPicker(const ColorPicker&);
00091 ColorPicker& operator=(const ColorPicker&);
00092
00093 protected:
00094 explicit ColorPicker(const Glib::ConstructParams& construct_params);
00095 explicit ColorPicker(GnomeColorPicker* castitem);
00096
00097 #endif
00098
00099 public:
00100 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00101 static GType get_type() G_GNUC_CONST;
00102 static GType get_base_type() G_GNUC_CONST;
00103 #endif
00104
00106 GnomeColorPicker* gobj() { return reinterpret_cast<GnomeColorPicker*>(gobject_); }
00107
00109 const GnomeColorPicker* gobj() const { return reinterpret_cast<GnomeColorPicker*>(gobject_); }
00110
00111
00112 public:
00113
00114
00115 protected:
00116
00117
00118
00119 virtual void on_color_set(guint r, guint g, guint b, guint a);
00120
00121
00122 private:
00123
00124 public:
00125 ColorPicker();
00126
00127
00128 void set(double r, double g, double b, double a);
00129
00130
00131 void set(guint8 r, guint8 g, guint8 b, guint8 a);
00132
00133
00134 void set(gushort r, gushort g, gushort b, gushort a);
00135
00136
00137 void get(double& r, double& g, double& b, double& a) const;
00138
00139 void get(guint8& r, guint8& g, guint8& b, guint8& a) const;
00140
00141 void get(gushort& r, gushort& g, gushort& b, gushort& a) const;
00142
00143
00144 void set_dither(bool dither = true);
00145
00146 bool get_dither() const;
00147
00148
00149 void set_use_alpha(bool use_alpha = true);
00150
00151 bool get_use_alpha() const;
00152
00153
00154 void set_title(const Glib::ustring& title);
00155
00156 Glib::ustring get_title() const;
00157
00158
00159 Glib::SignalProxy4< void,guint,guint,guint,guint > signal_color_set();
00160
00161
00168 Glib::PropertyProxy<bool> property_dither() ;
00169
00176 Glib::PropertyProxy_ReadOnly<bool> property_dither() const;
00177
00184 Glib::PropertyProxy<bool> property_use_alpha() ;
00185
00192 Glib::PropertyProxy_ReadOnly<bool> property_use_alpha() const;
00193
00200 Glib::PropertyProxy<Glib::ustring> property_title() ;
00201
00208 Glib::PropertyProxy_ReadOnly<Glib::ustring> property_title() const;
00209
00216 Glib::PropertyProxy<guint> property_red() ;
00217
00224 Glib::PropertyProxy_ReadOnly<guint> property_red() const;
00225
00232 Glib::PropertyProxy<guint> property_green() ;
00233
00240 Glib::PropertyProxy_ReadOnly<guint> property_green() const;
00241
00248 Glib::PropertyProxy<guint> property_blue() ;
00249
00256 Glib::PropertyProxy_ReadOnly<guint> property_blue() const;
00257
00264 Glib::PropertyProxy<guint> property_alpha() ;
00265
00272 Glib::PropertyProxy_ReadOnly<guint> property_alpha() const;
00273
00274
00275 };
00276
00277 #endif //GNOMEMM_DISABLE_DEPRECATED
00278
00279 }
00280 }
00281
00282
00283 namespace Glib
00284 {
00290 Gnome::UI::ColorPicker* wrap(GnomeColorPicker* object, bool take_copy = false);
00291 }
00292
00293
00294 #endif
00295