]> git.saurik.com Git - wxWidgets.git/blobdiff - src/univ/scrthumb.cpp
use WX_DEFINE_ARRAY_INT for an array of ints (bug 1536482)
[wxWidgets.git] / src / univ / scrthumb.cpp
index 4d46b9c35b1a806a11fa83435638c90b053fbbf5..a6c0e02284242b2e89e1331428ddcc1a48d91407 100644 (file)
@@ -1,12 +1,12 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        univ/scrthumb.cpp
+// Name:        src/univ/scrthumb.cpp
 // Purpose:     wxScrollThumb and related classes
 // Author:      Vadim Zeitlin
 // Modified by:
 // Created:     13.02.01
 // RCS-ID:      $Id$
 // Copyright:   (c) 2001 SciTech Software, Inc. (www.scitechsoft.com)
-// Licence:     wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 // ============================================================================
 // headers
 // ----------------------------------------------------------------------------
 
-#ifdef __GNUG__
-    #pragma implementation "univscrthumb.h"
-#endif
-
 #include "wx/wxprec.h"
 
 #ifdef __BORLANDC__
@@ -31,6 +27,7 @@
     #include "wx/window.h"
 #endif // WX_PRECOMP
 
+#include "wx/renderer.h"
 #include "wx/univ/scrtimer.h"
 #include "wx/univ/scrthumb.h"
 
@@ -62,7 +59,9 @@ struct WXDLLEXPORT wxScrollThumbCaptureData
             m_window->ReleaseMouse();
         }
 
+#if wxUSE_TIMER
         delete m_timerScroll;
+#endif // wxUSE_TIMER
     }
 
     // the thumb part being held pressed
@@ -86,6 +85,8 @@ struct WXDLLEXPORT wxScrollThumbCaptureData
 // wxScrollTimer: the timer used when the arrow is kept pressed
 // ----------------------------------------------------------------------------
 
+#if wxUSE_TIMER
+
 class wxScrollThumbTimer : public wxScrollTimer
 {
 public:
@@ -123,6 +124,8 @@ protected:
     int m_inc;
 };
 
+#endif // wxUSE_TIMER
+
 // ============================================================================
 // implementation
 // ============================================================================
@@ -155,7 +158,7 @@ bool wxScrollThumb::HandleMouse(const wxMouseEvent& event) const
     if ( btn == -1 )
     {
         // no...
-        return FALSE;
+        return false;
     }
 
     // when the mouse is pressed on any scrollbar element, we capture it
@@ -165,7 +168,7 @@ bool wxScrollThumb::HandleMouse(const wxMouseEvent& event) const
         if ( HasCapture() )
         {
             // mouse already captured, nothing to do
-            return FALSE;
+            return false;
         }
 
         // determine which part of the window the user clicked in
@@ -174,7 +177,7 @@ bool wxScrollThumb::HandleMouse(const wxMouseEvent& event) const
         if ( shaftPart == Shaft_None )
         {
             // mouse pressed over something else
-            return FALSE;
+            return false;
         }
 
         // capture the mouse
@@ -195,6 +198,7 @@ bool wxScrollThumb::HandleMouse(const wxMouseEvent& event) const
             // generate an additional event if we start dragging the thumb
             m_control->OnThumbDragStart(GetThumbPos(event));
         }
+#if wxUSE_TIMER
         else // not the thumb
         {
             // start timer for auto scrolling when the user presses the mouse
@@ -202,6 +206,7 @@ bool wxScrollThumb::HandleMouse(const wxMouseEvent& event) const
             m_captureData->m_timerScroll =
                 new wxScrollThumbTimer(m_control, shaftPart);
         }
+#endif // wxUSE_TIMER
     }
     // release mouse if the *same* button went up
     else if ( HasCapture() && (btn == m_captureData->m_btnCapture) )
@@ -218,15 +223,15 @@ bool wxScrollThumb::HandleMouse(const wxMouseEvent& event) const
         delete m_captureData;
         wxConstCast(this, wxScrollThumb)->m_captureData = NULL;
 
-        m_control->SetShaftPartState(shaftPart, wxCONTROL_PRESSED, FALSE);
+        m_control->SetShaftPartState(shaftPart, wxCONTROL_PRESSED, false);
     }
     else // another mouse button released
     {
         // we don't process this
-        return FALSE;
+        return false;
     }
 
-    return TRUE;
+    return true;
 }
 
 bool wxScrollThumb::HandleMouseMove(const wxMouseEvent& event) const
@@ -241,7 +246,7 @@ bool wxScrollThumb::HandleMouseMove(const wxMouseEvent& event) const
         }
 
         // we process all mouse events while the mouse is captured by us
-        return TRUE;
+        return true;
     }
     else // no capture
     {
@@ -259,9 +264,9 @@ bool wxScrollThumb::HandleMouseMove(const wxMouseEvent& event) const
         if ( shaftPart != m_shaftPart )
         {
             // update the highlighted state
-            m_control->SetShaftPartState(m_shaftPart, wxCONTROL_CURRENT, FALSE);
+            m_control->SetShaftPartState(m_shaftPart, wxCONTROL_CURRENT, false);
             wxConstCast(this, wxScrollThumb)->m_shaftPart = shaftPart;
-            m_control->SetShaftPartState(m_shaftPart, wxCONTROL_CURRENT, TRUE);
+            m_control->SetShaftPartState(m_shaftPart, wxCONTROL_CURRENT, true);
         }
 
         // if the event happened on the shaft, it was for us and we processed