X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/079cc3b670fb1f68f56c71078afd9af765b43512..cb41a69b152026d6c586d21148e34913291cd733:/src/cocoa/checkbox.mm diff --git a/src/cocoa/checkbox.mm b/src/cocoa/checkbox.mm index 659025be55..603d7362d1 100644 --- a/src/cocoa/checkbox.mm +++ b/src/cocoa/checkbox.mm @@ -1,19 +1,22 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: cocoa/checkbox.mm +// Name: src/cocoa/checkbox.mm // Purpose: wxCheckBox // Author: David Elliott // Modified by: // Created: 2003/03/16 -// RCS-ID: $Id: // Copyright: (c) 2003 David Elliott -// Licence: wxWindows license +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #include "wx/wxprec.h" + +#if wxUSE_CHECKBOX + +#include "wx/checkbox.h" + #ifndef WX_PRECOMP #include "wx/log.h" #include "wx/app.h" - #include "wx/checkbox.h" #endif //WX_PRECOMP #include "wx/cocoa/autorelease.h" @@ -22,7 +25,6 @@ #import #import -IMPLEMENT_DYNAMIC_CLASS(wxCheckBox, wxControl) BEGIN_EVENT_TABLE(wxCheckBox, wxCheckBoxBase) END_EVENT_TABLE() WX_IMPLEMENT_COCOA_OWNER(wxCheckBox,NSButton,NSControl,NSView) @@ -43,7 +45,7 @@ bool wxCheckBox::Create(wxWindow *parent, wxWindowID winid, [m_cocoaNSView release]; [GetNSButton() setButtonType: NSSwitchButton]; [GetNSButton() setAllowsMixedState: Is3State()]; - [GetNSButton() setTitle:wxNSStringWithWxString(wxStripMenuCodes(label))]; + CocoaSetLabelForObject(label, GetNSButton()); [GetNSControl() sizeToFit]; if(m_parent) @@ -113,7 +115,7 @@ wxCheckBoxState wxCheckBox::DoGet3StateValue() const void wxCheckBox::Cocoa_wxNSButtonAction(void) { - wxLogDebug(wxT("Checkbox")); + wxLogTrace(wxTRACE_COCOA,wxT("Checkbox")); // What we really want to do is override [NSCell -nextState] to return // NSOnState in lieu of NSMixedState but this works (aside from the // very slightly noticeable drawing of - and then a check) -DE @@ -127,9 +129,23 @@ void wxCheckBox::Cocoa_wxNSButtonAction(void) // skip mixed, go right back to on [GetNSButton() setState: NSOnState]; } - wxCommandEvent event(wxEVT_COMMAND_CHECKBOX_CLICKED, GetId()); + wxCommandEvent event(wxEVT_CHECKBOX, GetId()); InitCommandEvent(event); // event.SetEventObject(this); event.SetInt(Get3StateValue()); Command(event); } +void wxCheckBox::SetLabel(const wxString& s) +{ + wxAutoNSAutoreleasePool pool; + CocoaSetLabelForObject(s, GetNSButton()); +} + +wxString wxCheckBox::GetLabel() const +{ + wxAutoNSAutoreleasePool pool; + return wxStringWithNSString([GetNSButton() title]); + +} + +#endif // wxUSE_CHECKBOX