X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/a9a4f2295344414e2ee4e3ec27fa5292918dff27..ab67e8874db324fab5223cc8d5dff8a8de3e2b77:/src/osx/cocoa/tglbtn.mm?ds=sidebyside diff --git a/src/osx/cocoa/tglbtn.mm b/src/osx/cocoa/tglbtn.mm index af184af177..ab7aab16f7 100644 --- a/src/osx/cocoa/tglbtn.mm +++ b/src/osx/cocoa/tglbtn.mm @@ -27,12 +27,16 @@ // from button.mm -extern "C" void SetBezelStyleFromBorderFlags(NSButton *v, long style); +extern "C" void SetBezelStyleFromBorderFlags(NSButton *v, + long style, + wxWindowID winid = wxID_ANY, + const wxString& label = wxString(), + const wxBitmap& bitmap = wxBitmap()); wxWidgetImplType* wxWidgetImpl::CreateToggleButton( wxWindowMac* wxpeer, wxWindowMac* WXUNUSED(parent), - wxWindowID WXUNUSED(id), - const wxString& WXUNUSED(label), + wxWindowID winid, + const wxString& label, const wxPoint& pos, const wxSize& size, long style, @@ -41,16 +45,16 @@ wxWidgetImplType* wxWidgetImpl::CreateToggleButton( wxWindowMac* wxpeer, NSRect r = wxOSXGetFrameForControl( wxpeer, pos , size ) ; wxNSButton* v = [[wxNSButton alloc] initWithFrame:r]; - SetBezelStyleFromBorderFlags(v, style); + SetBezelStyleFromBorderFlags(v, style, winid, label); [v setButtonType:NSOnOffButton]; - wxWidgetCocoaImpl* c = new wxWidgetCocoaImpl( wxpeer, v ); + wxWidgetCocoaImpl* c = new wxButtonCocoaImpl( wxpeer, v ); return c; } wxWidgetImplType* wxWidgetImpl::CreateBitmapToggleButton( wxWindowMac* wxpeer, wxWindowMac* WXUNUSED(parent), - wxWindowID WXUNUSED(id), + wxWindowID winid, const wxBitmap& label, const wxPoint& pos, const wxSize& size, @@ -60,13 +64,13 @@ wxWidgetImplType* wxWidgetImpl::CreateBitmapToggleButton( wxWindowMac* wxpeer, NSRect r = wxOSXGetFrameForControl( wxpeer, pos , size ) ; wxNSButton* v = [[wxNSButton alloc] initWithFrame:r]; - if (label.Ok()) + SetBezelStyleFromBorderFlags(v, style, winid, wxString(), label); + + if (label.IsOk()) [v setImage:label.GetNSImage() ]; - SetBezelStyleFromBorderFlags(v, style); - [v setButtonType:NSOnOffButton]; - wxWidgetCocoaImpl* c = new wxWidgetCocoaImpl( wxpeer, v ); + wxWidgetCocoaImpl* c = new wxButtonCocoaImpl( wxpeer, v ); return c; }