// headers
// ----------------------------------------------------------------------------
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
#pragma implementation "spinbutt.h"
#pragma implementation "univspinbutt.h"
#endif
if ( value > m_max )
{
if ( GetWindowStyleFlag() & wxSP_WRAP )
- value = m_min + (value - m_max) % (m_max - m_min);
+ value = m_min + (value - m_max - 1) % (m_max - m_min + 1);
else
value = m_max;
}
else if ( value < m_min )
{
if ( GetWindowStyleFlag() & wxSP_WRAP )
- value = m_max - (m_min - value) % (m_max - m_min);
+ value = m_max - (m_min - value - 1) % (m_max - m_min + 1);
else
value = m_min;
}
{
}
-bool wxStdSpinButtonInputHandler::HandleKey(wxControl *control,
+bool wxStdSpinButtonInputHandler::HandleKey(wxInputConsumer *consumer,
const wxKeyEvent& event,
bool pressed)
{
if ( !!action )
{
- control->PerformAction(action);
+ consumer->PerformAction(action);
return TRUE;
}
}
- return wxStdInputHandler::HandleKey(control, event, pressed);
+ return wxStdInputHandler::HandleKey(consumer, event, pressed);
}
-bool wxStdSpinButtonInputHandler::HandleMouse(wxControl *control,
+bool wxStdSpinButtonInputHandler::HandleMouse(wxInputConsumer *consumer,
const wxMouseEvent& event)
{
- wxSpinButton *spinbtn = wxStaticCast(control, wxSpinButton);
+ wxSpinButton *spinbtn = wxStaticCast(consumer->GetInputWindow(), wxSpinButton);
if ( spinbtn->GetArrows().HandleMouse(event) )
{
return FALSE;
}
- return wxStdInputHandler::HandleMouse(control, event);
+ return wxStdInputHandler::HandleMouse(consumer, event);
}
-bool wxStdSpinButtonInputHandler::HandleMouseMove(wxControl *control,
+bool wxStdSpinButtonInputHandler::HandleMouseMove(wxInputConsumer *consumer,
const wxMouseEvent& event)
{
- wxSpinButton *spinbtn = wxStaticCast(control, wxSpinButton);
+ wxSpinButton *spinbtn = wxStaticCast(consumer->GetInputWindow(), wxSpinButton);
if ( spinbtn->GetArrows().HandleMouseMove(event) )
{
return FALSE;
}
- return wxStdInputHandler::HandleMouseMove(control, event);
+ return wxStdInputHandler::HandleMouseMove(consumer, event);
}