60 void SetValue(int value);
61 void SetLineIncrement(int value) { m_lineIncr = value; }
62 void SetPageIncrement(int value) { m_pageIncr = value; }
63
64 virtual LRESULT WindowProc(UINT message, WPARAM wParam, LPARAM lParam);
65
66 /*
67 * Windows message handler functions
68 */
69 virtual MsgRouting WmHScroll(UINT scrollCode, UINT pos, HWND hScrollBar);
70 virtual MsgRouting WmVScroll(UINT scrollCode, UINT pos, HWND hScrollBar);
71
72 // Prevent KB Q102552 race.
73 virtual MsgRouting WmMouseDown(UINT flags, int x, int y, int button);
74 virtual MsgRouting WmNcHitTest(UINT x, UINT y, LRESULT& retVal);
75
76 virtual MsgRouting HandleEvent(MSG *msg, BOOL synthetic);
77
78 INLINE virtual BOOL IsScrollbar() { return TRUE; }
79
80 // invoked on Toolkit thread
81 static void _SetValues(void *param);
82
83 private:
84 UINT m_orientation; /* SB_HORZ or SB_VERT */
85
86 int m_lineIncr;
87 int m_pageIncr;
88
89 // Work around KB Q73839 bug.
90 void UpdateFocusIndicator();
91
92 // Don't do redundant callbacks.
93 const char *m_prevCallback;
94 int m_prevCallbackPos;
95
96 static const char * const SbNlineDown;
97 static const char * const SbNlineUp;
98 static const char * const SbNpageDown;
99 static const char * const SbNpageUp;
|
60 void SetValue(int value);
61 void SetLineIncrement(int value) { m_lineIncr = value; }
62 void SetPageIncrement(int value) { m_pageIncr = value; }
63
64 virtual LRESULT WindowProc(UINT message, WPARAM wParam, LPARAM lParam);
65
66 /*
67 * Windows message handler functions
68 */
69 virtual MsgRouting WmHScroll(UINT scrollCode, UINT pos, HWND hScrollBar);
70 virtual MsgRouting WmVScroll(UINT scrollCode, UINT pos, HWND hScrollBar);
71
72 // Prevent KB Q102552 race.
73 virtual MsgRouting WmMouseDown(UINT flags, int x, int y, int button);
74 virtual MsgRouting WmNcHitTest(UINT x, UINT y, LRESULT& retVal);
75
76 virtual MsgRouting HandleEvent(MSG *msg, BOOL synthetic);
77
78 INLINE virtual BOOL IsScrollbar() { return TRUE; }
79
80 static void _SetLineIncrement(void *param);
81 static void _SetPageIncrement(void *param);
82 // invoked on Toolkit thread
83 static void _SetValues(void *param);
84
85 private:
86 UINT m_orientation; /* SB_HORZ or SB_VERT */
87
88 int m_lineIncr;
89 int m_pageIncr;
90
91 // Work around KB Q73839 bug.
92 void UpdateFocusIndicator();
93
94 // Don't do redundant callbacks.
95 const char *m_prevCallback;
96 int m_prevCallbackPos;
97
98 static const char * const SbNlineDown;
99 static const char * const SbNlineUp;
100 static const char * const SbNpageDown;
101 static const char * const SbNpageUp;
|