mirror of
https://github.com/reactos/reactos.git
synced 2024-10-30 03:27:31 +00:00
4170ce0625
svn path=/branches/reactos-yarotows/; revision=47347
108 lines
2.2 KiB
C
108 lines
2.2 KiB
C
#pragma once
|
|
|
|
#define MAXCURICONHANDLES 4096
|
|
|
|
typedef struct tagCURICON_PROCESS
|
|
{
|
|
LIST_ENTRY ListEntry;
|
|
PPROCESSINFO Process;
|
|
} CURICON_PROCESS, *PCURICON_PROCESS;
|
|
|
|
typedef struct _CURICON_OBJECT
|
|
{
|
|
PROCMARKHEAD head;
|
|
LIST_ENTRY ListEntry;
|
|
HANDLE Self;
|
|
LIST_ENTRY ProcessList;
|
|
HMODULE hModule;
|
|
HRSRC hRsrc;
|
|
HRSRC hGroupRsrc;
|
|
SIZE Size;
|
|
BYTE Shadow;
|
|
ICONINFO IconInfo;
|
|
} CURICON_OBJECT, *PCURICON_OBJECT;
|
|
|
|
typedef struct _CURSORCLIP_INFO
|
|
{
|
|
BOOL IsClipped;
|
|
UINT Left;
|
|
UINT Top;
|
|
UINT Right;
|
|
UINT Bottom;
|
|
} CURSORCLIP_INFO, *PCURSORCLIP_INFO;
|
|
|
|
typedef struct _CURSORACCELERATION_INFO
|
|
{
|
|
UINT FirstThreshold;
|
|
UINT SecondThreshold;
|
|
UINT Acceleration;
|
|
} CURSORACCELERATION_INFO, *PCURSORACCELERATION_INFO;
|
|
|
|
typedef struct _SYSTEM_CURSORINFO
|
|
{
|
|
BOOL Enabled;
|
|
BOOL ClickLockActive;
|
|
DWORD ClickLockTime;
|
|
// BOOL SwapButtons;
|
|
UINT ButtonsDown;
|
|
CURSORCLIP_INFO CursorClipInfo;
|
|
PCURICON_OBJECT CurrentCursorObject;
|
|
INT ShowingCursor;
|
|
/*
|
|
UINT WheelScroLines;
|
|
UINT WheelScroChars;
|
|
UINT DblClickSpeed;
|
|
UINT DblClickWidth;
|
|
UINT DblClickHeight;
|
|
|
|
UINT MouseHoverTime;
|
|
UINT MouseHoverWidth;
|
|
UINT MouseHoverHeight;
|
|
|
|
UINT MouseSpeed;
|
|
CURSORACCELERATION_INFO CursorAccelerationInfo;
|
|
*/
|
|
DWORD LastBtnDown;
|
|
LONG LastBtnDownX;
|
|
LONG LastBtnDownY;
|
|
HANDLE LastClkWnd;
|
|
BOOL ScreenSaverRunning;
|
|
} SYSTEM_CURSORINFO, *PSYSTEM_CURSORINFO;
|
|
|
|
BOOL InitCursorImpl();
|
|
PCURICON_OBJECT IntCreateCurIconHandle();
|
|
VOID FASTCALL IntCleanupCurIcons(struct _EPROCESS *Process, PPROCESSINFO Win32Process);
|
|
|
|
BOOL UserDrawIconEx(HDC hDc, INT xLeft, INT yTop, PCURICON_OBJECT pIcon, INT cxWidth,
|
|
INT cyHeight, UINT istepIfAniCur, HBRUSH hbrFlickerFreeDraw, UINT diFlags);
|
|
PCURICON_OBJECT FASTCALL UserGetCurIconObject(HCURSOR hCurIcon);
|
|
|
|
BOOL UserSetCursorPos( INT x, INT y, BOOL CallHooks);
|
|
|
|
int UserShowCursor(BOOL bShow);
|
|
|
|
PSYSTEM_CURSORINFO IntGetSysCursorInfo();
|
|
|
|
#define IntReleaseCurIconObject(CurIconObj) \
|
|
UserDereferenceObject(CurIconObj)
|
|
|
|
ULONG
|
|
NTAPI
|
|
GreSetPointerShape(
|
|
HDC hdc,
|
|
HBITMAP hbmMask,
|
|
HBITMAP hbmColor,
|
|
LONG xHot,
|
|
LONG yHot,
|
|
LONG x,
|
|
LONG y);
|
|
|
|
VOID
|
|
NTAPI
|
|
GreMovePointer(
|
|
HDC hdc,
|
|
LONG x,
|
|
LONG y);
|
|
|
|
/* EOF */
|