]> git.saurik.com Git - wxWidgets.git/blobdiff - src/univ/spinbutt.cpp
fixing modal dialog quit after nested message box problem
[wxWidgets.git] / src / univ / spinbutt.cpp
index 08edc83639520e7a41bcba9bee07b103669f1598..e1d885795b7660168b04fd83f1f860759757cc7c 100644 (file)
 // headers
 // ----------------------------------------------------------------------------
 
-#ifdef __GNUG__
-    #pragma implementation "spinbutt.h"
-    #pragma implementation "univspinbutt.h"
-#endif
-
 #include "wx/wxprec.h"
 
 #ifdef __BORLANDC__
@@ -101,13 +96,13 @@ bool wxSpinButton::Create(wxWindow *parent,
 
     if ( !wxSpinButtonBase::Create(parent, id, pos, size, style,
                                    wxDefaultValidator, name) )
-        return FALSE;
+        return false;
 
-    SetBestSize(size);
+    SetInitialSize(size);
 
     CreateInputHandler(wxINP_HANDLER_SPINBTN);
 
-    return TRUE;
+    return true;
 }
 
 // ----------------------------------------------------------------------------
@@ -167,7 +162,7 @@ bool wxSpinButton::ChangeValue(int inc)
     {
         // nothing changed - most likely because we are already at min/max
         // value
-        return FALSE;
+        return false;
     }
 
     wxSpinEvent event(inc > 0 ? wxEVT_SCROLL_LINEUP : wxEVT_SCROLL_LINEDOWN,
@@ -178,7 +173,7 @@ bool wxSpinButton::ChangeValue(int inc)
     if ( GetEventHandler()->ProcessEvent(event) && !event.IsAllowed() )
     {
         // programm has vetoed the event
-        return FALSE;
+        return false;
     }
 
     m_value = valueNew;
@@ -187,7 +182,7 @@ bool wxSpinButton::ChangeValue(int inc)
     event.SetEventType(wxEVT_SCROLL_THUMBTRACK);
     (void)GetEventHandler()->ProcessEvent(event);
 
-    return TRUE;
+    return true;
 }
 
 // ----------------------------------------------------------------------------
@@ -329,14 +324,14 @@ void wxSpinButton::CalcArrowRects(wxRect *rect1, wxRect *rect2) const
     }
 }
 
-wxScrollArrows::Arrow wxSpinButton::HitTest(const wxPoint& pt) const
+wxScrollArrows::Arrow wxSpinButton::HitTestArrow(const wxPoint& pt) const
 {
     wxRect rectArrow1, rectArrow2;
     CalcArrowRects(&rectArrow1, &rectArrow2);
 
-    if ( rectArrow1.Inside(pt) )
+    if ( rectArrow1.Contains(pt) )
         return wxScrollArrows::Arrow_First;
-    else if ( rectArrow2.Inside(pt) )
+    else if ( rectArrow2.Contains(pt) )
         return wxScrollArrows::Arrow_Second;
     else
         return wxScrollArrows::Arrow_None;
@@ -357,7 +352,15 @@ bool wxSpinButton::PerformAction(const wxControlAction& action,
     else
         return wxControl::PerformAction(action, numArg, strArg);
 
-    return TRUE;
+    return true;
+}
+
+/* static */
+wxInputHandler *wxSpinButton::GetStdInputHandler(wxInputHandler *handlerDef)
+{
+    static wxStdSpinButtonInputHandler s_handler(handlerDef);
+
+    return &s_handler;
 }
 
 // ----------------------------------------------------------------------------
@@ -390,11 +393,11 @@ bool wxStdSpinButtonInputHandler::HandleKey(wxInputConsumer *consumer,
                 break;
         }
 
-        if ( !!action )
+        if ( !action.IsEmpty() )
         {
             consumer->PerformAction(action);
 
-            return TRUE;
+            return true;
         }
     }
 
@@ -409,7 +412,7 @@ bool wxStdSpinButtonInputHandler::HandleMouse(wxInputConsumer *consumer,
     if ( spinbtn->GetArrows().HandleMouse(event) )
     {
         // don't refresh, everything is already done
-        return FALSE;
+        return false;
     }
 
     return wxStdInputHandler::HandleMouse(consumer, event);
@@ -423,7 +426,7 @@ bool wxStdSpinButtonInputHandler::HandleMouseMove(wxInputConsumer *consumer,
     if ( spinbtn->GetArrows().HandleMouseMove(event) )
     {
         // processed by the arrows
-        return FALSE;
+        return false;
     }
 
     return wxStdInputHandler::HandleMouseMove(consumer, event);