Techwiki:Win32k/LISTBOX
From ReactOS
Windows List Box Structure
// based on SCROLLINFO used in user32!xxxSetLBScrollParms
typedef struct _SCROLLLBPOS
{
/* 000 */ INT cItems;
/* 004 */ UINT iPage;
/* 008 */ INT iPos;
/* 00c */ UINT fMask;
/* 010 */ INT iReturn;
} SCROLLLBPOS, *PSCROLLLBPOS;
typedef struct _LBIV // Size: 0xb0
{
/* 000 */ PWND spwndParent;
/* 004 */ PWND spwnd;
/* 008 */ INT iTop;
/* 00c */ INT iSel;
/* 010 */ INT iSelBase;
/* 014 */ INT cItemFullMax;
/* 018 */ INT cMac;
/* 01c */ INT cMax;
/* 020 */BYTE * rgpch;
/* 024 */ HANDLE hStrings;
/* 028 */ INT cchStrings;
/* 02c */ INT ichAlloc;
/* 030 */ INT cxChar;
/* 034 */ INT cyChar;
/* 038 */ INT cxColumn;
/* 03c */ INT itemsPerColumn;
/* 040 */ INT numberOfColumns;
/* 044 */ POINT ptPrev;
/* 04c */ UINT OwnerDraw:2;
/* 04c */ UINT fRedraw:1;
/* 04c */ UINT fDeferUpdate:1;
/* 04c */ UINT wMultiple:2;
/* 04c */ UINT fSort:1;
/* 04c */ UINT fNotify:1;
/* 04c */ UINT fMouseDown:1;
/* 04c */ UINT fCaptured:1;
/* 04c */ UINT fCaret:1;
/* 04c */ UINT fDoubleClick:1;
/* 04c */ UINT fCaretOn:1;
/* 04c */ UINT fAddSelMode:1;
/* 04c */ UINT fHasStrings:1;
/* 04c */ UINT fHasData:1;
/* 04c */ UINT fNewItemState:1;
/* 04c */ UINT fUseTabStops:1;
/* 04c */ UINT fMultiColumn:1;
/* 04c */ UINT fNoIntegralHeight:1;
/* 04c */ UINT fWantKeyboardInput:1;
/* 04c */ UINT fDisableNoScroll:1;
/* 04c */ UINT fHorzBar:1;
/* 04c */ UINT fVertBar:1;
/* 04c */ UINT fFromInsert:1;
/* 04c */ UINT fNoSel:1;
/* 04c */ UINT fHorzInitialized : 1;
/* 04c */ UINT fVertInitialized : 1;
/* 04c */ UINT fSized : 1;
/* 04c */ UINT fIgnoreSizeMsg : 1;
/* 04c */ UINT fInitialized : 1;
/* 04c */ UINT fRightAlign:1;
/* 04c */ UINT fRtoLReading:1;
/* 04c */ UINT fSmoothScroll:1;
/* 054 */ INT xRightOrigin;
/* 058 */ INT iLastSelection;
/* 05c */ INT iMouseDown;
/* 060 */ INT iLastMouseMove;
/* 064 */ INT * iTabPixelPositions;
/* 068 */ HFONT hFont;
/* 06c */ INT xOrigin;
/* 070 */ INT maxWidth;
/* 074 */ PCBOX pcbox;
/* 078 */ HDC hdc;
/* 07c */ DWORD dwLocaleId;
/* 080 */ INT iTypeSearch;
/* 084 */ LPWSTR pszTypeSearch;
/* 088 */ SCROLLLBPOS HPos;
/* 09c */ SCROLLLBPOS VPos;
} LBIV, *PLBIV;
// Window Extra data container.
typedef struct _WND2LB
{
WND;
PLBIV pLBiv;
} WND2LB, *PWND2LB;
References
- Windows Symbol files, userkdx.dll, !dso, w7u verified
- msdn SCROLLINFO

