31 :
public TWindowProxy<IPanel>
55 STDMETHOD_(BOOL, ShowScrollBar)(THIS_
int wBar, BOOL bShow) OVERRIDE;
63 STDMETHOD_(BOOL, EnableScrollBar)(THIS_
int wBar, BOOL bEnable) OVERRIDE;
70 STDMETHOD_(BOOL, IsScrollBarEnable)(THIS_ BOOL bVertical) SCONST OVERRIDE;
77 STDMETHOD_(
void, SetScrollInfo)(THIS_ SCROLLINFO si, BOOL bVertical) OVERRIDE;
86 STDMETHOD_(BOOL, SetScrollPos)(THIS_ BOOL bVertical,
int nNewPos, BOOL bRedraw) OVERRIDE;
93 STDMETHOD_(
int, GetScrollPos)(THIS_ BOOL bVertical) SCONST OVERRIDE;
103 STDMETHOD_(BOOL, SetScrollRange)(THIS_ BOOL bVertical,
int nMinPos,
int nMaxPos, BOOL bRedraw) OVERRIDE;
112 STDMETHOD_(BOOL, GetScrollRange)(THIS_ BOOL bVertical, LPINT lpMinPos, LPINT lpMaxPos) SCONST OVERRIDE;
119 STDMETHOD_(BOOL, HasScrollBar)(THIS_ BOOL bVertical) SCONST OVERRIDE;
141 STDMETHOD_(CRect, GetScrollBarRect)(CTHIS_ BOOL bVert) SCONST OVERRIDE;
148 STDMETHOD_(
ISkinObj *, GetScrollBarSkin)(CTHIS_ BOOL bVert) SCONST OVERRIDE;
155 STDMETHOD_(
const SCROLLINFO *, GetScrollBarInfo)(CTHIS_ BOOL bVert) SCONST OVERRIDE;
162 STDMETHOD_(
int, GetScrollBarArrowSize)(CTHIS_ BOOL bVert) SCONST OVERRIDE;
169 STDMETHOD_(
void, OnScrollUpdatePart)(THIS_ BOOL bVert,
int iPart) OVERRIDE;
176 STDMETHOD_(
void, OnScrollUpdateThumbTrack)(THIS_ BOOL bVert,
int nPos) OVERRIDE;
182 STDMETHOD_(
ISwndContainer *, GetScrollBarContainer)(THIS) OVERRIDE;
190 STDMETHOD_(
void, OnScrollCommand)(THIS_ BOOL bVert,
int iCmd,
int nPos) OVERRIDE;
198 STDMETHOD_(
void, OnScrollSetTimer)(THIS_ BOOL bVert,
char id, UINT uElapse) OVERRIDE;
205 STDMETHOD_(
void, OnScrollKillTimer)(THIS_ BOOL bVert,
char id) OVERRIDE;
211 STDMETHOD_(
const IInterpolator *, GetScrollInterpolator)(CTHIS) SCONST OVERRIDE;
217 STDMETHOD_(
int, GetScrollFadeFrames)(CTHIS) SCONST OVERRIDE;
223 STDMETHOD_(BYTE, GetScrollThumbTrackMinAlpha)(CTHIS) SCONST OVERRIDE;
231 virtual int GetScrollLineSize(BOOL bVertical);
240 virtual BOOL OnScroll(BOOL bVertical, UINT uCode,
int nPos);
266 int GetSbWidth()
const;
279 HRESULT OnAttrScrollbarSkin(
SStringW strValue, BOOL bLoading);
282 SCROLLINFO m_siVer, m_siHoz;
297 ScrollBarID m_dragSb, m_hitSb;
304 DWORD m_dwUpdateTime;
305 DWORD m_dwUpdateInterval;
312 BYTE m_bySbThumbTrackMinAlpha;
315 ATTR_CUSTOM(L
"sbSkin", OnAttrScrollbarSkin)
316 ATTR_LAYOUTSIZE(L
"sbArrowSize", m_nSbArrowSize, FALSE)
317 ATTR_LAYOUTSIZE(L
"sbWid", m_nSbWid, TRUE)
318 ATTR_INT(L
"sbEnable", m_wBarEnable, TRUE)
319 ATTR_UINT(L
"updateInterval", m_dwUpdateInterval, FALSE)
320 ATTR_UINT(L
"scrollSpeed", m_nScrollSpeed, FALSE)
322 ATTR_LAYOUTSIZE(L
"sbLeft", m_nSbLeft, TRUE)
323 ATTR_LAYOUTSIZE(L
"sbRight", m_nSbRight, TRUE)
324 ATTR_LAYOUTSIZE(L
"sbTop", m_nSbTop, TRUE)
325 ATTR_LAYOUTSIZE(L
"sbBottom", m_nSbBottom, TRUE)
327 ATTR_INT(L
"sbFadeFrames", m_fadeFrames, FALSE)
328 ATTR_INT(L
"sbTrumbTrackMinAlpha", m_bySbThumbTrackMinAlpha, FALSE)
329 ATTR_INTERPOLATOR(L
"sbFadeInterpolator", m_fadeInterpolator, FALSE)
330 ATTR_CHAIN_PTR(m_fadeInterpolator, 0)
339 int OnCreate(LPVOID);
357 virtual BOOL OnNcHitTest(CPoint pt);
364 void OnNcLButtonDown(UINT nFlags, CPoint point);
371 void OnNcLButtonUp(UINT nFlags, CPoint pt);
378 void OnNcMouseMove(UINT nFlags, CPoint point);
383 void OnNcMouseLeave();
391 LRESULT OnNcCalcSize(BOOL bCalcValidRects, LPARAM lParam);
400 BOOL OnMouseWheel(UINT nFlags,
short zDelta, CPoint pt);
406 void OnTimer(
char cTimerID);
413 void OnShowWindow(BOOL bShow, UINT nStatus);
420 void OnEnable(BOOL bEnable, UINT uStatus);
428 void OnVScroll(UINT nSBCode, UINT nPos, HWND hwnd);
436 void OnHScroll(UINT nSBCode, UINT nPos, HWND hwnd);
439 MSG_WM_CREATE(OnCreate)
440 MSG_WM_DESTROY(OnDestroy)
441 MSG_WM_NCPAINT_EX(OnNcPaint)
442 MSG_WM_NCCALCSIZE(OnNcCalcSize)
443 MSG_WM_NCLBUTTONDOWN(OnNcLButtonDown)
444 MSG_WM_NCLBUTTONUP(OnNcLButtonUp)
445 MSG_WM_NCLBUTTONDBLCLK(OnNcLButtonDown)
446 MSG_WM_NCMOUSEMOVE(OnNcMouseMove)
447 MSG_WM_NCMOUSELEAVE(OnNcMouseLeave)
448 MSG_WM_MOUSEWHEEL(OnMouseWheel)
449 MSG_WM_TIMER_EX(OnTimer)
450 MSG_WM_SHOWWINDOW(OnShowWindow)
451 MSG_WM_ENABLE_EX(OnEnable)
452 MSG_WM_VSCROLL(OnVScroll)
453 MSG_WM_HSCROLL(OnHScroll)
470 DEF_SOBJECT(
SPanel, L
"scrollview")
490 STDMETHOD_(
void, GetViewSize)(CTHIS_ SIZE *szView) SCONST OVERRIDE;
496 STDMETHOD_(
void, SetViewSize)(THIS_ SIZE szView) OVERRIDE;
502 STDMETHOD_(
void, GetViewOrigin)(CTHIS_ POINT *ptOri) SCONST OVERRIDE;
508 STDMETHOD_(
void, SetViewOrigin)(THIS_ POINT pt) OVERRIDE;
516 virtual void OnViewSizeChanged(CSize szOld, CSize szNew);
523 virtual void OnViewOriginChanged(CPoint ptOld, CPoint ptNew);
530 STDMETHOD_(
void, GetChildrenLayoutRect)(THIS_ RECT *prc) SCONST OVERRIDE;
535 STDMETHOD_(
void, UpdateChildrenPosition)(THIS) OVERRIDE;
544 virtual BOOL OnScroll(BOOL bVertical, UINT uCode,
int nPos);
549 virtual void UpdateScrollBar();
558 HRESULT OnAttrViewSize(
const SStringW &strValue, BOOL bLoading);
561 ATTR_INT(L
"origin-x", m_ptOrigin.x, FALSE)
562 ATTR_INT(L
"origin-y", m_ptOrigin.y, FALSE)
563 ATTR_CUSTOM(L
"viewSize", OnAttrViewSize)
570 void UpdateViewSize();
577 void OnSize(UINT nType, CSize size);