-#ifndef _WIN32K_WINSTA_H
-#define _WIN32K_WINSTA_H
+#pragma once
-#include "msgqueue.h"
+#include "window.h"
+#include "clipboard.h"
#define WINSTA_ROOT_NAME L"\\Windows\\WindowStations"
#define WINSTA_ROOT_NAME_LENGTH 23
LIST_ENTRY DesktopListHead;
PRTL_ATOM_TABLE AtomTable;
HANDLE SystemMenuTemplate;
- PVOID SystemCursor;
UINT CaretBlinkRate;
HANDLE ShellWindow;
HANDLE ShellListView;
+ /* Effects */
+ BOOL FontSmoothing; /* enable */
+ UINT FontSmoothingType; /* 1:Standard,2:ClearType */
+ /* FIXME: Big Icons (SPI_GETICONMETRICS?) */
+ BOOL DropShadow;
+ BOOL DragFullWindows;
+ BOOL FlatMenu;
+
+ /* ScreenSaver */
+ BOOL ScreenSaverRunning;
+ UINT ScreenSaverTimeOut;
+ /* Should this be on each desktop ? */
+ BOOL ScreenSaverActive;
+
/* Wallpaper */
HANDLE hbmWallpaper;
ULONG cxWallpaper, cyWallpaper;
WALLPAPER_MODE WallpaperMode;
ULONG Flags;
- struct _DESKTOP_OBJECT* ActiveDesktop;
- /* FIXME: Clipboard */
+ struct _DESKTOP* ActiveDesktop;
+
+ PCLIPBOARDSYSTEM Clipboard;
+ DWORD ClipboardSequenceNumber;
+
} WINSTATION_OBJECT, *PWINSTATION_OBJECT;
extern WINSTATION_OBJECT *InputWindowStation;
-extern PW32PROCESS LogonProcess;
+extern PPROCESSINFO LogonProcess;
NTSTATUS FASTCALL
InitWindowStationImpl(VOID);
CleanupWindowStationImpl(VOID);
NTSTATUS
-STDCALL
+APIENTRY
IntWinStaObjectOpen(PWIN32_OPENMETHOD_PARAMETERS Parameters);
-VOID STDCALL
+VOID APIENTRY
IntWinStaObjectDelete(PWIN32_DELETEMETHOD_PARAMETERS Parameters);
NTSTATUS
-STDCALL
+APIENTRY
IntWinStaObjectParse(PWIN32_PARSEMETHOD_PARAMETERS Parameters);
NTSTATUS FASTCALL
PWINSTATION_OBJECT FASTCALL IntGetWinStaObj(VOID);
-#endif /* _WIN32K_WINSTA_H */
-
/* EOF */