- gtk_label_set_markup( GTK_LABEL(m_widget), wxGTK_CONV( colorlabel ) );
-#else
- gtk_label_set( GTK_LABEL(m_widget), wxGTK_CONV( m_label ) );
-#endif
-
-#else
-
- wxControl::SetLabel(label);
- gtk_label_set( GTK_LABEL(m_widget), wxGTK_CONV( m_label ) );
+ // Build the colorized version of the label (markup only allowed
+ // under GTK2):
+ if (m_foregroundColour.Ok())
+ {
+ // If the color has been set, create a markup string to pass to
+ // the label setter
+ wxString colorlabel;
+ colorlabel.Printf(_T("<span foreground=\"#%02x%02x%02x\">%s</span>"),
+ m_foregroundColour.Red(), m_foregroundColour.Green(),
+ m_foregroundColour.Blue(),
+ wxEscapeStringForPangoMarkup(label).c_str());
+ gtk_label_set_markup( GTK_LABEL(m_widget), wxGTK_CONV( colorlabel ) );
+ }
+ else