1 /////////////////////////////////////////////////////////////////////////////
2 // Name:        wx/gtk/clrpicker.h
3 // Purpose:     wxColourButton header
4 // Author:      Francesco Montorsi
5 // Modified by:
6 // Created:     14/4/2006
7 // Copyright:   (c) Francesco Montorsi
8 // Licence:     wxWindows Licence
9 /////////////////////////////////////////////////////////////////////////////
10 
11 #ifndef _WX_GTK_CLRPICKER_H_
12 #define _WX_GTK_CLRPICKER_H_
13 
14 #include "wx/button.h"
15 
16 //-----------------------------------------------------------------------------
17 // wxColourButton
18 //-----------------------------------------------------------------------------
19 
20 class WXDLLIMPEXP_CORE wxColourButton : public wxButton,
21                                         public wxColourPickerWidgetBase
22 {
23 public:
wxColourButton()24     wxColourButton() : m_topParent(NULL) {}
25     wxColourButton(wxWindow *parent,
26                    wxWindowID id,
27                    const wxColour& initial = *wxBLACK,
28                    const wxPoint& pos = wxDefaultPosition,
29                    const wxSize& size = wxDefaultSize,
30                    long style = wxCLRBTN_DEFAULT_STYLE,
31                    const wxValidator& validator = wxDefaultValidator,
32                    const wxString& name = wxASCII_STR(wxColourPickerWidgetNameStr))
m_topParent(NULL)33         : m_topParent(NULL)
34     {
35         Create(parent, id, initial, pos, size, style, validator, name);
36     }
37 
38     bool Create(wxWindow *parent,
39                 wxWindowID id,
40                 const wxColour& initial = *wxBLACK,
41                 const wxPoint& pos = wxDefaultPosition,
42                 const wxSize& size = wxDefaultSize,
43                 long style = wxCLRBTN_DEFAULT_STYLE,
44                 const wxValidator& validator = wxDefaultValidator,
45                 const wxString& name = wxASCII_STR(wxColourPickerWidgetNameStr));
46 
47     virtual ~wxColourButton();
48 
49 protected:
50     void UpdateColour() wxOVERRIDE;
51 
52 public:     // used by the GTK callback only
53 
GTKSetColour(const wxColour & colour)54     void GTKSetColour(const wxColour& colour)
55         { m_colour = colour; }
56 
57     wxWindow *m_topParent;
58 
59 private:
60     wxDECLARE_DYNAMIC_CLASS(wxColourButton);
61 };
62 
63 #endif // _WX_GTK_CLRPICKER_H_
64 
65