X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/12028905135250524409f1e7b9bfa9c55e5ce16b..bd9f3519cf4d3adec765a932a726e2f1d34e0df9:/include/wx/univ/scrolbar.h diff --git a/include/wx/univ/scrolbar.h b/include/wx/univ/scrolbar.h index 4cfb891169..8580977eb1 100644 --- a/include/wx/univ/scrolbar.h +++ b/include/wx/univ/scrolbar.h @@ -12,10 +12,6 @@ #ifndef _WX_UNIV_SCROLBAR_H_ #define _WX_UNIV_SCROLBAR_H_ -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) - #pragma interface "univscrolbar.h" -#endif - class WXDLLEXPORT wxScrollTimer; #include "wx/univ/scrarrow.h" @@ -88,7 +84,7 @@ public: virtual void SetThumbPosition(int thumbPos); virtual void SetScrollbar(int position, int thumbSize, int range, int pageSize, - bool refresh = TRUE); + bool refresh = true); // wxScrollBar actions void ScrollToStart(); @@ -100,8 +96,13 @@ public: long numArg = 0, const wxString& strArg = wxEmptyString); - // The scrollbars around a normal window should not - // receive the focus. + static wxInputHandler *GetStdInputHandler(wxInputHandler *handlerDef); + virtual wxInputHandler *DoGetStdInputHandler(wxInputHandler *handlerDef) + { + return GetStdInputHandler(handlerDef); + } + + // scrollbars around a normal window should not receive the focus virtual bool AcceptsFocus() const; // wxScrollBar sub elements state (combination of wxCONTROL_XXX) @@ -128,7 +129,7 @@ protected: virtual void DoDraw(wxControlRenderer *renderer); virtual wxBorder GetDefaultBorder() const { return wxBORDER_NONE; } - // forces update of thumb's visual appearence (does nothing if m_dirty=FALSE) + // forces update of thumb's visual appearence (does nothing if m_dirty=false) void UpdateThumb(); // SetThumbPosition() helper @@ -169,8 +170,7 @@ private: }; // ---------------------------------------------------------------------------- -// common scrollbar input handler: it manages clicks on the standard scrollbar -// elements (line arrows, bar, thumb) +// Standard scrollbar input handler which can be used as a base class // ---------------------------------------------------------------------------- class WXDLLEXPORT wxStdScrollBarInputHandler : public wxStdInputHandler @@ -192,17 +192,15 @@ public: // this method is called by wxScrollBarTimer only and may be overridden // - // return TRUE to continue scrolling, FALSE to stop the timer + // return true to continue scrolling, false to stop the timer virtual bool OnScrollTimer(wxScrollBar *scrollbar, const wxControlAction& action); protected: - // the methods which must be overridden in the derived class - - // return TRUE if the mouse button can be used to activate scrollbar, FALSE - // if not (only left mouse button can do it under Windows, any button under - // GTK+) - virtual bool IsAllowedButton(int button) = 0; + // return true if the mouse button can be used to activate scrollbar, false + // if not (any button under GTK+ unlike left button only which is default) + virtual bool IsAllowedButton(int button) const + { return button == wxMOUSE_BTN_LEFT; } // set or clear the specified flag on the scrollbar element corresponding // to m_htLast @@ -226,6 +224,7 @@ protected: // generate a "thumb move" action for this mouse event void HandleThumbMove(wxScrollBar *scrollbar, const wxMouseEvent& event); + // the window (scrollbar) which has capture or NULL and the flag telling if // the mouse is inside the element which captured it or not wxWindow *m_winCapture;