mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-14 08:09:18 +02:00
+ added the win16api window creation/destroy functions
git-svn-id: trunk@31733 -
This commit is contained in:
parent
432248cbf1
commit
e01d57cea3
@ -508,6 +508,13 @@ const
|
|||||||
{ Class field offsets for GetClassLong() and GetClassWord() }
|
{ Class field offsets for GetClassLong() and GetClassWord() }
|
||||||
GCW_ATOM = (-32);
|
GCW_ATOM = (-32);
|
||||||
|
|
||||||
|
{ Window creation/destroy }
|
||||||
|
|
||||||
|
{ Window Styles }
|
||||||
|
WS_EX_TOPMOST = $00000008;
|
||||||
|
WS_EX_ACCEPTFILES = $00000010;
|
||||||
|
WS_EX_TRANSPARENT = $00000020;
|
||||||
|
|
||||||
function GetFreeSystemResources(SysResource: UINT): UINT; external 'USER';
|
function GetFreeSystemResources(SysResource: UINT): UINT; external 'USER';
|
||||||
|
|
||||||
procedure LogError(err: UINT; lpInfo: FarPointer); external 'KERNEL';
|
procedure LogError(err: UINT; lpInfo: FarPointer); external 'KERNEL';
|
||||||
|
@ -811,3 +811,40 @@ function GetClassWord(hwnd: HWND; offset: SmallInt): WORD; external 'USER';
|
|||||||
function SetClassWord(hwnd: HWND; nIndex: SmallInt; wNewWord: WORD): WORD; external 'USER';
|
function SetClassWord(hwnd: HWND; nIndex: SmallInt; wNewWord: WORD): WORD; external 'USER';
|
||||||
function GetClassLong(hwnd: HWND; offset: SmallInt): LONG; external 'USER';
|
function GetClassLong(hwnd: HWND; offset: SmallInt): LONG; external 'USER';
|
||||||
function SetClassLong(hwnd: HWND; nIndex: SmallInt; nVal: LONG): LONG; external 'USER';
|
function SetClassLong(hwnd: HWND; nIndex: SmallInt; nVal: LONG): LONG; external 'USER';
|
||||||
|
|
||||||
|
{ Window creation/destroy }
|
||||||
|
|
||||||
|
function IsWindow(hwnd: HWND): BOOL; external 'USER';
|
||||||
|
|
||||||
|
function CreateWindowEx(dwExStyle: DWORD; lpszClassName, lpszWindowName: LPCSTR; dwStyle: DWORD; x, y, nWidth, nHeight: SmallInt; hwndParent: HWND; hmenu: HMENU; hinst: HINST; lpvCreateParams: FarPointer): HWND; external 'USER';
|
||||||
|
function CreateWindow(lpszClassName, lpszWindowName: LPCSTR; dwStyle: DWORD; x, y, nWidth, nHeight: SmallInt; hwndParent: HWND; hmenu: HMENU; hinst: HINST; lpvParam: FarPointer): HWND; external 'USER';
|
||||||
|
|
||||||
|
function DestroyWindow(hwnd: HWND): BOOL; external 'USER';
|
||||||
|
|
||||||
|
{ Basic window attributes }
|
||||||
|
|
||||||
|
function GetWindowTask(hwnd: HWND): HTASK; external 'USER';
|
||||||
|
|
||||||
|
function IsChild(hwndParent, hwndChild: HWND): BOOL; external 'USER';
|
||||||
|
|
||||||
|
function GetParent(hwnd: HWND): HWND; external 'USER';
|
||||||
|
function SetParent(hwndChild, hwndNewParent: HWND): HWND; external 'USER';
|
||||||
|
|
||||||
|
function IsWindowVisible(hwnd: HWND): BOOL; external 'USER';
|
||||||
|
|
||||||
|
function ShowWindow(hwnd: HWND; nCmdShow: SmallInt): BOOL; external 'USER';
|
||||||
|
|
||||||
|
{ Enabled state }
|
||||||
|
function EnableWindow(hwnd: HWND; fEnable: BOOL): BOOL; external 'USER';
|
||||||
|
function IsWindowEnabled(hwnd: HWND): BOOL; external 'USER';
|
||||||
|
|
||||||
|
{ Window text }
|
||||||
|
procedure SetWindowText(hwnd: HWND; lpsz: LPCSTR); external 'USER';
|
||||||
|
function GetWindowText(hwnd: HWND; lpsz: LPSTR; cbMax: SmallInt): SmallInt; external 'USER';
|
||||||
|
function GetWindowTextLength(hwnd: HWND): SmallInt; external 'USER';
|
||||||
|
|
||||||
|
{ Window words }
|
||||||
|
function GetWindowWord(hwnd: HWND; nOffset: SmallInt): WORD; external 'USER';
|
||||||
|
function SetWindowWord(hwnd: HWND; nOffset: SmallInt; nVal: WORD): WORD; external 'USER';
|
||||||
|
function GetWindowLong(hwnd: HWND; nOffset: SmallInt): LONG; external 'USER';
|
||||||
|
function SetWindowLong(hwnd: HWND; nOffset: SmallInt; nVal: LONG): LONG; external 'USER';
|
||||||
|
@ -1414,3 +1414,136 @@ const
|
|||||||
GCW_CBCLSEXTRA = (-20);
|
GCW_CBCLSEXTRA = (-20);
|
||||||
GCL_WNDPROC = (-24);
|
GCL_WNDPROC = (-24);
|
||||||
GCW_STYLE = (-26);
|
GCW_STYLE = (-26);
|
||||||
|
|
||||||
|
{ Window creation/destroy }
|
||||||
|
|
||||||
|
{ Window Styles }
|
||||||
|
|
||||||
|
{ Basic window types }
|
||||||
|
WS_OVERLAPPED = $00000000;
|
||||||
|
WS_POPUP = $80000000;
|
||||||
|
WS_CHILD = $40000000;
|
||||||
|
|
||||||
|
{ Clipping styles }
|
||||||
|
WS_CLIPSIBLINGS = $04000000;
|
||||||
|
WS_CLIPCHILDREN = $02000000;
|
||||||
|
|
||||||
|
{ Generic window states }
|
||||||
|
WS_VISIBLE = $10000000;
|
||||||
|
WS_DISABLED = $08000000;
|
||||||
|
|
||||||
|
{ Main window states }
|
||||||
|
WS_MINIMIZE = $20000000;
|
||||||
|
WS_MAXIMIZE = $01000000;
|
||||||
|
|
||||||
|
{ Main window styles }
|
||||||
|
WS_CAPTION = $00C00000; { WS_BORDER | WS_DLGFRAME }
|
||||||
|
WS_BORDER = $00800000;
|
||||||
|
WS_DLGFRAME = $00400000;
|
||||||
|
WS_VSCROLL = $00200000;
|
||||||
|
WS_HSCROLL = $00100000;
|
||||||
|
WS_SYSMENU = $00080000;
|
||||||
|
WS_THICKFRAME = $00040000;
|
||||||
|
WS_MINIMIZEBOX = $00020000;
|
||||||
|
WS_MAXIMIZEBOX = $00010000;
|
||||||
|
|
||||||
|
{ Control window styles }
|
||||||
|
WS_GROUP = $00020000;
|
||||||
|
WS_TABSTOP = $00010000;
|
||||||
|
|
||||||
|
{ Common Window Styles }
|
||||||
|
WS_OVERLAPPEDWINDOW = (WS_OVERLAPPED or WS_CAPTION or WS_SYSMENU or WS_THICKFRAME or WS_MINIMIZEBOX or WS_MAXIMIZEBOX);
|
||||||
|
WS_POPUPWINDOW = (WS_POPUP or WS_BORDER or WS_SYSMENU);
|
||||||
|
WS_CHILDWINDOW = (WS_CHILD);
|
||||||
|
|
||||||
|
{ Extended Window Styles }
|
||||||
|
WS_EX_DLGMODALFRAME = $00000001;
|
||||||
|
WS_EX_NOPARENTNOTIFY = $00000004;
|
||||||
|
|
||||||
|
{ Obsolete style names }
|
||||||
|
WS_TILED = WS_OVERLAPPED;
|
||||||
|
WS_ICONIC = WS_MINIMIZE;
|
||||||
|
WS_SIZEBOX = WS_THICKFRAME;
|
||||||
|
WS_TILEDWINDOW = WS_OVERLAPPEDWINDOW;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
{ Special value for CreateWindow, et al. }
|
||||||
|
HWND_DESKTOP = HWND(0);
|
||||||
|
|
||||||
|
WM_CREATE = $0001;
|
||||||
|
WM_NCCREATE = $0081;
|
||||||
|
|
||||||
|
type
|
||||||
|
{ WM_CREATE/WM_NCCREATE lParam struct }
|
||||||
|
PCREATESTRUCT = ^CREATESTRUCT;
|
||||||
|
LPCREATESTRUCT = ^CREATESTRUCT; far;
|
||||||
|
CREATESTRUCT = record
|
||||||
|
lpCreateParams: FarPointer;
|
||||||
|
hInstance: HINST;
|
||||||
|
hMenu: HMENU;
|
||||||
|
hwndParent: HWND;
|
||||||
|
cy: SmallInt;
|
||||||
|
cx: SmallInt;
|
||||||
|
y: SmallInt;
|
||||||
|
x: SmallInt;
|
||||||
|
style: LONG;
|
||||||
|
lpszName: LPCSTR;
|
||||||
|
lpszClass: LPCSTR;
|
||||||
|
dwExStyle: DWORD;
|
||||||
|
end;
|
||||||
|
TCreateStruct = CREATESTRUCT;
|
||||||
|
|
||||||
|
const
|
||||||
|
WM_DESTROY = $0002;
|
||||||
|
WM_NCDESTROY = $0082;
|
||||||
|
|
||||||
|
SW_HIDE = 0;
|
||||||
|
SW_SHOWNORMAL = 1;
|
||||||
|
SW_NORMAL = 1;
|
||||||
|
SW_SHOWMINIMIZED = 2;
|
||||||
|
SW_SHOWMAXIMIZED = 3;
|
||||||
|
SW_MAXIMIZE = 3;
|
||||||
|
SW_SHOWNOACTIVATE = 4;
|
||||||
|
SW_SHOW = 5;
|
||||||
|
SW_MINIMIZE = 6;
|
||||||
|
SW_SHOWMINNOACTIVE = 7;
|
||||||
|
SW_SHOWNA = 8;
|
||||||
|
SW_RESTORE = 9;
|
||||||
|
|
||||||
|
{ Obsolete ShowWindow() command names }
|
||||||
|
HIDE_WINDOW = 0;
|
||||||
|
SHOW_OPENWINDOW = 1;
|
||||||
|
SHOW_ICONWINDOW = 2;
|
||||||
|
SHOW_FULLSCREEN = 3;
|
||||||
|
SHOW_OPENNOACTIVATE = 4;
|
||||||
|
|
||||||
|
WM_SHOWWINDOW = $0018;
|
||||||
|
|
||||||
|
{ WM_SHOWWINDOW wParam codes }
|
||||||
|
SW_PARENTCLOSING = 1;
|
||||||
|
SW_OTHERMAXIMIZED = 2;
|
||||||
|
SW_PARENTOPENING = 3;
|
||||||
|
SW_OTHERRESTORED = 4;
|
||||||
|
|
||||||
|
{ Obsolete constant names }
|
||||||
|
SW_OTHERZOOM = SW_OTHERMAXIMIZED;
|
||||||
|
SW_OTHERUNZOOM = SW_OTHERRESTORED;
|
||||||
|
|
||||||
|
WM_SETREDRAW = $000B;
|
||||||
|
|
||||||
|
{ Enabled state }
|
||||||
|
WM_ENABLE = $000A;
|
||||||
|
|
||||||
|
{ Window text }
|
||||||
|
WM_SETTEXT = $000C;
|
||||||
|
WM_GETTEXT = $000D;
|
||||||
|
WM_GETTEXTLENGTH = $000E;
|
||||||
|
|
||||||
|
{ Window field offsets for GetWindowLong() and GetWindowWord() }
|
||||||
|
GWL_WNDPROC = (-4);
|
||||||
|
GWW_HINSTANCE = (-6);
|
||||||
|
GWW_HWNDPARENT = (-8);
|
||||||
|
GWW_ID = (-12);
|
||||||
|
GWL_STYLE = (-16);
|
||||||
|
GWL_EXSTYLE = (-20);
|
||||||
|
Loading…
Reference in New Issue
Block a user