]> git.saurik.com Git - wxWidgets.git/blobdiff - src/generic/spinctlg.cpp
Use CFSocket instead of CFFileDescriptor in wxCFEventLoopSource.
[wxWidgets.git] / src / generic / spinctlg.cpp
index 0e13113779374e97470eec5d7ee4bc2c36bf9074..ffeacd88b054e2c05c65286d0139f5231ffb0187 100644 (file)
@@ -533,9 +533,11 @@ bool wxSpinCtrlGenericBase::DoSetValue(double val)
 {
     wxCHECK_MSG( m_textCtrl, false, wxT("invalid call to wxSpinCtrl::SetValue") );
 
 {
     wxCHECK_MSG( m_textCtrl, false, wxT("invalid call to wxSpinCtrl::SetValue") );
 
-    if (!InRange(val))
-        return false;
-
+    if ( val < m_min )
+        val = m_min;
+    if ( val > m_max )
+        val = m_max;
+    
     if ( m_snap_to_ticks && (m_increment != 0) )
     {
         double snap_value = val / m_increment;
     if ( m_snap_to_ticks && (m_increment != 0) )
     {
         double snap_value = val / m_increment;
@@ -577,7 +579,11 @@ double wxSpinCtrlGenericBase::AdjustToFitInRange(double value) const
 void wxSpinCtrlGenericBase::DoSetRange(double min, double max)
 {
     m_min = min;
 void wxSpinCtrlGenericBase::DoSetRange(double min, double max)
 {
     m_min = min;
+    if ( m_value < m_min )
+        DoSetValue(m_min);
     m_max = max;
     m_max = max;
+    if ( m_value > m_max )
+        DoSetValue(m_max);
 }
 
 void wxSpinCtrlGenericBase::DoSetIncrement(double inc)
 }
 
 void wxSpinCtrlGenericBase::DoSetIncrement(double inc)
@@ -630,7 +636,7 @@ bool wxSpinCtrl::SetBase(int base)
 
 void wxSpinCtrl::DoSendEvent()
 {
 
 void wxSpinCtrl::DoSendEvent()
 {
-    wxSpinEvent event( wxEVT_COMMAND_SPINCTRL_UPDATED, GetId());
+    wxSpinEvent event( wxEVT_SPINCTRL, GetId());
     event.SetEventObject( this );
     event.SetPosition((int)(m_value + 0.5)); // FIXME should be SetValue
     event.SetString(m_textCtrl->GetValue());
     event.SetEventObject( this );
     event.SetPosition((int)(m_value + 0.5)); // FIXME should be SetValue
     event.SetString(m_textCtrl->GetValue());
@@ -675,7 +681,7 @@ IMPLEMENT_DYNAMIC_CLASS(wxSpinCtrlDouble, wxSpinCtrlGenericBase)
 
 void wxSpinCtrlDouble::DoSendEvent()
 {
 
 void wxSpinCtrlDouble::DoSendEvent()
 {
-    wxSpinDoubleEvent event( wxEVT_COMMAND_SPINCTRLDOUBLE_UPDATED, GetId());
+    wxSpinDoubleEvent event( wxEVT_SPINCTRLDOUBLE, GetId());
     event.SetEventObject( this );
     event.SetValue(m_value);
     event.SetString(m_textCtrl->GetValue());
     event.SetEventObject( this );
     event.SetValue(m_value);
     event.SetString(m_textCtrl->GetValue());