reactos/win32ss/user/ntuser/scroll.h
Hermès Bélusca-Maïto e1ef078741 Create this branch to work on loading of different Kernel-Debugger DLL providers, and see whether it is possible to move KDBG from ntoskrnl to a new DLL called, say, KDROSDBG.DLL.
The idea then would be to have the following behaviour (when specifying the following options in the kernel command line):

/DEBUGPORT=COMi --> load KDCOM.DLL and use COMi port (i == 1,2,3,4) if possible.
/DEBUGPORT=FOO  --> load KDFOO.DLL (useful for KDUSB.DLL, KD1394.DLL, KDBAZIS.DLL for VirtualKD, etc...)
/DEBUGPORT=ROSDBG:[COMi|SCREEN|FILE|GDB|...] --> load KDROSDBG.DLL which contains the ROS kernel debugger, and use COMi or SCREEN or... as output port.

svn path=/branches/kd++/; revision=58883
2013-04-28 13:26:45 +00:00

44 lines
1.1 KiB
C

#pragma once
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;
/*
typedef struct _SBINFOEX
{
SCROLLBARINFO ScrollBarInfo;
SCROLLINFO ScrollInfo;
} SBINFOEX, *PSBINFOEX;
*/
#define IntGetScrollbarInfoFromWindow(Window, i) \
((PSCROLLBARINFO)(&((Window)->pSBInfoex + i)->ScrollBarInfo))
#define IntGetScrollInfoFromWindow(Window, i) \
((LPSCROLLINFO)(&((Window)->pSBInfoex + i)->ScrollInfo))
#define SBOBJ_TO_SBID(Obj) ((Obj) - OBJID_HSCROLL)
#define SBID_IS_VALID(id) (id == SB_HORZ || id == SB_VERT || id == SB_CTL)
BOOL FASTCALL co_IntCreateScrollBars(PWND Window);
BOOL FASTCALL IntDestroyScrollBars(PWND Window);