X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/d8207702d1cf580a7200114abd52f186b4b9a4f3..0afeb753e0a6a3fdba290bf3612bb2f012d44d95:/src/osx/cocoa/spinbutt.mm diff --git a/src/osx/cocoa/spinbutt.mm b/src/osx/cocoa/spinbutt.mm index 6511abb5f4..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,7 +43,7 @@ public : { m_formerValue = 0; } - + ~wxSpinButtonCocoaImpl() { } @@ -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 ) { @@ -71,19 +71,19 @@ void wxSpinButtonCocoaImpl::controlAction( WXWidget WXUNUSED(slf), void *WXUNUSE 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,15 +93,15 @@ void wxSpinButtonCocoaImpl::controlAction( WXWidget WXUNUSED(slf), void *WXUNUSE } } -wxWidgetImplType* wxWidgetImpl::CreateSpinButton( wxWindowMac* wxpeer, - wxWindowMac* WXUNUSED(parent), - wxWindowID WXUNUSED(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 style, long WXUNUSED(extraStyle)) { NSRect r = wxOSXGetFrameForControl( wxpeer, pos , size ) ; @@ -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;