Techwiki:Win32k/SCROLL
Scroll bar structure from Windows
// // Scroll bar info for window structure. typedef struct _SBDATA { INT posMin; INT posMax; INT page; INT pos; } SBDATA, *PSBDATA; typedef struct _SBINFO { DWORD WSBflags; SBDATA Horz; SBDATA Vert; } SBINFO, *PSBINFO; typedef struct tagSBCALC { INT posMin; INT posMax; INT page; INT pos; INT pxTop; INT pxBottom; INT pxLeft; INT pxRight; INT cpxThumb; INT pxUpArrow; INT pxDownArrow; INT pxStart; INT pxThumbBottom; INT pxThumbTop; INT cpx; INT pxMin; } SBCALC, *PSBCALC; typedef VOID (NEAR NTAPI *PFN_SCROLLBAR)(PWND, UINT, WPARAM, LPARAM, PSBCALC); typedef struct tagSBTRACK { ULONG fHitOld:1; ULONG fTrackVert:1; ULONG fCtlSB:1; ULONG fTrackRecalc:1; PWND spwndTrack; PWND spwndSB; PWND spwndSBNotify; RECT rcTrack; PFN_SCROLLBAR xxxpfnSB; UINT cmdSB; UINT_PTR hTimerSB; INT dpxThumb; INT pxOld; INT posOld; INT posNew; INT nBar; PSBCALC pSBCalc; } SBTRACK, *PSBTRACK; // Window Extra data container. typedef struct _SBWND { WND wnd; BOOL fVert; UINT wDisableFlags; SBCALC SBCalc; } SBWND, *PSBWND;
References
- Windows Symbol files, userkdx.dll, !dso
- http://gosoog.blogspot.com/2009/10/cnfan-3-13.html PSBWND data container.