// Author: Stefan Csomor
// Modified by:
// Created: 08.02.01
-// RCS-ID: $Id: tglbtn.cpp 54129 2008-06-11 19:30:52Z SC $
+// RCS-ID: $Id$
// Copyright: (c) Stefan Csomor
-// License: wxWindows license
+// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
// ============================================================================
#include "wx/tglbtn.h"
#include "wx/osx/private.h"
-wxWidgetImplType* wxWidgetImpl::CreateToggleButton( wxWindowMac* wxpeer,
- wxWindowMac* parent,
- wxWindowID id,
- const wxString& label,
- const wxPoint& pos,
+// from button.mm
+
+extern "C" void SetBezelStyleFromBorderFlags(NSButton *v, long style);
+
+wxWidgetImplType* wxWidgetImpl::CreateToggleButton( wxWindowMac* wxpeer,
+ wxWindowMac* WXUNUSED(parent),
+ wxWindowID WXUNUSED(id),
+ const wxString& WXUNUSED(label),
+ const wxPoint& pos,
const wxSize& size,
- long style,
- long extraStyle)
+ long style,
+ long WXUNUSED(extraStyle))
{
- NSView* sv = (wxpeer->GetParent()->GetHandle() );
-
- NSRect r = wxToNSRect( sv, wxRect( pos, size) );
- // Rect bounds = wxMacGetBoundsForControl( wxpeer, pos , size ) ;
+ NSRect r = wxOSXGetFrameForControl( wxpeer, pos , size ) ;
wxNSButton* v = [[wxNSButton alloc] initWithFrame:r];
-
- [v setBezelStyle:NSRoundedBezelStyle];
+
+ SetBezelStyleFromBorderFlags(v, style);
+
[v setButtonType:NSOnOffButton];
- [sv addSubview:v];
wxWidgetCocoaImpl* c = new wxWidgetCocoaImpl( wxpeer, v );
- [v setImplementation:c];
return c;
}
-wxWidgetImplType* wxWidgetImpl::CreateBitmapToggleButton( wxWindowMac* wxpeer,
- wxWindowMac* parent,
- wxWindowID id,
+wxWidgetImplType* wxWidgetImpl::CreateBitmapToggleButton( wxWindowMac* wxpeer,
+ wxWindowMac* WXUNUSED(parent),
+ wxWindowID WXUNUSED(id),
const wxBitmap& label,
- const wxPoint& pos,
+ const wxPoint& pos,
const wxSize& size,
- long style,
- long extraStyle)
-{
- NSView* sv = (wxpeer->GetParent()->GetHandle() );
-
- NSRect r = wxToNSRect( sv, wxRect( pos, size) );
- // Rect bounds = wxMacGetBoundsForControl( wxpeer, pos , size ) ;
+ long style,
+ long WXUNUSED(extraStyle))
+{
+ NSRect r = wxOSXGetFrameForControl( wxpeer, pos , size ) ;
wxNSButton* v = [[wxNSButton alloc] initWithFrame:r];
-
- [v setBezelStyle:NSRegularSquareBezelStyle];
+
+ if (label.IsOk())
+ [v setImage:label.GetNSImage() ];
+
+ SetBezelStyleFromBorderFlags(v, style);
+
[v setButtonType:NSOnOffButton];
- [sv addSubview:v];
wxWidgetCocoaImpl* c = new wxWidgetCocoaImpl( wxpeer, v );
- [v setImplementation:c];
return c;
}