]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/gtk/clrpicker.h
Hold a reference on m_widget for the life of the associated wxWindow object.
[wxWidgets.git] / include / wx / gtk / clrpicker.h
index 5e54c4c2984828d8b8c285be60869509a0a52eac..19212882775bd94c77256fe6e969766b345886c6 100644 (file)
 #ifndef _WX_GTK_CLRPICKER_H_
 #define _WX_GTK_CLRPICKER_H_
 
-// since GtkColorButton is available only for GTK+ >= 2.4,
-// we need to use generic version if we detect (at runtime)
-// that GTK+ < 2.4
-#include "wx/generic/clrpickerg.h"
+#include "wx/button.h"
 
 //-----------------------------------------------------------------------------
 // wxColourButton
 //-----------------------------------------------------------------------------
 
-class WXDLLIMPEXP_CORE wxColourButton : public wxGenericColourButton
+class WXDLLIMPEXP_CORE wxColourButton : public wxButton,
+                                        public wxColourPickerWidgetBase
 {
 public:
     wxColourButton() : m_topParent(NULL) {}
@@ -38,11 +36,6 @@ public:
         Create(parent, id, initial, pos, size, style, validator, name);
     }
 
-    virtual ~wxColourButton();
-
-
-public:     // overrides
-
     bool Create(wxWindow *parent,
                 wxWindowID id,
                 const wxColour& initial = *wxBLACK,
@@ -52,13 +45,15 @@ public:     // overrides
                 const wxValidator& validator = wxDefaultValidator,
                 const wxString& name = wxColourPickerWidgetNameStr);
 
-    void UpdateColour();
+    virtual ~wxColourButton();
 
+protected:
+    void UpdateColour();
 
 public:     // used by the GTK callback only
 
-    GdkColor *GetGdkColor() const
-        { return m_colour.GetColor(); }
+    void SetGdkColor(const GdkColor& gdkColor)
+        { m_colour = wxColor(gdkColor); }
 
     wxWindow *m_topParent;