[WIN32K]
[reactos.git] / reactos / subsystems / win32 / win32k / include / misc.h
1 #pragma once
2
3 typedef struct INTENG_ENTER_LEAVE_TAG
4 {
5 /* Contents is private to EngEnter/EngLeave */
6 SURFOBJ *DestObj;
7 SURFOBJ *OutputObj;
8 HBITMAP OutputBitmap;
9 CLIPOBJ *TrivialClipObj;
10 RECTL DestRect;
11 BOOL ReadOnly;
12 } INTENG_ENTER_LEAVE, *PINTENG_ENTER_LEAVE;
13
14 extern BOOL APIENTRY IntEngEnter(PINTENG_ENTER_LEAVE EnterLeave,
15 SURFOBJ *DestObj,
16 RECTL *DestRect,
17 BOOL ReadOnly,
18 POINTL *Translate,
19 SURFOBJ **OutputObj);
20
21 extern BOOL APIENTRY IntEngLeave(PINTENG_ENTER_LEAVE EnterLeave);
22
23 extern HGDIOBJ StockObjects[];
24 extern SHORT gusLanguageID;
25
26 SHORT FASTCALL IntGdiGetLanguageID(VOID);
27 DWORD APIENTRY IntGetQueueStatus(DWORD);
28 VOID FASTCALL IntUserManualGuiCheck(LONG Check);
29 PVOID APIENTRY HackSecureVirtualMemory(IN PVOID,IN SIZE_T,IN ULONG,OUT PVOID *);
30 VOID APIENTRY HackUnsecureVirtualMemory(IN PVOID);
31
32 NTSTATUS
33 NTAPI
34 RegOpenKey(
35 LPCWSTR pwszKeyName,
36 PHKEY phkey);
37
38 NTSTATUS
39 NTAPI
40 RegQueryValue(
41 IN HKEY hkey,
42 IN PCWSTR pwszValueName,
43 IN ULONG ulType,
44 OUT PVOID pvData,
45 IN OUT PULONG pcbValue);
46
47 VOID
48 NTAPI
49 RegWriteSZ(HKEY hkey, PWSTR pwszValue, PWSTR pwszData);
50
51 VOID
52 NTAPI
53 RegWriteDWORD(HKEY hkey, PWSTR pwszValue, DWORD dwData);
54
55 BOOL
56 NTAPI
57 RegReadDWORD(HKEY hkey, PWSTR pwszValue, PDWORD pdwData);
58
59 BOOL
60 NTAPI
61 RegReadUserSetting(
62 IN PCWSTR pwszKeyName,
63 IN PCWSTR pwszValueName,
64 IN ULONG ulType,
65 OUT PVOID pvData,
66 IN ULONG cbDataSize);
67
68 BOOL
69 NTAPI
70 RegWriteUserSetting(
71 IN PCWSTR pwszKeyName,
72 IN PCWSTR pwszValueName,
73 IN ULONG ulType,
74 OUT PVOID pvData,
75 IN ULONG cbDataSize);
76
77 VOID FASTCALL
78 SetLastNtError(
79 NTSTATUS Status);