X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/c668531784567b84a131875707d9a63a5977fd77..8a31648287be0ef976f133de2786b137f1e98340:/src/gtk/clrpicker.cpp diff --git a/src/gtk/clrpicker.cpp b/src/gtk/clrpicker.cpp index 672a8593cb..0142859111 100644 --- a/src/gtk/clrpicker.cpp +++ b/src/gtk/clrpicker.cpp @@ -17,7 +17,7 @@ // For compilers that support precompilation, includes "wx.h". #include "wx/wxprec.h" -#if wxUSE_COLOURPICKERCTRL && defined(__WXGTK24__) +#if wxUSE_COLOURPICKERCTRL #include "wx/clrpicker.h" @@ -43,7 +43,7 @@ static void gtk_clrbutton_setcolor_callback(GtkColorButton *widget, // fire the colour-changed event wxColourPickerEvent event(p, p->GetId(), p->GetColour()); - p->GetEventHandler()->ProcessEvent(event); + p->HandleWindowEvent(event); } } @@ -51,7 +51,7 @@ static void gtk_clrbutton_setcolor_callback(GtkColorButton *widget, // wxColourButton //----------------------------------------------------------------------------- -IMPLEMENT_DYNAMIC_CLASS(wxColourButton, wxGenericColourButton) +IMPLEMENT_DYNAMIC_CLASS(wxColourButton, wxButton) bool wxColourButton::Create( wxWindow *parent, wxWindowID id, const wxColour &col, @@ -59,34 +59,28 @@ bool wxColourButton::Create( wxWindow *parent, wxWindowID id, long style, const wxValidator& validator, const wxString &name ) { - if (!gtk_check_version(2,4,0)) + if (!PreCreation( parent, pos, size ) || + !wxControl::CreateBase(parent, id, pos, size, style, validator, name)) { - m_needParent = true; + wxFAIL_MSG( wxT("wxColourButton creation failed") ); + return false; + } - if (!PreCreation( parent, pos, size ) || - !wxControl::CreateBase(parent, id, pos, size, style, validator, name)) - { - wxFAIL_MSG( wxT("wxColourButton creation failed") ); - return false; - } + m_colour = col; + m_widget = gtk_color_button_new_with_color( m_colour.GetColor() ); + g_object_ref(m_widget); + gtk_widget_show(m_widget); - m_colour = col; - m_widget = gtk_color_button_new_with_color( m_colour.GetColor() ); - gtk_widget_show( GTK_WIDGET(m_widget) ); + // GtkColourButton signals + g_signal_connect(m_widget, "color-set", + G_CALLBACK(gtk_clrbutton_setcolor_callback), this); - // GtkColourButton signals - g_signal_connect(m_widget, "color-set", - G_CALLBACK(gtk_clrbutton_setcolor_callback), this); + m_parent->DoAddChild( this ); - m_parent->DoAddChild( this ); + PostCreation(size); + SetInitialSize(size); - PostCreation(size); - SetBestSize(size); - } - else - return wxGenericColourButton::Create(parent, id, col, pos, size, - style, validator, name); return true; } @@ -96,10 +90,7 @@ wxColourButton::~wxColourButton() void wxColourButton::UpdateColour() { - if (!gtk_check_version(2,4,0)) - gtk_color_button_set_color(GTK_COLOR_BUTTON(m_widget), m_colour.GetColor()); - else - wxGenericColourButton::UpdateColour(); + gtk_color_button_set_color(GTK_COLOR_BUTTON(m_widget), m_colour.GetColor()); } -#endif // wxUSE_COLOURPICKERCTRL && defined(__WXGTK24__) +#endif // wxUSE_COLOURPICKERCTRL