X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/71e030352d74e4e6aed28cfcb0ea6edf3d17af6e..96873b794c62afc3fd6f2db5859bc20675fd2c51:/src/generic/spinctlg.cpp diff --git a/src/generic/spinctlg.cpp b/src/generic/spinctlg.cpp index ebe1b3760b..ff767d2848 100644 --- a/src/generic/spinctlg.cpp +++ b/src/generic/spinctlg.cpp @@ -35,6 +35,8 @@ #include "wx/textctrl.h" #endif //WX_PRECOMP +#if wxUSE_SPINCTRL + #include "wx/spinbutt.h" #include "wx/spinctrl.h" @@ -105,11 +107,20 @@ public: } protected: - void OnSpinButton(wxSpinEvent& event) + void OnSpinButton(wxSpinEvent& eventSpin) { - m_spin->SetTextValue(event.GetPosition()); +#ifdef __WXMAC__ + m_spin->SetTextValue(eventSpin.GetPosition()); - event.Skip(); + wxCommandEvent event(wxEVT_COMMAND_SPINCTRL_UPDATED, m_spin->GetId()); + event.SetEventObject(m_spin); + event.SetInt(eventSpin.GetPosition()); + + m_spin->GetEventHandler()->ProcessEvent(event); +#else + m_spin->SetTextValue(eventSpin.GetPosition()); + eventSpin.Skip(); +#endif } private: @@ -226,7 +237,11 @@ void wxSpinCtrl::DoMoveWindow(int x, int y, int width, int height) wxCoord wText = width - sizeBtn.x; m_text->SetSize(x, y, wText, height); +#ifdef __WXMAC__ + m_btn->SetSize(x + wText + MARGIN, y, -1, -1); +#else m_btn->SetSize(x + wText + MARGIN, y, -1, height); +#endif } // ---------------------------------------------------------------------------- @@ -348,4 +363,5 @@ void wxSpinCtrl::SetRange(int min, int max) m_btn->SetRange(min, max); } +#endif // wxUSE_SPINCTRL #endif // !wxPort-with-native-spinctrl