+void wxButton::SetLabel(const wxString& label)
+{
+ if ( IsHelpButtonWithStandardLabel(GetId(), label) )
+ {
+ // ignore the standard label for the help buttons, it's not used
+ return;
+ }
+
+ if ( HasFlag(wxBU_NOTEXT) )
+ {
+ // just store the label internally but don't really use it for the
+ // button
+ m_labelOrig =
+ m_label = label;
+ return;
+ }
+
+ wxButtonBase::SetLabel(label);
+}
+
+wxBitmap wxButton::DoGetBitmap(State which) const
+{
+ return m_bitmaps[which];
+}
+
+void wxButton::DoSetBitmap(const wxBitmap& bitmap, State which)
+{
+ m_bitmaps[which] = bitmap;
+
+ if ( which == State_Normal )
+ GetPeer()->SetBitmap(bitmap);
+ else if ( which == State_Pressed )
+ {
+ wxButtonImpl* bi = dynamic_cast<wxButtonImpl*> (GetPeer());
+ if ( bi )
+ bi->SetPressedBitmap(bitmap);
+ }
+ InvalidateBestSize();
+}
+
+void wxButton::DoSetBitmapPosition(wxDirection dir)
+{
+ GetPeer()->SetBitmapPosition(dir);
+ InvalidateBestSize();
+}
+
+#if wxUSE_MARKUP && wxOSX_USE_COCOA
+
+bool wxButton::DoSetLabelMarkup(const wxString& markup)
+{
+ if ( !wxButtonBase::DoSetLabelMarkup(markup) )
+ return false;
+
+ GetPeer()->SetLabelMarkup(markup);
+
+ return true;
+}
+
+#endif // wxUSE_MARKUP && wxOSX_USE_COCOA
+