X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/4dd9fdf82749bb5f9e2bf9c2ad1bbd59e0eeb00e..64ea838d8f4d1853b7d850db93ee565e901d099a:/src/osx/cocoa/spinbutt.mm diff --git a/src/osx/cocoa/spinbutt.mm b/src/osx/cocoa/spinbutt.mm index 2104c0e7c2..e7c62980c1 100644 --- a/src/osx/cocoa/spinbutt.mm +++ b/src/osx/cocoa/spinbutt.mm @@ -1,10 +1,10 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: spinbutt.cpp +// Name: src/osx/cocoa/spinbutt.mm // Purpose: wxSpinButton // Author: Stefan Csomor // Modified by: // Created: 1998-01-01 -// RCS-ID: $Id: spinbutt.cpp 54129 2008-06-11 19:30:52Z SC $ +// RCS-ID: $Id$ // Copyright: (c) Stefan Csomor // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// @@ -26,7 +26,7 @@ + (void)initialize { static BOOL initialized = NO; - if (!initialized) + if (!initialized) { initialized = YES; wxOSXCocoaClassAddWXMethods(self); @@ -43,12 +43,12 @@ public : { m_formerValue = 0; } - + ~wxSpinButtonCocoaImpl() { } - virtual void clickedAction(WXWidget slf, void* _cmd, void *sender); + virtual void controlAction(WXWidget slf, void* _cmd, void *sender); virtual void mouseEvent(WX_NSEvent event, WXWidget slf, void* _cmd); private: int m_formerValue; @@ -56,7 +56,7 @@ private: void wxSpinButtonCocoaImpl::mouseEvent(WX_NSEvent event, WXWidget slf, void *_cmd) { - + // send a release event in case we've been tracking the thumb if ( strcmp( sel_getName((SEL) _cmd) , "mouseDown:") == 0 ) { @@ -66,24 +66,24 @@ void wxSpinButtonCocoaImpl::mouseEvent(WX_NSEvent event, WXWidget slf, void *_cm wxWidgetCocoaImpl::mouseEvent(event, slf, _cmd); } -void wxSpinButtonCocoaImpl::clickedAction( WXWidget slf, void *_cmd, void *sender) +void wxSpinButtonCocoaImpl::controlAction( WXWidget WXUNUSED(slf), void *WXUNUSED(_cmd), void *WXUNUSED(sender)) { wxWindow* wxpeer = (wxWindow*) GetWXPeer(); if ( wxpeer ) { - // because wx expects to be able to veto + // because wx expects to be able to veto // a change we must revert the value change // and expose it int currentValue = [(NSStepper*)m_osxView intValue]; [(NSStepper*)m_osxView setIntValue:m_formerValue]; int inc = currentValue-m_formerValue; - + // adjust for wrap arounds if ( inc > 1 ) inc = -1; else if (inc < -1 ) inc = 1; - + if ( inc == 1 ) wxpeer->TriggerScrollEvent(wxEVT_SCROLL_LINEUP); else if ( inc == -1 ) @@ -93,16 +93,16 @@ void wxSpinButtonCocoaImpl::clickedAction( WXWidget slf, void *_cmd, void *sende } } -wxWidgetImplType* wxWidgetImpl::CreateSpinButton( wxWindowMac* wxpeer, - wxWindowMac* parent, - wxWindowID id, +wxWidgetImplType* wxWidgetImpl::CreateSpinButton( wxWindowMac* wxpeer, + wxWindowMac* WXUNUSED(parent), + wxWindowID WXUNUSED(id), wxInt32 value, wxInt32 minimum, wxInt32 maximum, - const wxPoint& pos, + const wxPoint& pos, const wxSize& size, - long style, - long extraStyle) + long style, + long WXUNUSED(extraStyle)) { NSRect r = wxOSXGetFrameForControl( wxpeer, pos , size ) ; wxNSStepper* v = [[wxNSStepper alloc] initWithFrame:r]; @@ -110,9 +110,14 @@ wxWidgetImplType* wxWidgetImpl::CreateSpinButton( wxWindowMac* wxpeer, [v setMinValue: minimum]; [v setMaxValue: maximum]; [v setIntValue: value]; - + + if ( style & wxSP_HORIZONTAL ) + [v rotateByAngle:90.0]; + + BOOL wrap = NO; if ( style & wxSP_WRAP ) - [v setValueWraps:YES]; + wrap = YES; + [v setValueWraps:wrap]; wxWidgetCocoaImpl* c = new wxSpinButtonCocoaImpl( wxpeer, v ); return c;