win32u: Move NtUserGetTitleBarInfo implementation from user32.
[wine.git] / dlls / win32u / syscall.c
blobffb1529e03fec789aa2da221a1a84e95fd80b04c
1 /*
2 * Unix interface for Win32 syscalls
4 * Copyright (C) 2021 Alexandre Julliard
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
21 #if 0
22 #pragma makedep unix
23 #endif
25 #include <stdarg.h>
27 #include "ntstatus.h"
28 #define WIN32_NO_STATUS
29 #include "windef.h"
30 #include "winnt.h"
31 #include "ntgdi_private.h"
32 #include "ntuser.h"
33 #include "wine/unixlib.h"
36 static void * const syscalls[] =
38 NtGdiAddFontMemResourceEx,
39 NtGdiAddFontResourceW,
40 NtGdiCombineRgn,
41 NtGdiCreateBitmap,
42 NtGdiCreateClientObj,
43 NtGdiCreateDIBBrush,
44 NtGdiCreateDIBSection,
45 NtGdiCreateEllipticRgn,
46 NtGdiCreateHalftonePalette,
47 NtGdiCreateHatchBrushInternal,
48 NtGdiCreatePaletteInternal,
49 NtGdiCreatePatternBrushInternal,
50 NtGdiCreatePen,
51 NtGdiCreateRectRgn,
52 NtGdiCreateRoundRectRgn,
53 NtGdiCreateSolidBrush,
54 NtGdiDdDDICreateDevice,
55 NtGdiDdDDIOpenAdapterFromHdc,
56 NtGdiDdDDIQueryStatistics,
57 NtGdiDdDDISetQueuedLimit,
58 NtGdiDeleteClientObj,
59 NtGdiDescribePixelFormat,
60 NtGdiDrawStream,
61 NtGdiEqualRgn,
62 NtGdiExtCreatePen,
63 NtGdiExtCreateRegion,
64 NtGdiExtGetObjectW,
65 NtGdiFlattenPath,
66 NtGdiFlush,
67 NtGdiGetBitmapBits,
68 NtGdiGetBitmapDimension,
69 NtGdiGetColorAdjustment,
70 NtGdiGetDCDword,
71 NtGdiGetDCObject,
72 NtGdiGetDCPoint,
73 NtGdiGetFontFileData,
74 NtGdiGetFontFileInfo,
75 NtGdiGetNearestPaletteIndex,
76 NtGdiGetPath,
77 NtGdiGetRegionData,
78 NtGdiGetRgnBox,
79 NtGdiGetSpoolMessage,
80 NtGdiGetSystemPaletteUse,
81 NtGdiGetTransform,
82 NtGdiHfontCreate,
83 NtGdiInitSpool,
84 NtGdiOffsetRgn,
85 NtGdiPathToRegion,
86 NtGdiPtInRegion,
87 NtGdiRectInRegion,
88 NtGdiRemoveFontMemResourceEx,
89 NtGdiRemoveFontResourceW,
90 NtGdiSaveDC,
91 NtGdiSetBitmapBits,
92 NtGdiSetBitmapDimension,
93 NtGdiSetBrushOrg,
94 NtGdiSetColorAdjustment,
95 NtGdiSetMagicColors,
96 NtGdiSetMetaRgn,
97 NtGdiSetPixelFormat,
98 NtGdiSetRectRgn,
99 NtGdiSetTextJustification,
100 NtGdiSetVirtualResolution,
101 NtGdiSwapBuffers,
102 NtGdiTransformPoints,
103 NtUserAddClipboardFormatListener,
104 NtUserAttachThreadInput,
105 NtUserBuildHwndList,
106 NtUserCallMsgFilter,
107 NtUserCheckMenuItem,
108 NtUserChildWindowFromPointEx,
109 NtUserCloseDesktop,
110 NtUserCloseWindowStation,
111 NtUserCopyAcceleratorTable,
112 NtUserCreateAcceleratorTable,
113 NtUserCreateDesktopEx,
114 NtUserCreateWindowStation,
115 NtUserDeleteMenu,
116 NtUserDestroyAcceleratorTable,
117 NtUserEndMenu,
118 NtUserFindExistingCursorIcon,
119 NtUserFindWindowEx,
120 NtUserGetAncestor,
121 NtUserGetAtomName,
122 NtUserGetCaretBlinkTime,
123 NtUserGetCaretPos,
124 NtUserGetClassName,
125 NtUserGetClipboardFormatName,
126 NtUserGetClipboardOwner,
127 NtUserGetClipboardSequenceNumber,
128 NtUserGetClipboardViewer,
129 NtUserGetCursor,
130 NtUserGetCursorFrameInfo,
131 NtUserGetDoubleClickTime,
132 NtUserGetDpiForMonitor,
133 NtUserGetForegroundWindow,
134 NtUserGetGUIThreadInfo,
135 NtUserGetIconSize,
136 NtUserGetKeyState,
137 NtUserGetKeyboardLayout,
138 NtUserGetKeyboardLayoutName,
139 NtUserGetKeyboardState,
140 NtUserGetLayeredWindowAttributes,
141 NtUserGetMenuItemRect,
142 NtUserGetMouseMovePointsEx,
143 NtUserGetObjectInformation,
144 NtUserGetOpenClipboardWindow,
145 NtUserGetProcessDpiAwarenessContext,
146 NtUserGetProcessWindowStation,
147 NtUserGetProp,
148 NtUserGetSystemDpiForProcess,
149 NtUserGetThreadDesktop,
150 NtUserGetTitleBarInfo,
151 NtUserGetWindowRgnEx,
152 NtUserInitializeClientPfnArrays,
153 NtUserInternalGetWindowText,
154 NtUserKillTimer,
155 NtUserLockWindowUpdate,
156 NtUserMenuItemFromPoint,
157 NtUserNotifyWinEvent,
158 NtUserOpenDesktop,
159 NtUserOpenInputDesktop,
160 NtUserOpenWindowStation,
161 NtUserRemoveClipboardFormatListener,
162 NtUserRemoveMenu,
163 NtUserRemoveProp,
164 NtUserSetKeyboardState,
165 NtUserSetMenuContextHelpId,
166 NtUserSetMenuDefaultItem,
167 NtUserSetObjectInformation,
168 NtUserSetProcessDpiAwarenessContext,
169 NtUserSetProcessWindowStation,
170 NtUserSetProp,
171 NtUserSetSystemTimer,
172 NtUserSetThreadDesktop,
173 NtUserSetTimer,
174 NtUserSetWinEventHook,
175 NtUserSetWindowsHookEx,
176 NtUserThunkedMenuInfo,
177 NtUserThunkedMenuItemInfo,
178 NtUserUnhookWinEvent,
179 NtUserUnhookWindowsHookEx,
180 NtUserWindowFromDC,
183 static BYTE arguments[ARRAY_SIZE(syscalls)];
185 static SYSTEM_SERVICE_TABLE syscall_table =
187 (ULONG_PTR *)syscalls,
189 ARRAY_SIZE(syscalls),
190 arguments
193 static NTSTATUS init( void *dispatcher )
195 NTSTATUS status;
196 if ((status = ntdll_init_syscalls( 1, &syscall_table, dispatcher ))) return status;
197 if ((status = gdi_init())) return status;
198 winstation_init();
199 sysparams_init();
200 return STATUS_SUCCESS;
203 unixlib_entry_t __wine_unix_call_funcs[] =
205 init,
206 callbacks_init,
209 #ifdef _WIN64
211 WINE_DEFAULT_DEBUG_CHANNEL(win32u);
213 static NTSTATUS wow64_init( void *args )
215 FIXME( "\n" );
216 return STATUS_NOT_SUPPORTED;
219 const unixlib_entry_t __wine_unix_call_wow64_funcs[] =
221 init,
222 wow64_init,
225 #endif /* _WIN64 */