X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/85284ca4b226d9a1ab6bed26c5eaa480543649d5..b5a9b87e1620e52f1f13d2619b4677f2b365c93f:/src/osx/button_osx.cpp diff --git a/src/osx/button_osx.cpp b/src/osx/button_osx.cpp index a7c7cf869c..52208f4ed2 100644 --- a/src/osx/button_osx.cpp +++ b/src/osx/button_osx.cpp @@ -34,6 +34,18 @@ bool wxButton::Create(wxWindow *parent, const wxValidator& validator, const wxString& name) { + // FIXME: this hack is needed because we're called from + // wxBitmapButton::Create() with this style and we currently use a + // different wxWidgetImpl method (CreateBitmapButton() rather than + // CreateButton()) for creating bitmap buttons, but we really ought + // to unify the creation of buttons of all kinds and then remove + // this check + if ( style & wxBU_NOTEXT ) + { + return wxControl::Create(parent, id, pos, size, style, + validator, name); + } + wxString label(lbl); if (label.empty() && wxIsStockID(id) && !(id == wxID_HELP)) label = wxGetStockLabel(id); @@ -67,6 +79,28 @@ void wxButton::SetLabel(const wxString& label) wxButtonBase::SetLabel(label); } +// there is no support for button bitmaps in wxOSX/Carbon so there is no need +// for these methods there +#if wxOSX_USE_COCOA + +wxBitmap wxButton::DoGetBitmap(State which) const +{ + return which == State_Normal ? m_peer->GetBitmap() : wxBitmap(); +} + +void wxButton::DoSetBitmap(const wxBitmap& bitmap, State which) +{ + if ( which == State_Normal ) + m_peer->SetBitmap(bitmap); +} + +void wxButton::DoSetBitmapPosition(wxDirection dir) +{ + m_peer->SetBitmapPosition(dir); +} + +#endif // wxOSX_USE_COCOA + wxWindow *wxButton::SetDefault() { wxWindow *btnOldDefault = wxButtonBase::SetDefault();