X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/b4354db179f5b9f3107cc532bb5232deccab90d0..34f35c75c4c12c2715e3f9182f25e24eec7d7919:/src/gtk/button.cpp diff --git a/src/gtk/button.cpp b/src/gtk/button.cpp index 28366f0219..d668fb6cce 100644 --- a/src/gtk/button.cpp +++ b/src/gtk/button.cpp @@ -19,6 +19,7 @@ #include "wx/stockitem.h" #include "wx/gtk/private.h" +#include "wx/gtk/private/list.h" // ---------------------------------------------------------------------------- // GTK callbacks @@ -244,7 +245,6 @@ bool wxButton::DoSetLabelMarkup(const wxString& markup) return true; } -#endif // wxUSE_MARKUP GtkLabel *wxButton::GTKGetLabel() const { @@ -253,20 +253,19 @@ GtkLabel *wxButton::GTKGetLabel() const { GtkWidget* box = gtk_bin_get_child(GTK_BIN(child)); GtkLabel* label = NULL; - GList* list = gtk_container_get_children(GTK_CONTAINER(box)); + wxGtkList list(gtk_container_get_children(GTK_CONTAINER(box))); for (GList* item = list; item; item = item->next) { - GtkBoxChild* boxChild = static_cast(item->data); - if ( GTK_IS_LABEL(boxChild->widget) ) - label = GTK_LABEL(boxChild->widget); + if (GTK_IS_LABEL(item->data)) + label = GTK_LABEL(item->data); } - g_list_free(list); return label; } return GTK_LABEL(child); } +#endif // wxUSE_MARKUP void wxButton::DoApplyWidgetStyle(GtkRcStyle *style) { @@ -281,13 +280,11 @@ void wxButton::DoApplyWidgetStyle(GtkRcStyle *style) GtkWidget* box = gtk_bin_get_child(GTK_BIN(child)); if ( GTK_IS_BOX(box) ) { - GList* list = gtk_container_get_children(GTK_CONTAINER(box)); + wxGtkList list(gtk_container_get_children(GTK_CONTAINER(box))); for (GList* item = list; item; item = item->next) { - GtkBoxChild* boxChild = static_cast(item->data); - gtk_widget_modify_style(boxChild->widget, style); + gtk_widget_modify_style(GTK_WIDGET(item->data), style); } - g_list_free(list); } } } @@ -298,7 +295,7 @@ wxSize wxButton::DoGetBestSize() const // extra border around it, but we don't want to take it into account in // our size calculations (otherwise the result is visually ugly), so // always return the size of non default button from here - const bool isDefault = gtk_widget_has_default(m_widget); + const bool isDefault = gtk_widget_has_default(m_widget) != 0; if ( isDefault ) { // temporarily unset default flag