' Copyright ⌐ 1997 by Desaware Inc. All Rights Reserved.
Option Explicit
Type RECT
Left As Long
Top As Long
Right As Long
Bottom As Long
End Type
Type SMALLRECT
Left As Integer
Top As Integer
Right As Integer
Bottom As Integer
End Type
Type POINTAPI
x As Long
y As Long
End Type
Type SIZE
cx As Long
cy As Long
End Type
Type WNDCLASS
style As Long
lpfnwndproc As Long
cbClsextra As Long
cbWndExtra2 As Long
hInstance As Long
hIcon As Long
hCursor As Long
hbrBackground As Long
lpszMenuName As Long
lpszClassName As Long
End Type
Type WNDCLASSEX
cbSize As Long
style As Long
lpfnwndproc As Long
cbClsextra As Long
cbWndExtra2 As Long
hInstance As Long
hIcon As Long
hCursor As Long
hbrBackground As Long
lpszMenuName As Long
lpszClassName As Long
hIconSm As Long
End Type
Type WINDOWPLACEMENT
Length As Long
flags As Long
showCmd As Long
ptMinPosition As POINTAPI
ptMaxPosition As POINTAPI
rcNormalPosition As RECT
End Type
Public Const GWL_WNDPROC = (-4)
Public Const GWL_HINSTANCE = (-6)
Public Const GWL_HWNDPARENT = (-8)
Public Const GWL_STYLE = (-16)
Public Const GWL_EXSTYLE = (-20)
Public Const GWL_USERDATA = (-21)
Public Const GWL_ID = (-12)
' SetWindowPos Flags
Public Const SWP_NOSIZE = &H1
Public Const SWP_NOMOVE = &H2
Public Const SWP_NOZORDER = &H4
Public Const SWP_NOREDRAW = &H8
Public Const SWP_NOACTIVATE = &H10
Public Const SWP_FRAMECHANGED = &H20 ' The frame changed: send WM_NCCALCSIZE
Public Const SWP_SHOWWINDOW = &H40
Public Const SWP_HIDEWINDOW = &H80
Public Const SWP_NOCOPYBITS = &H100
Public Const SWP_NOOWNERZORDER = &H200 ' Don't do owner Z ordering
Public Const SWP_DRAWFRAME = SWP_FRAMECHANGED
Public Const SWP_NOREPOSITION = SWP_NOOWNERZORDER
' SetWindowPos() hwndInsertAfter values
Public Const HWND_TOP = 0
Public Const HWND_BOTTOM = 1
Public Const HWND_TOPMOST = -1
Public Const HWND_NOTOPMOST = -2
Public Const CWP_ALL = 0
Public Const CWP_SKIPINVISIBLE = 1
Public Const CWP_SKIPDISABLED = 2
Public Const CWP_SKIPTRANSPARENT = 4
Declare Function AdjustWindowRect& Lib "user32" (lpRect As RECT, ByVal dwStyle As Long, ByVal bMenu As Long)
Declare Function AdjustWindowRectEx& Lib "user32" (lpRect As RECT, ByVal dsStyle As Long, ByVal bMenu As Long, ByVal dwEsStyle As Long)
Declare Function AnyPopup& Lib "user32" ()
Declare Function ArrangeIconicWindows& Lib "user32" (ByVal hwnd As Long)
Declare Function AttachThreadInput& Lib "user32" (ByVal idAttach As Long, ByVal idAttachTo As Long, ByVal fAttach As Long)
Declare Function BeginDeferWindowPos& Lib "user32" (ByVal nNumWindows As Long)
Declare Function BringWindowToTop& Lib "user32" (ByVal hwnd As Long)
Declare Function CascadeWindows% Lib "user32" (ByVal hwndParent As Long, ByVal wHow As Long, lpRect As RECT, ByVal cKids As Long, lpKids As Long)
Declare Function CascadeWindowsByNum% Lib "user32" Alias "CascadeWindows" (ByVal hwndParent As Long, ByVal wHow As Long, ByVal lpRect As Long, ByVal cKids As Long, ByVal lpKids As Long)
Declare Function ChildWindowFromPoint& Lib "user32" (ByVal hwnd As Long, ByVal x As Long, ByVal y As Long)
Declare Function ChildWindowFromPointEx& Lib "user32" (ByVal hwndParent As Long, ByVal ptx As Long, ByVal pty As Long, ByVal uFlags As Long)
Declare Function ClientToScreen& Lib "user32" (ByVal hwnd As Long, lpPoint As POINTAPI)
Declare Function CloseWindow& Lib "user32" (ByVal hwnd As Long)
Declare Function CopyRect& Lib "user32" (lpDestRect As RECT, lpSourceRect As RECT)
Declare Function DeferWindowPos& Lib "user32" (ByVal hWinPosInfo As Long, ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long)
Declare Function DestroyWindow& Lib "user32" (ByVal hwnd As Long)
Declare Function DrawAnimatedRects& Lib "user32" (ByVal hwnd As Long, ByVal idAni As Long, lprcFrom As RECT, lprcTo As RECT)
Declare Function EnableWindow& Lib "user32" (ByVal hwnd As Long, ByVal fEnable As Long)
Declare Function EndDeferWindowPos& Lib "user32" (ByVal hWinPosInfo As Long)
Declare Function EnumChildWindows& Lib "user32" (ByVal hwndParent As Long, ByVal lpEnumFunc As Long, ByVal lParam As Long)
Declare Function EnumThreadWindows& Lib "user32" (ByVal dwThreadID As Long, ByVal lpfn As Long, ByVal lParam As Long)
Declare Function EnumWindows& Lib "user32" (ByVal lpEnumFunc As Long, ByVal lParam As Long)
Declare Function EqualRect& Lib "user32" (lpRect1 As RECT, lpRect2 As RECT)
Declare Function FindWindow& Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String)
Declare Function FindWindowEx& Lib "user32" Alias "FindWindowExA" (ByVal hwndParent As Long, ByVal hWndChildAfter As Long, ByVal lpClassName As String, ByVal lpWindowName As String)
Declare Function FlashWindow& Lib "user32" (ByVal hwnd As Long, ByVal bInvert As Long)
Declare Function GetActiveWindow& Lib "user32" ()
Declare Function GetCapture& Lib "user32" ()
Declare Function GetClassInfo& Lib "user32" Alias "GetClassInfoA" (ByVal hInstance As Long, ByVal lpClassName As String, lpWndClass As WNDCLASS)
Declare Function GetClassInfoEx& Lib "user32" Alias "GetClassInfoExA" (ByVal hInstance As Long, ByVal lpClassName As String, lpWndClassEx As WNDCLASSEX)
Declare Function GetClassLong& Lib "user32" Alias "GetClassLongA" (ByVal hwnd As Long, ByVal nIndex As Long)
Declare Function GetClassName& Lib "user32" Alias "GetClassNameA" (ByVal hwnd As Long, ByVal lpClassName As String, ByVal nMaxCount As Long)
Declare Function GetClassWord& Lib "user32" (ByVal hwnd As Long, ByVal nIndex As Long)
Declare Function GetClientRect& Lib "user32" (ByVal hwnd As Long, lpRect As RECT)
Declare Function GetDesktopWindow& Lib "user32" ()
Declare Function GetFocus& Lib "user32" ()
Declare Function GetForegroundWindow& Lib "user32" ()
Declare Function GetLastActivePopup& Lib "user32" (ByVal hwndOwnder As Long)
Declare Function GetParent& Lib "user32" (ByVal hwnd As Long)
Declare Function GetTopWindow& Lib "user32" (ByVal hwnd As Long)
Declare Function GetUpdateRect& Lib "user32" (ByVal hwnd As Long, lpRect As RECT, ByVal bErase As Long)
Declare Function GetWindow& Lib "user32" (ByVal hwnd As Long, ByVal wCmd As Long)
Declare Function GetWindowContextHelpId& Lib "user32" (ByVal hwnd As Long)
Declare Function GetWindowLong& Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long)
Declare Function GetWindowPlacement& Lib "user32" (ByVal hwnd As Long, lpwndpl As WINDOWPLACEMENT)
Declare Function GetWindowRect& Lib "user32" (ByVal hwnd As Long, lpRect As RECT)
Declare Function GetWindowText& Lib "user32" Alias "GetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String, ByVal cch As Long)
Declare Function GetWindowTextLength& Lib "user32" Alias "GetWindowTextLengthA" (ByVal hwnd As Long)
Declare Function GetWindowWord% Lib "user32" (ByVal hwnd As Long, ByVal nIndex As Long)
Declare Function InflateRect& Lib "user32" (lpRect As RECT, ByVal x As Long, ByVal y As Long)
Declare Function IntersectRect& Lib "user32" (lpDestRect As RECT, lpSrc1Rect As RECT, lpSrc2Rect As RECT)
Declare Function InvalidateRect& Lib "user32" (ByVal hwnd As Long, lpRect As RECT, ByVal bErase As Long)
Declare Function InvalidateRectBynum& Lib "user32" Alias "InvalidateRect" (ByVal hwnd As Long, ByVal lpRect As Long, ByVal bErase As Long)
Declare Function IsChild& Lib "user32" (ByVal hwndParent As Long, ByVal hwnd As Long)
Declare Function IsIconic& Lib "user32" (ByVal hwnd As Long)
Declare Function IsRectEmpty& Lib "user32" (lpRect As RECT)
Declare Function IsWindow& Lib "user32" (ByVal hwnd As Long)
Declare Function IsWindowEnabled& Lib "user32" (ByVal hwnd As Long)
Declare Function IsWindowUnicode& Lib "user32" (ByVal hwnd As Long)
Declare Function IsWindowVisible& Lib "user32" (ByVal hwnd As Long)
Declare Function IsZoomed& Lib "user32" (ByVal hwnd As Long)
Declare Function LockWindowUpdate& Lib "user32" (ByVal hwndLock As Long)
Declare Function MapWindowPoints& Lib "user32" (ByVal hwndFrom As Long, ByVal hwndTo As Long, lppt As POINTAPI, ByVal cPoints As Long)
Declare Function MoveWindow& Lib "user32" (ByVal hwnd As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal bRepaint As Long)
Declare Function OffsetRect& Lib "user32" (lpRect As RECT, ByVal x As Long, ByVal y As Long)
Declare Function OpenIcon& Lib "user32" (ByVal hwnd As Long)
Declare Function PtInRect& Lib "user32" (lpRect As RECT, ByVal ptx As Long, ByVal pty As Long)
Declare Function RedrawWindow& Lib "user32" (ByVal hwnd As Long, lprcUpdate As RECT, ByVal hrgnUpdate As Long, ByVal fuRedraw As Long)
Declare Function ReleaseCapture& Lib "user32" ()
Declare Function ScreenToClient& Lib "user32" (ByVal hwnd As Long, lpPoint As POINTAPI)
Declare Function ScrollWindow& Lib "user32" (ByVal hwnd As Long, ByVal XAmount As Long, ByVal YAmount As Long, lpRect As RECT, lpClipRect As RECT)
Declare Function ScrollWindowEx& Lib "user32" (ByVal hwnd As Long, ByVal dx As Long, ByVal dy As Long, lprcScroll As RECT, lprcClip As RECT, ByVal hrgnUpdate As Long, lprcUpdate As RECT, ByVal fuScroll As Long)
Declare Function SetActiveWindow& Lib "user32" (ByVal hwnd As Long)
Declare Function SetCapture& Lib "user32" (ByVal hwnd As Long)
Declare Function SetClassLong& Lib "user32" Alias "SetClassLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long)
Declare Function SetClassWord& Lib "user32" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal wNewWord As Long)
Declare Function SetFocusAPI& Lib "user32" Alias "SetFocus" (ByVal hwnd As Long)
Declare Function SetForegroundWindow& Lib "user32" (ByVal hwnd As Long)
Declare Function SetParent& Lib "user32" (ByVal hWndChild As Long, ByVal hWndNewParent As Long)
Declare Function SetRect& Lib "user32" (lpRect As RECT, ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long)
Declare Function SetRectEmpty& Lib "user32" (lpRect As RECT)
Declare Function SetWindowContextHelpId& Lib "user32" (ByVal hwnd As Long, ByVal dwContextHelpId As Long)
Declare Function SetWindowLong& Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long)
Declare Function SetWindowPlacement& Lib "user32" (ByVal hwnd As Long, lpwndpl As WINDOWPLACEMENT)
Declare Function SetWindowPos& Lib "user32" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long)
Declare Function SetWindowText& Lib "user32" Alias "SetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String)
Declare Function SetWindowWord& Lib "user32" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal wNewWord As Long)
Declare Function ShowOwnedPopups& Lib "user32" (ByVal hwnd As Long, ByVal fShow As Long)
Declare Function ShowWindow& Lib "user32" (ByVal hwnd As Long, ByVal nCmdShow As Long)
Declare Function ShowWindowAsync& Lib "user32" (ByVal hwnd As Long, ByVal nCmdShow As Long)
Declare Function SubtractRect& Lib "user32" (lprcDst As RECT, lprcSrc1 As RECT, lprcSrc2 As RECT)
Declare Function TileWindows% Lib "user32" (ByVal hwndParent As Long, ByVal wHow As Long, lpRect As RECT, ByVal cKids As Long, lpKids As Long)
Declare Function TileWindowsBynum% Lib "user32" Alias "TileWindows" (ByVal hwndParent As Long, ByVal wHow As Long, ByVal lpRect As Long, ByVal cKids As Long, ByVal lpKids As Long)
Declare Function UnionRect& Lib "user32" (lpDestRect As RECT, lpSrc1Rect As RECT, lpSrc2Rect As RECT)
Declare Function UpdateWindow& Lib "user32" (ByVal hwnd As Long)
Declare Function ValidateRect& Lib "user32" (ByVal hwnd As Long, lpRect As RECT)
Declare Function ValidateRectBynum& Lib "user32" Alias "ValidateRect" (ByVal hwnd As Long, ByVal lpRect As Long)
Declare Function WindowFromPoint& Lib "user32" (ByVal x As Long, ByVal y As Long)
Declare Function da& Lib "user32" Alias "DrawAnimatedRects" (ByVal hwnd As Long, ByVal idAni As Long, lprcFrom As SMALLRECT, lprcTo As SMALLRECT)