// Modified by:
// Created: 20.08.00
// RCS-ID: $Id$
-// Copyright: (c) 2000 Vadim Zeitlin <zeitlin@dptmaths.ens-cachan.fr>
-// Licence: wxWindows license
+// Copyright: (c) 2000 SciTech Software, Inc. (www.scitechsoft.com)
+// Licence: wxWindows licence
///////////////////////////////////////////////////////////////////////////////
#ifndef _WX_UNIV_SCROLBAR_H_
// wxScrollBar actions
void ScrollToStart();
void ScrollToEnd();
- void ScrollLines(int nLines);
- void ScrollPages(int nPages);
+ bool ScrollLines(int nLines);
+ bool ScrollPages(int nPages);
virtual bool PerformAction(const wxControlAction& action,
long numArg = 0,
const wxString& strArg = wxEmptyString);
+ // The scrollbars around a normal window should not
+ // receive the focus.
+ virtual bool AcceptsFocus() const;
+
// wxScrollBar sub elements state (combination of wxCONTROL_XXX)
void SetState(Element which, int flags);
int GetState(Element which) const;
// event handlers
void OnIdle(wxIdleEvent& event);
+ // forces update of thumb's visual appearence (does nothing if m_dirty=FALSE)
+ void UpdateThumb();
+
// SetThumbPosition() helper
void DoSetThumb(int thumbPos);
// common part of all ctors
void Init();
+ // is this scrollbar attached to a window or a standalone control?
+ bool IsStandalone() const;
+
private:
// total range of the scrollbar in logical units
int m_range;
wxStdScrollBarInputHandler(wxRenderer *renderer,
wxInputHandler *inphand);
- virtual bool HandleKey(wxControl *control,
+ virtual bool HandleKey(wxInputConsumer *consumer,
const wxKeyEvent& event,
bool pressed);
- virtual bool HandleMouse(wxControl *control,
+ virtual bool HandleMouse(wxInputConsumer *consumer,
const wxMouseEvent& event);
- virtual bool HandleMouseMove(wxControl *control, const wxMouseEvent& event);
+ virtual bool HandleMouseMove(wxInputConsumer *consumer, const wxMouseEvent& event);
virtual ~wxStdScrollBarInputHandler();