Blame winpr/include/winpr/wnd.h

Packit Service fa4841
/**
Packit Service fa4841
 * WinPR: Windows Portable Runtime
Packit Service fa4841
 * Window Notification System
Packit Service fa4841
 *
Packit Service fa4841
 * Copyright 2014 Marc-Andre Moreau <marcandre.moreau@gmail.com>
Packit Service fa4841
 * Copyright 2015 DI (FH) Martin Haimberger <martin.haimberger@thincast.com>
Packit Service fa4841
 *
Packit Service fa4841
 * Licensed under the Apache License, Version 2.0 (the "License");
Packit Service fa4841
 * you may not use this file except in compliance with the License.
Packit Service fa4841
 * You may obtain a copy of the License at
Packit Service fa4841
 *
Packit Service fa4841
 *     http://www.apache.org/licenses/LICENSE-2.0
Packit Service fa4841
 *
Packit Service fa4841
 * Unless required by applicable law or agreed to in writing, software
Packit Service fa4841
 * distributed under the License is distributed on an "AS IS" BASIS,
Packit Service fa4841
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
Packit Service fa4841
 * See the License for the specific language governing permissions and
Packit Service fa4841
 * limitations under the License.
Packit Service fa4841
 */
Packit Service fa4841
Packit Service fa4841
#ifndef WINPR_WND_H
Packit Service fa4841
#define WINPR_WND_H
Packit Service fa4841
Packit Service fa4841
#include <winpr/winpr.h>
Packit Service fa4841
#include <winpr/wtypes.h>
Packit Service fa4841
#include <winpr/windows.h>
Packit Service fa4841
Packit Service fa4841
#ifndef _WIN32
Packit Service fa4841
Packit Service fa4841
#define WM_NULL 0x0000
Packit Service fa4841
#define WM_CREATE 0x0001
Packit Service fa4841
#define WM_DESTROY 0x0002
Packit Service fa4841
#define WM_MOVE 0x0003
Packit Service fa4841
#define WM_SIZE 0x0005
Packit Service fa4841
#define WM_ACTIVATE 0x0006
Packit Service fa4841
#define WM_SETFOCUS 0x0007
Packit Service fa4841
#define WM_KILLFOCUS 0x0008
Packit Service fa4841
#define WM_ENABLE 0x000A
Packit Service fa4841
#define WM_SETREDRAW 0x000B
Packit Service fa4841
#define WM_SETTEXT 0x000C
Packit Service fa4841
#define WM_GETTEXT 0x000D
Packit Service fa4841
#define WM_GETTEXTLENGTH 0x000E
Packit Service fa4841
#define WM_PAINT 0x000F
Packit Service fa4841
#define WM_CLOSE 0x0010
Packit Service fa4841
#define WM_QUERYENDSESSION 0x0011
Packit Service fa4841
#define WM_QUERYOPEN 0x0013
Packit Service fa4841
#define WM_ENDSESSION 0x0016
Packit Service fa4841
#define WM_QUIT 0x0012
Packit Service fa4841
#define WM_ERASEBKGND 0x0014
Packit Service fa4841
#define WM_SYSCOLORCHANGE 0x0015
Packit Service fa4841
#define WM_SHOWWINDOW 0x0018
Packit Service fa4841
#define WM_WININICHANGE 0x001A
Packit Service fa4841
#define WM_SETTINGCHANGE 0x001A
Packit Service fa4841
#define WM_DEVMODECHANGE 0x001B
Packit Service fa4841
#define WM_ACTIVATEAPP 0x001C
Packit Service fa4841
#define WM_FONTCHANGE 0x001D
Packit Service fa4841
#define WM_TIMECHANGE 0x001E
Packit Service fa4841
#define WM_CANCELMODE 0x001F
Packit Service fa4841
#define WM_SETCURSOR 0x0020
Packit Service fa4841
#define WM_MOUSEACTIVATE 0x0021
Packit Service fa4841
#define WM_CHILDACTIVATE 0x0022
Packit Service fa4841
#define WM_QUEUESYNC 0x0023
Packit Service fa4841
#define WM_GETMINMAXINFO 0x0024
Packit Service fa4841
#define WM_PAINTICON 0x0026
Packit Service fa4841
#define WM_ICONERASEBKGND 0x0027
Packit Service fa4841
#define WM_NEXTDLGCTL 0x0028
Packit Service fa4841
#define WM_SPOOLERSTATUS 0x002A
Packit Service fa4841
#define WM_DRAWITEM 0x002B
Packit Service fa4841
#define WM_MEASUREITEM 0x002C
Packit Service fa4841
#define WM_DELETEITEM 0x002D
Packit Service fa4841
#define WM_VKEYTOITEM 0x002E
Packit Service fa4841
#define WM_CHARTOITEM 0x002F
Packit Service fa4841
#define WM_SETFONT 0x0030
Packit Service fa4841
#define WM_GETFONT 0x0031
Packit Service fa4841
#define WM_SETHOTKEY 0x0032
Packit Service fa4841
#define WM_GETHOTKEY 0x0033
Packit Service fa4841
#define WM_QUERYDRAGICON 0x0037
Packit Service fa4841
#define WM_COMPAREITEM 0x0039
Packit Service fa4841
#define WM_GETOBJECT 0x003D
Packit Service fa4841
#define WM_COMPACTING 0x0041
Packit Service fa4841
#define WM_COMMNOTIFY 0x0044
Packit Service fa4841
#define WM_WINDOWPOSCHANGING 0x0046
Packit Service fa4841
#define WM_WINDOWPOSCHANGED 0x0047
Packit Service fa4841
#define WM_POWER 0x0048
Packit Service fa4841
#define WM_COPYDATA 0x004A
Packit Service fa4841
#define WM_CANCELJOURNAL 0x004B
Packit Service fa4841
#define WM_NOTIFY 0x004E
Packit Service fa4841
#define WM_INPUTLANGCHANGEREQUEST 0x0050
Packit Service fa4841
#define WM_INPUTLANGCHANGE 0x0051
Packit Service fa4841
#define WM_TCARD 0x0052
Packit Service fa4841
#define WM_HELP 0x0053
Packit Service fa4841
#define WM_USERCHANGED 0x0054
Packit Service fa4841
#define WM_NOTIFYFORMAT 0x0055
Packit Service fa4841
#define WM_CONTEXTMENU 0x007B
Packit Service fa4841
#define WM_STYLECHANGING 0x007C
Packit Service fa4841
#define WM_STYLECHANGED 0x007D
Packit Service fa4841
#define WM_DISPLAYCHANGE 0x007E
Packit Service fa4841
#define WM_GETICON 0x007F
Packit Service fa4841
#define WM_SETICON 0x0080
Packit Service fa4841
#define WM_NCCREATE 0x0081
Packit Service fa4841
#define WM_NCDESTROY 0x0082
Packit Service fa4841
#define WM_NCCALCSIZE 0x0083
Packit Service fa4841
#define WM_NCHITTEST 0x0084
Packit Service fa4841
#define WM_NCPAINT 0x0085
Packit Service fa4841
#define WM_NCACTIVATE 0x0086
Packit Service fa4841
#define WM_GETDLGCODE 0x0087
Packit Service fa4841
#define WM_SYNCPAINT 0x0088
Packit Service fa4841
#define WM_NCMOUSEMOVE 0x00A0
Packit Service fa4841
#define WM_NCLBUTTONDOWN 0x00A1
Packit Service fa4841
#define WM_NCLBUTTONUP 0x00A2
Packit Service fa4841
#define WM_NCLBUTTONDBLCLK 0x00A3
Packit Service fa4841
#define WM_NCRBUTTONDOWN 0x00A4
Packit Service fa4841
#define WM_NCRBUTTONUP 0x00A5
Packit Service fa4841
#define WM_NCRBUTTONDBLCLK 0x00A6
Packit Service fa4841
#define WM_NCMBUTTONDOWN 0x00A7
Packit Service fa4841
#define WM_NCMBUTTONUP 0x00A8
Packit Service fa4841
#define WM_NCMBUTTONDBLCLK 0x00A9
Packit Service fa4841
#define WM_NCXBUTTONDOWN 0x00AB
Packit Service fa4841
#define WM_NCXBUTTONUP 0x00AC
Packit Service fa4841
#define WM_NCXBUTTONDBLCLK 0x00AD
Packit Service fa4841
#define WM_INPUT_DEVICE_CHANGE 0x00FE
Packit Service fa4841
#define WM_INPUT 0x00FF
Packit Service fa4841
#define WM_KEYFIRST 0x0100
Packit Service fa4841
#define WM_KEYDOWN 0x0100
Packit Service fa4841
#define WM_KEYUP 0x0101
Packit Service fa4841
#define WM_CHAR 0x0102
Packit Service fa4841
#define WM_DEADCHAR 0x0103
Packit Service fa4841
#define WM_SYSKEYDOWN 0x0104
Packit Service fa4841
#define WM_SYSKEYUP 0x0105
Packit Service fa4841
#define WM_SYSCHAR 0x0106
Packit Service fa4841
#define WM_SYSDEADCHAR 0x0107
Packit Service fa4841
#define WM_UNICHAR 0x0109
Packit Service fa4841
#define WM_KEYLAST 0x0109
Packit Service fa4841
#define WM_IME_STARTCOMPOSITION 0x010D
Packit Service fa4841
#define WM_IME_ENDCOMPOSITION 0x010E
Packit Service fa4841
#define WM_IME_COMPOSITION 0x010F
Packit Service fa4841
#define WM_IME_KEYLAST 0x010F
Packit Service fa4841
#define WM_INITDIALOG 0x0110
Packit Service fa4841
#define WM_COMMAND 0x0111
Packit Service fa4841
#define WM_SYSCOMMAND 0x0112
Packit Service fa4841
#define WM_TIMER 0x0113
Packit Service fa4841
#define WM_HSCROLL 0x0114
Packit Service fa4841
#define WM_VSCROLL 0x0115
Packit Service fa4841
#define WM_INITMENU 0x0116
Packit Service fa4841
#define WM_INITMENUPOPUP 0x0117
Packit Service fa4841
#define WM_GESTURE 0x0119
Packit Service fa4841
#define WM_GESTURENOTIFY 0x011A
Packit Service fa4841
#define WM_MENUSELECT 0x011F
Packit Service fa4841
#define WM_MENUCHAR 0x0120
Packit Service fa4841
#define WM_ENTERIDLE 0x0121
Packit Service fa4841
#define WM_MENURBUTTONUP 0x0122
Packit Service fa4841
#define WM_MENUDRAG 0x0123
Packit Service fa4841
#define WM_MENUGETOBJECT 0x0124
Packit Service fa4841
#define WM_UNINITMENUPOPUP 0x0125
Packit Service fa4841
#define WM_MENUCOMMAND 0x0126
Packit Service fa4841
#define WM_CHANGEUISTATE 0x0127
Packit Service fa4841
#define WM_UPDATEUISTATE 0x0128
Packit Service fa4841
#define WM_QUERYUISTATE 0x0129
Packit Service fa4841
#define WM_CTLCOLORMSGBOX 0x0132
Packit Service fa4841
#define WM_CTLCOLOREDIT 0x0133
Packit Service fa4841
#define WM_CTLCOLORLISTBOX 0x0134
Packit Service fa4841
#define WM_CTLCOLORBTN 0x0135
Packit Service fa4841
#define WM_CTLCOLORDLG 0x0136
Packit Service fa4841
#define WM_CTLCOLORSCROLLBAR 0x0137
Packit Service fa4841
#define WM_CTLCOLORSTATIC 0x0138
Packit Service fa4841
#define WM_MOUSEFIRST 0x0200
Packit Service fa4841
#define WM_MOUSEMOVE 0x0200
Packit Service fa4841
#define WM_LBUTTONDOWN 0x0201
Packit Service fa4841
#define WM_LBUTTONUP 0x0202
Packit Service fa4841
#define WM_LBUTTONDBLCLK 0x0203
Packit Service fa4841
#define WM_RBUTTONDOWN 0x0204
Packit Service fa4841
#define WM_RBUTTONUP 0x0205
Packit Service fa4841
#define WM_RBUTTONDBLCLK 0x0206
Packit Service fa4841
#define WM_MBUTTONDOWN 0x0207
Packit Service fa4841
#define WM_MBUTTONUP 0x0208
Packit Service fa4841
#define WM_MBUTTONDBLCLK 0x0209
Packit Service fa4841
#define WM_MOUSEWHEEL 0x020A
Packit Service fa4841
#define WM_XBUTTONDOWN 0x020B
Packit Service fa4841
#define WM_XBUTTONUP 0x020C
Packit Service fa4841
#define WM_XBUTTONDBLCLK 0x020D
Packit Service fa4841
#define WM_MOUSEHWHEEL 0x020E
Packit Service fa4841
#define WM_MOUSELAST 0x020E
Packit Service fa4841
#define WM_PARENTNOTIFY 0x0210
Packit Service fa4841
#define WM_ENTERMENULOOP 0x0211
Packit Service fa4841
#define WM_EXITMENULOOP 0x0212
Packit Service fa4841
#define WM_NEXTMENU 0x0213
Packit Service fa4841
#define WM_SIZING 0x0214
Packit Service fa4841
#define WM_CAPTURECHANGED 0x0215
Packit Service fa4841
#define WM_MOVING 0x0216
Packit Service fa4841
#define WM_POWERBROADCAST 0x0218
Packit Service fa4841
#define WM_DEVICECHANGE 0x0219
Packit Service fa4841
#define WM_MDICREATE 0x0220
Packit Service fa4841
#define WM_MDIDESTROY 0x0221
Packit Service fa4841
#define WM_MDIACTIVATE 0x0222
Packit Service fa4841
#define WM_MDIRESTORE 0x0223
Packit Service fa4841
#define WM_MDINEXT 0x0224
Packit Service fa4841
#define WM_MDIMAXIMIZE 0x0225
Packit Service fa4841
#define WM_MDITILE 0x0226
Packit Service fa4841
#define WM_MDICASCADE 0x0227
Packit Service fa4841
#define WM_MDIICONARRANGE 0x0228
Packit Service fa4841
#define WM_MDIGETACTIVE 0x0229
Packit Service fa4841
#define WM_MDISETMENU 0x0230
Packit Service fa4841
#define WM_ENTERSIZEMOVE 0x0231
Packit Service fa4841
#define WM_EXITSIZEMOVE 0x0232
Packit Service fa4841
#define WM_DROPFILES 0x0233
Packit Service fa4841
#define WM_MDIREFRESHMENU 0x0234
Packit Service fa4841
#define WM_POINTERDEVICECHANGE 0x0238
Packit Service fa4841
#define WM_POINTERDEVICEINRANGE 0x0239
Packit Service fa4841
#define WM_POINTERDEVICEOUTOFRANGE 0x023A
Packit Service fa4841
#define WM_TOUCH 0x0240
Packit Service fa4841
#define WM_NCPOINTERUPDATE 0x0241
Packit Service fa4841
#define WM_NCPOINTERDOWN 0x0242
Packit Service fa4841
#define WM_NCPOINTERUP 0x0243
Packit Service fa4841
#define WM_POINTERUPDATE 0x0245
Packit Service fa4841
#define WM_POINTERDOWN 0x0246
Packit Service fa4841
#define WM_POINTERUP 0x0247
Packit Service fa4841
#define WM_POINTERENTER 0x0249
Packit Service fa4841
#define WM_POINTERLEAVE 0x024A
Packit Service fa4841
#define WM_POINTERACTIVATE 0x024B
Packit Service fa4841
#define WM_POINTERCAPTURECHANGED 0x024C
Packit Service fa4841
#define WM_TOUCHHITTESTING 0x024D
Packit Service fa4841
#define WM_POINTERWHEEL 0x024E
Packit Service fa4841
#define WM_POINTERHWHEEL 0x024F
Packit Service fa4841
#define WM_IME_SETCONTEXT 0x0281
Packit Service fa4841
#define WM_IME_NOTIFY 0x0282
Packit Service fa4841
#define WM_IME_CONTROL 0x0283
Packit Service fa4841
#define WM_IME_COMPOSITIONFULL 0x0284
Packit Service fa4841
#define WM_IME_SELECT 0x0285
Packit Service fa4841
#define WM_IME_CHAR 0x0286
Packit Service fa4841
#define WM_IME_REQUEST 0x0288
Packit Service fa4841
#define WM_IME_KEYDOWN 0x0290
Packit Service fa4841
#define WM_IME_KEYUP 0x0291
Packit Service fa4841
#define WM_MOUSEHOVER 0x02A1
Packit Service fa4841
#define WM_MOUSELEAVE 0x02A3
Packit Service fa4841
#define WM_NCMOUSEHOVER 0x02A0
Packit Service fa4841
#define WM_NCMOUSELEAVE 0x02A2
Packit Service fa4841
#define WM_WTSSESSION_CHANGE 0x02B1
Packit Service fa4841
#define WM_TABLET_FIRST 0x02c0
Packit Service fa4841
#define WM_TABLET_LAST 0x02df
Packit Service fa4841
#define WM_CUT 0x0300
Packit Service fa4841
#define WM_COPY 0x0301
Packit Service fa4841
#define WM_PASTE 0x0302
Packit Service fa4841
#define WM_CLEAR 0x0303
Packit Service fa4841
#define WM_UNDO 0x0304
Packit Service fa4841
#define WM_RENDERFORMAT 0x0305
Packit Service fa4841
#define WM_RENDERALLFORMATS 0x0306
Packit Service fa4841
#define WM_DESTROYCLIPBOARD 0x0307
Packit Service fa4841
#define WM_DRAWCLIPBOARD 0x0308
Packit Service fa4841
#define WM_PAINTCLIPBOARD 0x0309
Packit Service fa4841
#define WM_VSCROLLCLIPBOARD 0x030A
Packit Service fa4841
#define WM_SIZECLIPBOARD 0x030B
Packit Service fa4841
#define WM_ASKCBFORMATNAME 0x030C
Packit Service fa4841
#define WM_CHANGECBCHAIN 0x030D
Packit Service fa4841
#define WM_HSCROLLCLIPBOARD 0x030E
Packit Service fa4841
#define WM_QUERYNEWPALETTE 0x030F
Packit Service fa4841
#define WM_PALETTEISCHANGING 0x0310
Packit Service fa4841
#define WM_PALETTECHANGED 0x0311
Packit Service fa4841
#define WM_HOTKEY 0x0312
Packit Service fa4841
#define WM_PRINT 0x0317
Packit Service fa4841
#define WM_PRINTCLIENT 0x0318
Packit Service fa4841
#define WM_APPCOMMAND 0x0319
Packit Service fa4841
#define WM_THEMECHANGED 0x031A
Packit Service fa4841
#define WM_CLIPBOARDUPDATE 0x031D
Packit Service fa4841
#define WM_DWMCOMPOSITIONCHANGED 0x031E
Packit Service fa4841
#define WM_DWMNCRENDERINGCHANGED 0x031F
Packit Service fa4841
#define WM_DWMCOLORIZATIONCOLORCHANGED 0x0320
Packit Service fa4841
#define WM_DWMWINDOWMAXIMIZEDCHANGE 0x0321
Packit Service fa4841
#define WM_DWMSENDICONICTHUMBNAIL 0x0323
Packit Service fa4841
#define WM_DWMSENDICONICLIVEPREVIEWBITMAP 0x0326
Packit Service fa4841
#define WM_GETTITLEBARINFOEX 0x033F
Packit Service fa4841
#define WM_HANDHELDFIRST 0x0358
Packit Service fa4841
#define WM_HANDHELDLAST 0x035F
Packit Service fa4841
#define WM_AFXFIRST 0x0360
Packit Service fa4841
#define WM_AFXLAST 0x037F
Packit Service fa4841
#define WM_PENWINFIRST 0x0380
Packit Service fa4841
#define WM_PENWINLAST 0x038F
Packit Service fa4841
#define WM_APP 0x8000
Packit Service fa4841
#define WM_USER 0x0400
Packit Service fa4841
Packit Service fa4841
#define HWND_BROADCAST ((HWND)0xFFFF)
Packit Service fa4841
#define HWND_MESSAGE ((HWND)-3)
Packit Service fa4841
#define HWND_DESKTOP ((HWND)0)
Packit Service fa4841
#define HWND_TOP ((HWND)0)
Packit Service fa4841
#define HWND_BOTTOM ((HWND)1)
Packit Service fa4841
#define HWND_TOPMOST ((HWND)-1)
Packit Service fa4841
#define HWND_NOTOPMOST ((HWND)-2)
Packit Service fa4841
Packit Service fa4841
typedef WORD ATOM;
Packit Service fa4841
typedef UINT_PTR WPARAM;
Packit Service fa4841
typedef LONG_PTR LPARAM;
Packit Service fa4841
typedef LONG_PTR LRESULT;
Packit Service fa4841
Packit Service fa4841
typedef FARPROC SENDASYNCPROC;
Packit Service fa4841
typedef LRESULT(CALLBACK* WNDPROC)(HWND, UINT, WPARAM, LPARAM);
Packit Service fa4841
Packit Service fa4841
typedef struct tagWNDCLASSA
Packit Service fa4841
{
Packit Service fa4841
	UINT style;
Packit Service fa4841
	WNDPROC lpfnWndProc;
Packit Service fa4841
	int cbClsExtra;
Packit Service fa4841
	int cbWndExtra;
Packit Service fa4841
	HINSTANCE hInstance;
Packit Service fa4841
	HICON hIcon;
Packit Service fa4841
	HCURSOR hCursor;
Packit Service fa4841
	HBRUSH hbrBackground;
Packit Service fa4841
	LPCSTR lpszMenuName;
Packit Service fa4841
	LPCSTR lpszClassName;
Packit Service fa4841
} WNDCLASSA, *PWNDCLASSA, NEAR *NPWNDCLASSA, FAR *LPWNDCLASSA;
Packit Service fa4841
Packit Service fa4841
typedef struct tagWNDCLASSW
Packit Service fa4841
{
Packit Service fa4841
	UINT style;
Packit Service fa4841
	WNDPROC lpfnWndProc;
Packit Service fa4841
	int cbClsExtra;
Packit Service fa4841
	int cbWndExtra;
Packit Service fa4841
	HINSTANCE hInstance;
Packit Service fa4841
	HICON hIcon;
Packit Service fa4841
	HCURSOR hCursor;
Packit Service fa4841
	HBRUSH hbrBackground;
Packit Service fa4841
	LPCWSTR lpszMenuName;
Packit Service fa4841
	LPCWSTR lpszClassName;
Packit Service fa4841
} WNDCLASSW, *PWNDCLASSW, NEAR *NPWNDCLASSW, FAR *LPWNDCLASSW;
Packit Service fa4841
Packit Service fa4841
typedef struct tagWNDCLASSEXA
Packit Service fa4841
{
Packit Service fa4841
	UINT cbSize;
Packit Service fa4841
	UINT style;
Packit Service fa4841
	WNDPROC lpfnWndProc;
Packit Service fa4841
	int cbClsExtra;
Packit Service fa4841
	int cbWndExtra;
Packit Service fa4841
	HINSTANCE hInstance;
Packit Service fa4841
	HICON hIcon;
Packit Service fa4841
	HCURSOR hCursor;
Packit Service fa4841
	HBRUSH hbrBackground;
Packit Service fa4841
	LPCSTR lpszMenuName;
Packit Service fa4841
	LPCSTR lpszClassName;
Packit Service fa4841
	HICON hIconSm;
Packit Service fa4841
} WNDCLASSEXA, *PWNDCLASSEXA, NEAR *NPWNDCLASSEXA, FAR *LPWNDCLASSEXA;
Packit Service fa4841
Packit Service fa4841
typedef struct tagWNDCLASSEXW
Packit Service fa4841
{
Packit Service fa4841
	UINT cbSize;
Packit Service fa4841
	UINT style;
Packit Service fa4841
	WNDPROC lpfnWndProc;
Packit Service fa4841
	int cbClsExtra;
Packit Service fa4841
	int cbWndExtra;
Packit Service fa4841
	HINSTANCE hInstance;
Packit Service fa4841
	HICON hIcon;
Packit Service fa4841
	HCURSOR hCursor;
Packit Service fa4841
	HBRUSH hbrBackground;
Packit Service fa4841
	LPCWSTR lpszMenuName;
Packit Service fa4841
	LPCWSTR lpszClassName;
Packit Service fa4841
	HICON hIconSm;
Packit Service fa4841
} WNDCLASSEXW, *PWNDCLASSEXW, NEAR *NPWNDCLASSEXW, FAR *LPWNDCLASSEXW;
Packit Service fa4841
Packit Service fa4841
#ifdef UNICODE
Packit Service fa4841
typedef WNDCLASSW WNDCLASS;
Packit Service fa4841
typedef PWNDCLASSW PWNDCLASS;
Packit Service fa4841
typedef NPWNDCLASSW NPWNDCLASS;
Packit Service fa4841
typedef LPWNDCLASSW LPWNDCLASS;
Packit Service fa4841
typedef WNDCLASSEXW WNDCLASSEX;
Packit Service fa4841
typedef PWNDCLASSEXW PWNDCLASSEX;
Packit Service fa4841
typedef NPWNDCLASSEXW NPWNDCLASSEX;
Packit Service fa4841
typedef LPWNDCLASSEXW LPWNDCLASSEX;
Packit Service fa4841
#else
Packit Service fa4841
typedef WNDCLASSA WNDCLASS;
Packit Service fa4841
typedef PWNDCLASSA PWNDCLASS;
Packit Service fa4841
typedef NPWNDCLASSA NPWNDCLASS;
Packit Service fa4841
typedef LPWNDCLASSA LPWNDCLASS;
Packit Service fa4841
typedef WNDCLASSEXA WNDCLASSEX;
Packit Service fa4841
typedef PWNDCLASSEXA PWNDCLASSEX;
Packit Service fa4841
typedef NPWNDCLASSEXA NPWNDCLASSEX;
Packit Service fa4841
typedef LPWNDCLASSEXA LPWNDCLASSEX;
Packit Service fa4841
#endif
Packit Service fa4841
Packit Service fa4841
typedef struct tagPOINT
Packit Service fa4841
{
Packit Service fa4841
	LONG x;
Packit Service fa4841
	LONG y;
Packit Service fa4841
} POINT, *PPOINT, NEAR *NPPOINT, FAR *LPPOINT;
Packit Service fa4841
Packit Service fa4841
typedef struct tagMSG
Packit Service fa4841
{
Packit Service fa4841
	HWND hwnd;
Packit Service fa4841
	UINT message;
Packit Service fa4841
	WPARAM wParam;
Packit Service fa4841
	LPARAM lParam;
Packit Service fa4841
	DWORD time;
Packit Service fa4841
	POINT pt;
Packit Service fa4841
} MSG, *PMSG, NEAR *NPMSG, FAR *LPMSG;
Packit Service fa4841
Packit Service fa4841
typedef struct tagCOPYDATASTRUCT
Packit Service fa4841
{
Packit Service fa4841
	ULONG_PTR dwData;
Packit Service fa4841
	DWORD cbData;
Packit Service fa4841
	PVOID lpData;
Packit Service fa4841
} COPYDATASTRUCT, *PCOPYDATASTRUCT;
Packit Service fa4841
Packit Service fa4841
typedef struct tagWTSSESSION_NOTIFICATION
Packit Service fa4841
{
Packit Service fa4841
	DWORD cbSize;
Packit Service fa4841
	DWORD dwSessionId;
Packit Service fa4841
} WTSSESSION_NOTIFICATION, *PWTSSESSION_NOTIFICATION;
Packit Service fa4841
Packit Service fa4841
#define WTS_CONSOLE_CONNECT 0x1
Packit Service fa4841
#define WTS_CONSOLE_DISCONNECT 0x2
Packit Service fa4841
#define WTS_REMOTE_CONNECT 0x3
Packit Service fa4841
#define WTS_REMOTE_DISCONNECT 0x4
Packit Service fa4841
#define WTS_SESSION_LOGON 0x5
Packit Service fa4841
#define WTS_SESSION_LOGOFF 0x6
Packit Service fa4841
#define WTS_SESSION_LOCK 0x7
Packit Service fa4841
#define WTS_SESSION_UNLOCK 0x8
Packit Service fa4841
#define WTS_SESSION_REMOTE_CONTROL 0x9
Packit Service fa4841
#define WTS_SESSION_CREATE 0xA
Packit Service fa4841
#define WTS_SESSION_TERMINATE 0xB
Packit Service fa4841
Packit Service fa4841
#ifdef __cplusplus
Packit Service fa4841
extern "C"
Packit Service fa4841
{
Packit Service fa4841
#endif
Packit Service fa4841
Packit Service fa4841
	WINPR_API WORD WINAPI GetWindowWord(HWND hWnd, int nIndex);
Packit Service fa4841
Packit Service fa4841
	WINPR_API WORD WINAPI SetWindowWord(HWND hWnd, int nIndex, WORD wNewWord);
Packit Service fa4841
Packit Service fa4841
	WINPR_API LONG WINAPI GetWindowLongA(HWND hWnd, int nIndex);
Packit Service fa4841
	WINPR_API LONG WINAPI GetWindowLongW(HWND hWnd, int nIndex);
Packit Service fa4841
Packit Service fa4841
	WINPR_API LONG WINAPI SetWindowLongA(HWND hWnd, int nIndex, LONG dwNewLong);
Packit Service fa4841
	WINPR_API LONG WINAPI SetWindowLongW(HWND hWnd, int nIndex, LONG dwNewLong);
Packit Service fa4841
Packit Service fa4841
	WINPR_API LONG_PTR WINAPI GetWindowLongPtrA(HWND hWnd, int nIndex);
Packit Service fa4841
	WINPR_API LONG_PTR WINAPI GetWindowLongPtrW(HWND hWnd, int nIndex);
Packit Service fa4841
Packit Service fa4841
	WINPR_API LONG_PTR WINAPI SetWindowLongPtrA(HWND hWnd, int nIndex, LONG_PTR dwNewLong);
Packit Service fa4841
	WINPR_API LONG_PTR WINAPI SetWindowLongPtrW(HWND hWnd, int nIndex, LONG_PTR dwNewLong);
Packit Service fa4841
Packit Service fa4841
	WINPR_API BOOL WINAPI DestroyWindow(HWND hWnd);
Packit Service fa4841
Packit Service fa4841
	WINPR_API VOID WINAPI PostQuitMessage(int nExitCode);
Packit Service fa4841
Packit Service fa4841
	WINPR_API ATOM WINAPI RegisterClassA(CONST WNDCLASSA* lpWndClass);
Packit Service fa4841
	WINPR_API ATOM WINAPI RegisterClassW(CONST WNDCLASSW* lpWndClass);
Packit Service fa4841
Packit Service fa4841
	WINPR_API ATOM WINAPI RegisterClassExA(CONST WNDCLASSEXA* lpwcx);
Packit Service fa4841
	WINPR_API ATOM WINAPI RegisterClassExW(CONST WNDCLASSEXW* lpwcx);
Packit Service fa4841
Packit Service fa4841
	WINPR_API BOOL WINAPI UnregisterClassA(LPCSTR lpClassName, HINSTANCE hInstance);
Packit Service fa4841
	WINPR_API BOOL WINAPI UnregisterClassW(LPCWSTR lpClassName, HINSTANCE hInstance);
Packit Service fa4841
Packit Service fa4841
	WINPR_API HWND WINAPI CreateWindowExA(DWORD dwExStyle, LPCSTR lpClassName, LPCSTR lpWindowName,
Packit Service fa4841
	                                      DWORD dwStyle, int X, int Y, int nWidth, int nHeight,
Packit Service fa4841
	                                      HWND hWndParent, HMENU hMenu, HINSTANCE hInstance,
Packit Service fa4841
	                                      LPVOID lpParam);
Packit Service fa4841
	WINPR_API HWND WINAPI CreateWindowExW(DWORD dwExStyle, LPCWSTR lpClassName,
Packit Service fa4841
	                                      LPCWSTR lpWindowName, DWORD dwStyle, int X, int Y,
Packit Service fa4841
	                                      int nWidth, int nHeight, HWND hWndParent, HMENU hMenu,
Packit Service fa4841
	                                      HINSTANCE hInstance, LPVOID lpParam);
Packit Service fa4841
Packit Service fa4841
#ifndef WINPR_NO_CREATE_WINDOW
Packit Service fa4841
#define CreateWindowA(lpClassName, lpWindowName, dwStyle, x, y, nWidth, nHeight, hWndParent,   \
Packit Service fa4841
                      hMenu, hInstance, lpParam)                                               \
Packit Service fa4841
	CreateWindowExA(0L, lpClassName, lpWindowName, dwStyle, x, y, nWidth, nHeight, hWndParent, \
Packit Service fa4841
	                hMenu, hInstance, lpParam)
Packit Service fa4841
#define CreateWindowW(lpClassName, lpWindowName, dwStyle, x, y, nWidth, nHeight, hWndParent,   \
Packit Service fa4841
                      hMenu, hInstance, lpParam)                                               \
Packit Service fa4841
	CreateWindowExW(0L, lpClassName, lpWindowName, dwStyle, x, y, nWidth, nHeight, hWndParent, \
Packit Service fa4841
	                hMenu, hInstance, lpParam)
Packit Service fa4841
#endif
Packit Service fa4841
Packit Service fa4841
	WINPR_API HWND WINAPI FindWindowA(LPCSTR lpClassName, LPCSTR lpWindowName);
Packit Service fa4841
	WINPR_API HWND WINAPI FindWindowW(LPCWSTR lpClassName, LPCWSTR lpWindowName);
Packit Service fa4841
Packit Service fa4841
	WINPR_API HWND WINAPI FindWindowExA(HWND hWndParent, HWND hWndChildAfter, LPCSTR lpszClass,
Packit Service fa4841
	                                    LPCSTR lpszWindow);
Packit Service fa4841
	WINPR_API HWND WINAPI FindWindowExW(HWND hWndParent, HWND hWndChildAfter, LPCWSTR lpszClass,
Packit Service fa4841
	                                    LPCWSTR lpszWindow);
Packit Service fa4841
Packit Service fa4841
	WINPR_API BOOL WINAPI GetMessageA(LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin,
Packit Service fa4841
	                                  UINT wMsgFilterMax);
Packit Service fa4841
	WINPR_API BOOL WINAPI GetMessageW(LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin,
Packit Service fa4841
	                                  UINT wMsgFilterMax);
Packit Service fa4841
Packit Service fa4841
	WINPR_API DWORD WINAPI GetMessagePos(VOID);
Packit Service fa4841
Packit Service fa4841
	WINPR_API LONG WINAPI GetMessageTime(VOID);
Packit Service fa4841
Packit Service fa4841
	WINPR_API LPARAM WINAPI GetMessageExtraInfo(VOID);
Packit Service fa4841
Packit Service fa4841
	WINPR_API LPARAM WINAPI SetMessageExtraInfo(LPARAM lParam);
Packit Service fa4841
Packit Service fa4841
	WINPR_API BOOL WINAPI SetMessageQueue(int cMessagesMax);
Packit Service fa4841
Packit Service fa4841
	WINPR_API LRESULT WINAPI SendMessageA(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam);
Packit Service fa4841
	WINPR_API LRESULT WINAPI SendMessageW(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam);
Packit Service fa4841
Packit Service fa4841
	WINPR_API LRESULT WINAPI SendMessageTimeoutA(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam,
Packit Service fa4841
	                                             UINT fuFlags, UINT uTimeout,
Packit Service fa4841
	                                             PDWORD_PTR lpdwResult);
Packit Service fa4841
	WINPR_API LRESULT WINAPI SendMessageTimeoutW(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam,
Packit Service fa4841
	                                             UINT fuFlags, UINT uTimeout,
Packit Service fa4841
	                                             PDWORD_PTR lpdwResult);
Packit Service fa4841
Packit Service fa4841
	WINPR_API BOOL WINAPI SendNotifyMessageA(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam);
Packit Service fa4841
	WINPR_API BOOL WINAPI SendNotifyMessageW(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam);
Packit Service fa4841
Packit Service fa4841
	WINPR_API BOOL WINAPI SendMessageCallbackA(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam,
Packit Service fa4841
	                                           SENDASYNCPROC lpResultCallBack, ULONG_PTR dwData);
Packit Service fa4841
	WINPR_API BOOL WINAPI SendMessageCallbackW(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam,
Packit Service fa4841
	                                           SENDASYNCPROC lpResultCallBack, ULONG_PTR dwData);
Packit Service fa4841
Packit Service fa4841
	WINPR_API BOOL WINAPI TranslateMessage(CONST MSG* lpMsg);
Packit Service fa4841
Packit Service fa4841
	WINPR_API LRESULT WINAPI DispatchMessageA(CONST MSG* lpMsg);
Packit Service fa4841
	WINPR_API LRESULT WINAPI DispatchMessageW(CONST MSG* lpMsg);
Packit Service fa4841
Packit Service fa4841
	WINPR_API BOOL WINAPI PeekMessageA(LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin,
Packit Service fa4841
	                                   UINT wMsgFilterMax, UINT wRemoveMsg);
Packit Service fa4841
	WINPR_API BOOL WINAPI PeekMessageW(LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin,
Packit Service fa4841
	                                   UINT wMsgFilterMax, UINT wRemoveMsg);
Packit Service fa4841
Packit Service fa4841
	WINPR_API BOOL WINAPI ReplyMessage(LRESULT lResult);
Packit Service fa4841
Packit Service fa4841
	WINPR_API BOOL WINAPI WaitMessage(VOID);
Packit Service fa4841
Packit Service fa4841
	WINPR_API LRESULT WINAPI CallWindowProcA(WNDPROC lpPrevWndFunc, HWND hWnd, UINT Msg,
Packit Service fa4841
	                                         WPARAM wParam, LPARAM lParam);
Packit Service fa4841
	WINPR_API LRESULT WINAPI CallWindowProcW(WNDPROC lpPrevWndFunc, HWND hWnd, UINT Msg,
Packit Service fa4841
	                                         WPARAM wParam, LPARAM lParam);
Packit Service fa4841
Packit Service fa4841
	WINPR_API LRESULT WINAPI DefWindowProcA(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam);
Packit Service fa4841
	WINPR_API LRESULT WINAPI DefWindowProcW(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam);
Packit Service fa4841
Packit Service fa4841
#ifdef UNICODE
Packit Service fa4841
#define GetWindowLong GetWindowLongW
Packit Service fa4841
#define SetWindowLong SetWindowLongW
Packit Service fa4841
#define GetWindowLongPtr GetWindowLongPtrW
Packit Service fa4841
#define SetWindowLongPtr SetWindowLongPtrW
Packit Service fa4841
#define RegisterClass RegisterClassW
Packit Service fa4841
#define RegisterClassEx RegisterClassExW
Packit Service fa4841
#define UnregisterClass UnregisterClassW
Packit Service fa4841
#ifndef WINPR_NO_CREATE_WINDOW
Packit Service fa4841
#define CreateWindow CreateWindowW
Packit Service fa4841
#endif
Packit Service fa4841
#define CreateWindowEx CreateWindowExW
Packit Service fa4841
#define FindWindow FindWindowW
Packit Service fa4841
#define FindWindowEx FindWindowExW
Packit Service fa4841
#define GetMessage GetMessageW
Packit Service fa4841
#define SendMessage SendMessageW
Packit Service fa4841
#define SendMessageTimeout SendMessageTimeoutW
Packit Service fa4841
#define SendNotifyMessage SendNotifyMessageW
Packit Service fa4841
#define SendMessageCallback SendMessageCallbackW
Packit Service fa4841
#define DispatchMessage DispatchMessageW
Packit Service fa4841
#define PeekMessage PeekMessageW
Packit Service fa4841
#define CallWindowProc CallWindowProcW
Packit Service fa4841
#define DefWindowProc DefWindowProcW
Packit Service fa4841
#else
Packit Service fa4841
#define GetWindowLong GetWindowLongA
Packit Service fa4841
#define SetWindowLong SetWindowLongA
Packit Service fa4841
#define GetWindowLongPtr GetWindowLongPtrA
Packit Service fa4841
#define SetWindowLongPtr SetWindowLongPtrA
Packit Service fa4841
#define RegisterClass RegisterClassA
Packit Service fa4841
#define RegisterClassEx RegisterClassExA
Packit Service fa4841
#define UnregisterClass UnregisterClassA
Packit Service fa4841
#ifndef WINPR_NO_CREATE_WINDOW
Packit Service fa4841
#define CreateWindow CreateWindowA
Packit Service fa4841
#endif
Packit Service fa4841
#define CreateWindowEx CreateWindowExA
Packit Service fa4841
#define FindWindow FindWindowA
Packit Service fa4841
#define FindWindowEx FindWindowExA
Packit Service fa4841
#define GetMessage GetMessageA
Packit Service fa4841
#define SendMessage SendMessageA
Packit Service fa4841
#define SendMessageTimeout SendMessageTimeoutA
Packit Service fa4841
#define SendNotifyMessage SendNotifyMessageA
Packit Service fa4841
#define SendMessageCallback SendMessageCallbackA
Packit Service fa4841
#define DispatchMessage DispatchMessageA
Packit Service fa4841
#define PeekMessage PeekMessageA
Packit Service fa4841
#define CallWindowProc CallWindowProcA
Packit Service fa4841
#define DefWindowProc DefWindowProcA
Packit Service fa4841
#endif
Packit Service fa4841
Packit Service fa4841
#ifdef __cplusplus
Packit Service fa4841
}
Packit Service fa4841
#endif
Packit Service fa4841
Packit Service fa4841
#endif
Packit Service fa4841
Packit Service fa4841
#ifndef WTS_SESSION_CREATE
Packit Service fa4841
#define WTS_SESSION_CREATE 0xA
Packit Service fa4841
#endif
Packit Service fa4841
Packit Service fa4841
#ifndef WTS_SESSION_TERMINATE
Packit Service fa4841
#define WTS_SESSION_TERMINATE 0xB
Packit Service fa4841
#endif
Packit Service fa4841
Packit Service fa4841
#endif /* WINPR_WND_H */