]> git.saurik.com Git - wxWidgets.git/blobdiff - src/gtk/tglbtn.cpp
remove run-time check for now-required GTK 2.4
[wxWidgets.git] / src / gtk / tglbtn.cpp
index 4886ce1fcc55184a99a33e6f6e1194c36346855c..47a55a53af087feb9d9581cb1398cbdd83da6056 100644 (file)
@@ -166,6 +166,14 @@ void wxToggleButton::SetLabel(const wxString& label)
 
     wxAnyButton::SetLabel(label);
 
+    if ( HasFlag(wxBU_NOTEXT) )
+    {
+        // Don't try to update the label for a button not showing it, this is
+        // unnecessary and can also actually replace the image we show with the
+        // label entirely breaking the button code, see #13693.
+        return;
+    }
+
     const wxString labelGTK = GTKConvertMnemonics(label);
 
     gtk_button_set_label(GTK_BUTTON(m_widget), wxGTK_CONV(labelGTK));
@@ -184,10 +192,13 @@ bool wxToggleButton::DoSetLabelMarkup(const wxString& markup)
 
     wxControl::SetLabel(stripped);
 
-    GtkLabel * const label = GTKGetLabel();
-    wxCHECK_MSG( label, false, "no label in this toggle button?" );
+    if ( !HasFlag(wxBU_NOTEXT) )
+    {
+        GtkLabel * const label = GTKGetLabel();
+        wxCHECK_MSG( label, false, "no label in this toggle button?" );
 
-    GTKSetLabelWithMarkupForLabel(label, markup);
+        GTKSetLabelWithMarkupForLabel(label, markup);
+    }
 
     return true;
 }