From bd1a4a99fc1bec4ac5d0b14379dc5345d6ce3253 Mon Sep 17 00:00:00 2001 From: Julian Smart Date: Tue, 31 Jan 2006 16:01:19 +0000 Subject: [PATCH] wxControl::SetLabel no longer strips out codes so do it here git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@37237 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- src/gtk/stattext.cpp | 15 +++++++++------ src/gtk1/stattext.cpp | 11 +++++++---- 2 files changed, 16 insertions(+), 10 deletions(-) diff --git a/src/gtk/stattext.cpp b/src/gtk/stattext.cpp index 50bf5f71c9..0d7e3dd1d8 100644 --- a/src/gtk/stattext.cpp +++ b/src/gtk/stattext.cpp @@ -61,12 +61,14 @@ bool wxStaticText::Create(wxWindow *parent, return FALSE; } - // notice that we call the base class version which will just remove the - // '&' characters from the string, but not set the label's text to it - // because the label is not yet created and because SetLabel() has a side + // notice that we call the base class version which will + // not set the label's text to it because the label is no + // yet created and because SetLabel() has a side // effect of changing the control size which might not be desirable + // wxContro::SetLabel no longer strips menu codes, so do it here. + wxString label1(wxStripMenuCodes(label)); wxControl::SetLabel(label); - m_widget = gtk_label_new( wxGTK_CONV( m_label ) ); + m_widget = gtk_label_new( wxGTK_CONV( label1 ) ); GtkJustification justify; if ( style & wxALIGN_CENTER ) @@ -113,6 +115,7 @@ wxString wxStaticText::GetLabel() const void wxStaticText::SetLabel( const wxString &label ) { wxControl::SetLabel(label); + wxString label1(wxStripMenuCodes(label)); // Build the colorized version of the label (markup only allowed // under GTK2): @@ -124,11 +127,11 @@ void wxStaticText::SetLabel( const wxString &label ) colorlabel.Printf(_T("%s"), m_foregroundColour.Red(), m_foregroundColour.Green(), m_foregroundColour.Blue(), - wxEscapeStringForPangoMarkup(label).c_str()); + wxEscapeStringForPangoMarkup(label1).c_str()); gtk_label_set_markup( GTK_LABEL(m_widget), wxGTK_CONV( colorlabel ) ); } else - gtk_label_set( GTK_LABEL(m_widget), wxGTK_CONV( m_label ) ); + gtk_label_set( GTK_LABEL(m_widget), wxGTK_CONV( label1 ) ); // adjust the label size to the new label unless disabled if (!HasFlag(wxST_NO_AUTORESIZE)) diff --git a/src/gtk1/stattext.cpp b/src/gtk1/stattext.cpp index b8d9145e50..36d2e64fd5 100644 --- a/src/gtk1/stattext.cpp +++ b/src/gtk1/stattext.cpp @@ -61,12 +61,13 @@ bool wxStaticText::Create(wxWindow *parent, return FALSE; } - // notice that we call the base class version which will just remove the - // '&' characters from the string, but not set the label's text to it + // the base class version which + // will not set the label's text to it // because the label is not yet created and because SetLabel() has a side // effect of changing the control size which might not be desirable + wxString label1(wxStripMenuCodes(label)); wxControl::SetLabel(label); - m_widget = gtk_label_new( wxGTK_CONV( m_label ) ); + m_widget = gtk_label_new( wxGTK_CONV( label1 ) ); GtkJustification justify; if ( style & wxALIGN_CENTER ) @@ -101,7 +102,9 @@ void wxStaticText::SetLabel( const wxString &label ) { wxControl::SetLabel(label); - gtk_label_set( GTK_LABEL(m_widget), wxGTK_CONV( m_label ) ); + wxString label1(wxStripMenuCodes(label)); + + gtk_label_set( GTK_LABEL(m_widget), wxGTK_CONV( label1 ) ); // adjust the label size to the new label unless disabled if (!HasFlag(wxST_NO_AUTORESIZE)) -- 2.45.2