mirror of https://github.com/lianthony/NT4.0
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
550 lines
20 KiB
550 lines
20 KiB
|
|
/******************************************************************************
|
|
Copyright (c) Maynard, an Archive Company. 1991
|
|
GSH
|
|
|
|
Name: winmang.h
|
|
|
|
Description: This file contains the definitions, macros, and function
|
|
prototypes for the Maynstream GUI Window Manager (WM).
|
|
|
|
$Log: G:/UI/LOGFILES/WINMANG.H_V $
|
|
|
|
Rev 1.33 23 Sep 1993 15:52:46 GLENN
|
|
Added poll drive user message ID.
|
|
|
|
Rev 1.32 13 Aug 1993 15:22:20 GLENN
|
|
Removed ifdef around sort IDs.
|
|
|
|
Rev 1.31 09 Jun 1993 15:09:22 MIKEP
|
|
enable c++
|
|
|
|
|
|
Rev 1.30 07 May 1993 14:23:26 DARRYLP
|
|
Added Rob's changes for delete key trappings
|
|
|
|
Rev 1.29 26 Apr 1993 08:36:30 MIKEP
|
|
Added ID_VIEWFONT to call vlm_changesettings with. This allows
|
|
the vlm area to refresh all windows in case the font changed case
|
|
for FAT drives.
|
|
|
|
Rev 1.28 22 Apr 1993 16:01:10 GLENN
|
|
Added file SORT option support.
|
|
|
|
Rev 1.27 21 Apr 1993 16:07:06 GLENN
|
|
Changed window classes to be unique for Nostradamus and Cayman.
|
|
|
|
Rev 1.26 07 Apr 1993 16:28:30 GLENN
|
|
Changed APP specific class names to have a prefix of CBE - Conner Backup Exec.
|
|
|
|
Rev 1.25 01 Nov 1992 16:33:52 DAVEV
|
|
Unicode changes
|
|
|
|
Rev 1.24 14 Oct 1992 15:56:44 GLENN
|
|
Added Wait Cursor HIDE, SHOW, PAUSE, RESUME, features to guarantee Hourglass when our App is busy.
|
|
|
|
Rev 1.23 04 Oct 1992 19:50:04 DAVEV
|
|
UNICODE AWK PASS
|
|
|
|
Rev 1.22 02 Oct 1992 16:51:32 GLENN
|
|
Added WM_SetCursor().
|
|
|
|
Rev 1.21 10 Jul 1992 10:14:24 GLENN
|
|
In process of adding font selection support.
|
|
|
|
Rev 1.20 19 Mar 1992 11:45:12 JOHNWT
|
|
added WM_MakeAppActive
|
|
|
|
Rev 1.19 16 Mar 1992 15:37:22 JOHNWT
|
|
fixed WM_TerminateApp
|
|
|
|
Rev 1.18 10 Mar 1992 16:39:50 GLENN
|
|
Added WM_MoveWindow().
|
|
|
|
Rev 1.17 09 Mar 1992 09:20:52 GLENN
|
|
Added logo bitmap support.
|
|
|
|
Rev 1.16 03 Mar 1992 17:27:48 GLENN
|
|
Added new view window support.
|
|
|
|
Rev 1.15 20 Feb 1992 11:21:24 GLENN
|
|
Removed WM_IsActiveDocMax... different way of doing it now to support NT.
|
|
|
|
Rev 1.14 18 Feb 1992 20:48:40 GLENN
|
|
Changed WMSIZE types.
|
|
|
|
Rev 1.13 18 Feb 1992 18:48:44 GLENN
|
|
Added support routines for auto min/max/restore of MDI docs before/after an operation/
|
|
|
|
Rev 1.12 11 Feb 1992 17:32:16 GLENN
|
|
Added support for MDI client subclassing.
|
|
|
|
Rev 1.11 10 Feb 1992 09:15:10 GLENN
|
|
Moved the WM_USER IDs to a common location.
|
|
|
|
Rev 1.10 04 Feb 1992 15:01:28 STEVEN
|
|
added macro for point conversion
|
|
|
|
Rev 1.9 29 Jan 1992 17:57:08 GLENN
|
|
DLM command ID.
|
|
|
|
Rev 1.8 21 Jan 1992 13:34:02 GLENN
|
|
Added WM_AnimateAppIcon() proto.
|
|
|
|
Rev 1.7 07 Jan 1992 17:24:02 GLENN
|
|
Added MDI split/slider support
|
|
|
|
Rev 1.6 10 Dec 1991 13:55:44 GLENN
|
|
Added defines for the creation of single column flat list boxes
|
|
|
|
Rev 1.5 05 Dec 1991 17:43:54 GLENN
|
|
Changed get active doc macro
|
|
|
|
Rev 1.4 05 Dec 1991 11:25:18 DAVEV
|
|
16/32 bit Windows port changes - 1st pass
|
|
|
|
Rev 1.3 04 Dec 1991 18:15:46 GLENN
|
|
Added terminate app macro.
|
|
|
|
Rev 1.2 03 Dec 1991 16:03:00 GLENN
|
|
Added a bunch of IDs for Keyboard character support.
|
|
|
|
Rev 1.1 27 Nov 1991 13:36:22 GLENN
|
|
Added macros for filling out the window manager data structure.
|
|
|
|
Rev 1.0 20 Nov 1991 19:40:16 SYSTEM
|
|
Initial revision.
|
|
|
|
******************************************************************************/
|
|
|
|
|
|
|
|
#ifndef WINMANG_H
|
|
|
|
#define WINMANG_H
|
|
|
|
|
|
// Window Creation Types
|
|
|
|
#define WM_TYPE_BITS 0x00FF
|
|
#define WM_MINMAX_BITS 0x0300
|
|
#define WM_STYLE_BITS 0x3C00
|
|
#define WM_MENU_BITS 0xC000
|
|
|
|
#define WM_FRAME 0
|
|
#define WM_CLIENT 1
|
|
#define WM_RIBBON 2
|
|
#define WM_MDIPRIMARY 3
|
|
#define WM_MDISECONDARY 4
|
|
#define WM_DDECLIENT 5
|
|
#define WM_DDESERVER 6
|
|
#define WM_SERVER 7
|
|
#define WM_DEBUG 8
|
|
#define WM_DUMB 9
|
|
|
|
#define WM_MIN 0x0100
|
|
#define WM_MAX 0x0200
|
|
|
|
#define WM_VIEWWIN 0x0000
|
|
#define WM_FLATLISTMC 0x1000 // FLAT LIST MULTI-COLUMN
|
|
#define WM_TREELISTSC 0x2000 // TREE LIST SINGLE-COLUMN
|
|
#define WM_FLATLISTSC 0x0400 // FLAT LIST SINGLE-COLUMN -- ODD TYPES
|
|
#define WM_TREELISTMC 0x0800 // TREE LIST MULTI-COLUMN -- ODD TYPES
|
|
#define WM_FLATLIST WM_FLATLISTMC
|
|
#define WM_TREELIST WM_TREELISTSC
|
|
#define WM_TREEANDFLATMC ( WM_TREELISTSC | WM_FLATLISTMC )
|
|
#define WM_TREEANDFLATSC ( WM_TREELISTSC | WM_FLATLISTSC )
|
|
|
|
#define WM_MENUS 0x4000
|
|
|
|
// Undocumented Windows Messages
|
|
|
|
#define WM_LBTRACKPOINT 0x0131
|
|
|
|
// Window Sizes
|
|
|
|
#define WMSIZE_NORMAL 0
|
|
#define WMSIZE_MIN 1
|
|
#define WMSIZE_MAX 2
|
|
#define WMSIZE_IGNORE 3
|
|
#define WMSIZE_UNKNOWN -1
|
|
|
|
// Application Window Types
|
|
|
|
#define WMTYPE_DISKS 0
|
|
#define WMTYPE_TAPES 1
|
|
#define WMTYPE_MACROS 2
|
|
#define WMTYPE_JOBS 3
|
|
#define WMTYPE_DISKTREE 4
|
|
#define WMTYPE_TAPETREE 5
|
|
#define WMTYPE_DISKFILES 6
|
|
#define WMTYPE_TAPEFILES 7
|
|
#define WMTYPE_SERVERS 8
|
|
#define WMTYPE_LOGFILES 9
|
|
#define WMTYPE_DEBUG 10
|
|
#define WMTYPE_SEARCH 11
|
|
#define WMTYPE_LOGVIEW 12
|
|
#ifdef OEM_EMS
|
|
#define WMTYPE_EXCHANGE 13
|
|
#endif
|
|
|
|
// Application message IDs
|
|
|
|
#define ID_FLATONLY IDM_VIEWDIRONLY
|
|
#define ID_TREEONLY IDM_VIEWTREEONLY
|
|
#define ID_TREEANDFLAT IDM_VIEWTREEANDDIR
|
|
#define ID_FILEDETAILS IDM_VIEWALLFILEDETAILS
|
|
#define ID_EXPANDALL IDM_TREEEXPANDALL
|
|
#define ID_EXPANDBRANCH IDM_TREEEXPANDBRANCH
|
|
#define ID_EXPANDONE IDM_TREEEXPANDONE
|
|
#define ID_COLLAPSEBRANCH IDM_TREECOLLAPSEBRANCH
|
|
#define ID_INDICATORS IDM_TREESHOWINDICATORS
|
|
#define ID_SELECT IDM_SELECTCHECK
|
|
#define ID_DESELECT IDM_SELECTUNCHECK
|
|
#define ID_MODIFIED IDM_SELECTMODIFIEDFILES
|
|
#define ID_ADVANCED IDM_SELECTADVANCED
|
|
#define ID_REFRESH IDM_WINDOWSREFRESH
|
|
#define ID_CLOSEALL IDM_WINDOWSCLOSEALL
|
|
#define ID_VIEWFONT IDM_VIEWFONT
|
|
#define ID_SORTNAME IDM_VIEWSORTNAME
|
|
#define ID_SORTTYPE IDM_VIEWSORTTYPE
|
|
#define ID_SORTSIZE IDM_VIEWSORTSIZE
|
|
#define ID_SORTDATE IDM_VIEWSORTDATE
|
|
|
|
#define ID_SERVERS 1
|
|
#define ID_RESTORETODRIVE 2
|
|
#define ID_CTRLARROWUP 3
|
|
#define ID_CTRLARROWDOWN 4
|
|
#define ID_ARROWLEFT 5
|
|
#define ID_ARROWRIGHT 6
|
|
#define ID_NAMEONLY 7
|
|
#define ID_FONTCASECHANGE 8
|
|
#define ID_DELETE 9
|
|
|
|
#define WM_CLIENT_ID 0xCAC // The Client Window ID.
|
|
|
|
#define WM_DEFAULT CW_USEDEFAULT // Use default window size.
|
|
#define GWL_PDSWININFO 0 // The offset of the Window Info struct.
|
|
#define GWW_HWNDEDIT 0
|
|
#define GWW_CHANGED 2
|
|
#define GWW_WORDWRAP 4
|
|
#define GWW_UNTITLED 6
|
|
#define DEBUG_EXTRA 8
|
|
|
|
// APPLICATION DEFINED CLASS NAMES
|
|
|
|
#ifdef OEM_MSOFT
|
|
|
|
#define WMCLASS_FRAME TEXT("NTBframe") // Class name for the frame window.
|
|
#define WMCLASS_DOC TEXT("NTBdoc") // Class name for MDI document windows.
|
|
#define WMCLASS_RIBBON TEXT("NTBribbon") // Class name for the ribbon windows.
|
|
#define WMCLASS_DDECLIENT TEXT("NTBddeclient") // Class name for the ddeclient windows.
|
|
#define WMCLASS_LAUNCHER TEXT("NTBlauncher") // Class name for the launcher window.
|
|
#define WMCLASS_VIEWWIN TEXT("NTBviewwin") // Class name for the dumb window.
|
|
#define WMCLASS_LOGO TEXT("NTBlogo") // Class name for the logo window.
|
|
|
|
#else
|
|
|
|
#define WMCLASS_FRAME TEXT("CBEframe") // Class name for the frame window.
|
|
#define WMCLASS_DOC TEXT("CBEdoc") // Class name for MDI document windows.
|
|
#define WMCLASS_RIBBON TEXT("CBEribbon") // Class name for the ribbon windows.
|
|
#define WMCLASS_DDECLIENT TEXT("CBEddeclient") // Class name for the ddeclient windows.
|
|
#define WMCLASS_LAUNCHER TEXT("CBElauncher") // Class name for the launcher window.
|
|
#define WMCLASS_VIEWWIN TEXT("CBEviewwin") // Class name for the dumb window.
|
|
#define WMCLASS_LOGO TEXT("CBElogo") // Class name for the logo window.
|
|
|
|
#endif
|
|
|
|
// WINDOWS INTERNAL CLASS NAMES
|
|
|
|
#define WMCLASS_CLIENT TEXT("mdiclient") // Class name for the MDI client window.
|
|
#define WMCLASS_LISTBOX TEXT("listbox") // Class name for the list box windows.
|
|
|
|
|
|
#define WMIDC_TREELISTBOX 1
|
|
#define WMIDC_FLATLISTBOX 2
|
|
|
|
#define WM_TREELISTBOX ( WS_CHILD | WS_VISIBLE | WS_HSCROLL | WS_BORDER | \
|
|
LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_NOINTEGRALHEIGHT | \
|
|
WS_VSCROLL )
|
|
#define WM_FLATLISTBOXMC ( WS_CHILD | WS_VISIBLE | WS_HSCROLL | WS_BORDER | \
|
|
LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_NOINTEGRALHEIGHT | \
|
|
LBS_EXTENDEDSEL | LBS_MULTICOLUMN )
|
|
#define WM_FLATLISTBOXSC ( WS_CHILD | WS_VISIBLE | WS_HSCROLL | WS_VSCROLL | WS_BORDER | \
|
|
LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_NOINTEGRALHEIGHT | \
|
|
LBS_EXTENDEDSEL )
|
|
|
|
#define WMSTYLE_VIEWWIN ( WS_CHILD | WS_BORDER | WS_VISIBLE | CS_HREDRAW | CS_VREDRAW )
|
|
#define WMSTYLE_LOGO ( WS_POPUP | WS_BORDER | WS_VISIBLE )
|
|
|
|
// DOC WINDOW AND LIST BOX BIT MASKS
|
|
|
|
#define WMDOC_VIEWWIN 0x0000
|
|
#define WMDOC_TREEANDFLAT 0x0001
|
|
#define WMDOC_TREESC 0x0002
|
|
#define WMDOC_TREEMC 0x0020
|
|
#define WMDOC_FLATMC 0x0004
|
|
#define WMDOC_FLATSC 0x0040
|
|
#define WMDOC_SLIDER 0x0008
|
|
#define WMDOC_TREE WMDOC_TREESC
|
|
#define WMDOC_FLAT WMDOC_FLATMC
|
|
|
|
#define WM_SLIDERUNKNOWN 0x7FF0
|
|
#define WM_SLIDERMAX 0x7FF1
|
|
#define WM_SLIDERMIN 0x7FF2
|
|
|
|
// DOC SLIDER DEFINITIONS
|
|
|
|
#define WMDOC_SLIDERON 0x0001
|
|
#define WMDOC_SLIDERMOVE 0x0002
|
|
#define WMDOC_SLIDEROFF 0x0004
|
|
#define WMDOC_SLIDERCANCEL 0x0008
|
|
|
|
#define DOC_N_STATUS_HEIGHT (DOC_RIBBON_HEIGHT+STATUS_LINE_HEIGHT)
|
|
#define NONMDICLIENT_HEIGHT (DOC_N_STATUS_HEIGHT+MAIN_RIBBON_HEIGHT)
|
|
|
|
// SHOW WAIT CURSOR IDs
|
|
|
|
#define SWC_HIDE FALSE
|
|
#define SWC_SHOW TRUE
|
|
#define SWC_PAUSE ((BOOL)2)
|
|
#define SWC_RESUME ((BOOL)3)
|
|
|
|
// EXTRA WINDOWS FRAME MESSAGE IDs -- WM_USER+200 through WM_USER+209
|
|
|
|
#define WM_SETTINGSCHANGED (WM_USER+201)
|
|
#define WM_INITAPPLICATION (WM_USER+203)
|
|
#define WM_DEVICEDRIVERMSG (WM_USER+204)
|
|
|
|
#define WM_PUBLISHRUNNINGJOB (WM_USER+206) // Used by Winter Park to
|
|
// tell the launcher which
|
|
// job is running.
|
|
#define WM_SCHEDULESUPDATED (WM_USER+207) // Used by Winter Park to
|
|
// tell the launcher to update
|
|
// it's list of scheduled jobs.
|
|
#define WM_QUERYRUNNINGJOB (WM_USER+208) // Used by Launcher only
|
|
#define WM_POLLDRIVEMSG (WM_USER+209) // Used when poll drive exits
|
|
// timer callback.
|
|
|
|
#define WM_DLMDBCLK (WM_USER+300)
|
|
#define WM_DLMDOWN (WM_USER+301)
|
|
#define WM_DLMCLICK (WM_USER+302)
|
|
#define WM_DLMUPDATEITEM (WM_USER+303)
|
|
#define WM_DLMUPDATELIST (WM_USER+304)
|
|
#define WM_DLMDELETEITEMS (WM_USER+305)
|
|
#define WM_DLMADDITEMS (WM_USER+306)
|
|
#define WM_DLMCHAR (WM_USER+307)
|
|
|
|
#ifdef NTKLUG
|
|
#define WM_DLMGETTEXT (WM_USER+399)
|
|
#endif
|
|
|
|
#define WM_MSGBOXDRAWTXT (WM_USER+400)
|
|
|
|
|
|
typedef struct DS_WMINFO far *DS_WMINFO_PTR;
|
|
typedef struct DS_WMINFO far *PDS_WMINFO;
|
|
typedef struct DS_WMINFO {
|
|
|
|
WORD wType;
|
|
HWND hWnd;
|
|
HWND hWndTreeList;
|
|
HWND hWndFlatList;
|
|
HWND hWndActiveList;
|
|
HRIBBON hRibbon;
|
|
HCURSOR hCursor;
|
|
HCURSOR hDragCursor;
|
|
HICON hIcon;
|
|
DWORD dwRibbonState;
|
|
DWORD dwMenuState;
|
|
DWORD dwWindowState;
|
|
INT nSliderPos;
|
|
DLM_HEADER_PTR pTreeDisp;
|
|
DLM_HEADER_PTR pFlatDisp;
|
|
Q_HEADER_PTR pTreeList;
|
|
Q_HEADER_PTR pFlatList;
|
|
PVOID pAppInfo;
|
|
WORD wClosable;
|
|
BOOL fChanged;
|
|
WORD wHelpID;
|
|
WORD wStatusLineID;
|
|
CHAR_PTR pTitle;
|
|
CHAR_PTR pMinTitle;
|
|
INT nSize;
|
|
|
|
} DS_WMINFO;
|
|
|
|
// WINDOW MANAGER DATA STRUCTURE GET AND SET MACROS
|
|
|
|
|
|
#define WMDS_GetWinType( x ) ( (x)->wType )
|
|
#define WMDS_SetWinType( x, v ) ( (x)->wType = ( v ) )
|
|
|
|
#define WMDS_GetWin( x ) ( (x)->hWnd )
|
|
#define WMDS_SetWin( x, v ) ( (x)->hWnd = ( v ) )
|
|
|
|
#define WMDS_GetWinTreeList( x ) ( (x)->hWndTreeList )
|
|
#define WMDS_SetWinTreeList( x, v ) ( (x)->hWndTreeList = ( v ) )
|
|
|
|
#define WMDS_GetWinFlatList( x ) ( (x)->hWndFlatList )
|
|
#define WMDS_SetWinFlatList( x, v ) ( (x)->hWndFlatList = ( v ) )
|
|
|
|
#define WMDS_GetWinActiveList( x ) ( (x)->hWndActiveList )
|
|
#define WMDS_SetWinActiveList( x, v ) ( (x)->hWndActiveList = ( v ) )
|
|
|
|
#define WMDS_GetRibbon( x ) ( (x)->hRibbon )
|
|
#define WMDS_SetRibbon( x, v ) ( (x)->hRibbon = ( v ) )
|
|
|
|
#define WMDS_GetCursor( x ) ( (x)->hCursor )
|
|
#define WMDS_SetCursor( x, v ) ( (x)->hCursor = ( v ) )
|
|
|
|
#define WMDS_GetDragCursor( x ) ( (x)->hDragCursor )
|
|
#define WMDS_SetDragCursor( x, v ) ( (x)->hDragCursor = ( v ) )
|
|
|
|
#define WMDS_GetIcon( x ) ( (x)->hIcon )
|
|
#define WMDS_SetIcon( x, v ) ( (x)->hIcon = ( v ) )
|
|
|
|
#define WMDS_GetRibbonState( x ) ( (x)->dwRibbonState )
|
|
#define WMDS_SetRibbonState( x, v ) ( (x)->dwRibbonState = ( v ) )
|
|
|
|
#define WMDS_GetMenuState( x ) ( (x)->dwMenuState )
|
|
#define WMDS_SetMenuState( x, v ) ( (x)->dwMenuState = ( v ) )
|
|
|
|
#define WMDS_GetWindowState( x ) ( (x)->dwWindowState )
|
|
#define WMDS_SetWindowState( x, v ) ( (x)->dwWindowState = ( v ) )
|
|
|
|
#define WMDS_GetSliderPos( x ) ( (x)->nSliderPos )
|
|
#define WMDS_SetSliderPos( x, v ) ( (x)->nSliderPos = ( v ) )
|
|
|
|
#define WMDS_GetTreeDisp( x ) ( (x)->pTreeDisp )
|
|
#define WMDS_SetTreeDisp( x, v ) ( (x)->pTreeDisp = ( v ) )
|
|
|
|
#define WMDS_GetFlatDisp( x ) ( (x)->pFlatDisp )
|
|
#define WMDS_SetFlatDisp( x, v ) ( (x)->pFlatDisp = ( v ) )
|
|
|
|
#define WMDS_GetTreeList( x ) ( (x)->pTreeList )
|
|
#define WMDS_SetTreeList( x, v ) ( (x)->pTreeList = ( v ) )
|
|
|
|
#define WMDS_GetFlatList( x ) ( (x)->pFlatList )
|
|
#define WMDS_SetFlatList( x, v ) ( (x)->pFlatList = ( v ) )
|
|
|
|
#define WMDS_GetAppInfo( x ) ( (x)->pAppInfo )
|
|
#define WMDS_SetAppInfo( x, v ) ( (x)->pAppInfo = ( v ) )
|
|
|
|
#define WMDS_GetWinClosable( x ) ( (x)->wClosable )
|
|
#define WMDS_SetWinClosable( x, v ) ( (x)->wClosable = ( v ) )
|
|
|
|
#define WMDS_GetWinChanged( x ) ( (x)->fChanged )
|
|
#define WMDS_SetWinChanged( x, v ) ( (x)->fChanged = ( v ) )
|
|
|
|
#define WMDS_GetWinHelpID( x ) ( (x)->wHelpID )
|
|
#define WMDS_SetWinHelpID( x, v ) ( (x)->wHelpID = ( v ) )
|
|
|
|
#define WMDS_GetStatusLineID( x ) ( (x)->wStatusLineID )
|
|
#define WMDS_SetStatusLineID( x, v ) ( (x)->wStatusLineID = ( v ) )
|
|
|
|
#define WMDS_GetWinTitle( x ) ( (x)->pTitle )
|
|
|
|
#define WMDS_GetWinMinTitle( x ) ( (x)->pMinTitle )
|
|
|
|
#define WMDS_GetSize( x ) ( (x)->nSize )
|
|
#define WMDS_SetSize( x, v ) ( (x)->nSize = ( v ) )
|
|
|
|
|
|
// MACROS
|
|
|
|
#define WM_Destroy( x ) (BOOL)SendMessage( ghWndMDIClient, WM_MDIDESTROY, (MP1)x, (MP2)0 )
|
|
#define WM_GetActive( ) ( GetActiveWindow( ) )
|
|
#define WM_GetActiveDoc( ) ( ( ghWndActiveDoc ) ? ghWndActiveDoc : (HWND)SendMessage( ghWndMDIClient, WM_MDIGETACTIVE, (MP1)0, (MP2)0 ) )
|
|
#define WM_GetAppPtr( x ) ( (PDS_WMINFO)GetWindowLong( x, GWL_PDSWININFO ) )->pAppInfo
|
|
#define WM_GetDC( x ) GetDC( x )
|
|
#define WM_GetInfoPtr( x ) (PDS_WMINFO)GetWindowLong( x, GWL_PDSWININFO )
|
|
#define WM_Hide( x ) ShowWindow( x, SW_HIDE )
|
|
#define WM_IsActive( x ) ( x == GetActiveWindow () )
|
|
#define WM_IsActiveDoc( x ) ( x == WM_GetActiveDoc () )
|
|
#define WM_IsChildOf( x, y ) (BOOL)( IsChild( x, y ) )
|
|
#define WM_IsFlatActive( x ) ( (x)->hWndFlatList == (x)->hWndActiveList )
|
|
#define WM_IsMaximized( x ) (BOOL)( IsZoomed( x ) )
|
|
#define WM_IsMinimized( x ) (BOOL)( IsIconic( x ) )
|
|
#define WM_IsTreeActive( x ) ( (x)->hWndTreeList == (x)->hWndActiveList )
|
|
#define WM_MaximizeDoc( x ) SendMessage( ghWndMDIClient, WM_MDIMAXIMIZE, (MP1)x, (MP2)0 )
|
|
#define WM_MinimizeDoc( x ) ShowWindow( x, SW_SHOWMINNOACTIVE )
|
|
#define WM_Minimize( x ) ShowWindow( x, SW_SHOWMINNOACTIVE )
|
|
#define WM_Notify( x, y ) PostMessage( ghWndFrame, WM_SETTINGSCHANGED, (MP1)x, (MP2)y )
|
|
#define WM_Restore( x ) ShowWindow( x, SW_SHOWNORMAL )
|
|
#define WM_RestoreDoc( x ) SendMessage( ghWndMDIClient, WM_MDIRESTORE, (MP1)x, (MP2)0 )
|
|
#define WM_SetActive( x ) SetActiveWindow( x )
|
|
#define WM_SetActiveDoc( x ) SendMessage( ghWndMDIClient, WM_MDIACTIVATE, (MP1)x, (MP2)0 )
|
|
#define WM_SetInfoPtr( x, y ) SetWindowLong( x, GWL_PDSWININFO, (DWORD)y )
|
|
#define WM_Show( x ) ShowWindow( x, SW_SHOW )
|
|
#define WM_TerminateApp( ) DestroyWindow( ghWndFrame )
|
|
#define WM_Update( x ) UpdateWindow( x )
|
|
|
|
#define WM_FromMP2toPOINT( a, b ) \
|
|
( (a.y = (int)((b) >> 16)), (a.x = (int)((b) & 0xffff)) )
|
|
|
|
// MACROS FOR PORTING
|
|
|
|
#ifndef OS_WIN32
|
|
#define EXTRACT_RIBBON_PARENT_HWND( x ) (LOWORD((DWORD)(x)))
|
|
#define WM_GetClassCursor( x ) (HCURSOR)GetClassWord( x, GCW_HCURSOR )
|
|
#define WM_GetClassIcon( x ) (HICON)GetClassWord( x, GCW_HICON )
|
|
#define WM_SetClassCursor( x, y ) (HCURSOR)SetClassWord( x, GCW_HCURSOR, (WORD) y )
|
|
#define WM_SetClassIcon( x, y ) (HICON)SetClassWord( x, GCW_HICON, (WORD) y )
|
|
#else
|
|
#define EXTRACT_RIBBON_PARENT_HWND( x ) ((HWND)(x))
|
|
#define WM_GetClassCursor( x ) (HCURSOR)GetClassLong( x, GCL_HCURSOR )
|
|
#define WM_GetClassIcon( x ) (HICON)GetClassLong( x, GCL_HICON )
|
|
#define WM_SetClassCursor( x, y ) (HCURSOR)SetClassLong( x, GCL_HCURSOR,(LONG) y )
|
|
#define WM_SetClassIcon( x, y ) (HICON)SetClassLong( x, GCL_HICON, (LONG) y )
|
|
#endif
|
|
|
|
|
|
|
|
// FUNCTION PROTOTYPES
|
|
|
|
BOOL WM_AnimateAppIcon ( WORD, BOOL );
|
|
VOID WM_CloseAllDocs ( VOID );
|
|
BOOL WM_ChangeFont ( VOID );
|
|
HWND WM_Create ( WORD, LPSTR, LPSTR, INT, INT, INT, INT, PDS_WMINFO );
|
|
BOOL WM_CreateObjects ( VOID );
|
|
VOID WM_CreatePrimDocs ( VOID );
|
|
VOID WM_Deinit ( VOID );
|
|
VOID WM_DeleteObjects ( VOID );
|
|
VOID WM_DocActivate ( HWND );
|
|
WORD WM_DocIsMenuChange ( HWND, WORD );
|
|
BOOL WM_DocKeyDown ( HWND hWnd, WORD wKey );
|
|
VOID WM_DocSetSliderMode ( HWND, WORD );
|
|
VOID WM_FrameUpdate ( VOID );
|
|
HICON WM_GetAppIcon ( VOID );
|
|
HWND WM_GetNext ( HWND );
|
|
BOOL WM_GetRect ( HWND );
|
|
INT WM_GetTitle ( HWND, LPSTR, INT );
|
|
BOOL WM_Init ( LPSTR, INT );
|
|
VOID WM_LogoShow ( VOID );
|
|
VOID WM_LogoDestroy ( VOID );
|
|
VOID WM_MinimizeDocs ( VOID );
|
|
VOID WM_MoveWindow ( HWND, INT, INT, INT, INT, BOOL );
|
|
BOOL WM_QueryCloseAllDocs ( VOID );
|
|
VOID WM_RestoreDocs ( VOID );
|
|
HICON WM_SetAppIcon ( HICON );
|
|
BOOL WM_SetCursor ( HWND );
|
|
VOID WM_SetDocSizes ( VOID );
|
|
VOID WM_SetMinTitle ( HWND, LPSTR );
|
|
VOID WM_SetTitle ( HWND, LPSTR );
|
|
VOID WM_SubClassListBox ( HWND );
|
|
VOID WM_SubClassMDIClient ( HWND );
|
|
VOID WM_ShowWaitCursor ( BOOL );
|
|
VOID WM_MakeAppActive( VOID );
|
|
|
|
// EXPORTED FUNCTIONS
|
|
|
|
WINRESULT APIENTRY WM_FrameWndProc ( HWND, MSGID, MP1, MP2 );
|
|
WINRESULT APIENTRY WM_MDIDocWndProc ( HWND, MSGID, MP1, MP2 );
|
|
WINRESULT APIENTRY WM_RibbonWndProc ( HWND, MSGID, MP1, MP2 );
|
|
WINRESULT APIENTRY WM_MDIClientWndProc ( HWND, MSGID, MP1, MP2 );
|
|
WINRESULT APIENTRY WM_DocListWndProc ( HWND, MSGID, MP1, MP2 );
|
|
WINRESULT APIENTRY WM_DDEClientWndProc ( HWND, MSGID, MP1, MP2 );
|
|
WINRESULT APIENTRY WM_ViewWndProc ( HWND, MSGID, MP1, MP2 );
|
|
|
|
#endif
|