compile insert PS_Window_Equates /* ** Copyright (C) 2013-2024 Revelation Software Inc. All Rights Reserved ** Author : Wile C Coyote - Super Genius Date : June 2013 Purpose : Constants for working with PS WINDOW object structures Comments ======== Amended Date Reason ======= ==== ====== Mr C 10 May 24 Added PSSX_WINDOW_MDISHOWCHILDMENU$ Mr C 15 Oct 20 Renamed FRAMESTYLE to FORMBORDERSTYLE Added SHOWEFFECT/HIDEEFFECT equates Mr C 19 Apr 18 Added PLACEMENTDATA property equates Mr C 09 Feb 17 Added ToolBars equates Mr C 07 Aug 17 Added InitialPosition equates Mr C 12 Dec 16 Fixed PSS_WINDOW_HAS_MENU$ Mr C 03 Oct 16 Added OIWIN/EXE structure overrides. Mr C 18 May 16 Removed PSSX_WINDOW_DPISCALING$ Mr C 05 May 16 Moved SCALEUNITS to ps_Equates Mr C 26 Apr 16 Transposed scale units Mr C 10 Feb 16 Added PSS_WINDOW_DIALOGBOX$ Mr C 21 Dec 15 Added SIZINGMODE constants Mr C 29 Jan 15 Added FrameStyle rules Mr C 25 Jan 15 Added PSSX_WINDOW_SCALEMODEDIPS$ */ /////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////// #ifndef _PS_WINDOW_EQUATES_ #define _PS_WINDOW_EQUATES_ /////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////// $insert msWin_WindowStyle_Equates $insert oiWin_Equates $insert ps_Equates /////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////// // PS Style equates equ PSS_WINDOW_BMP_CENTER$ to 0x00000001 ; equ PSS_WINDOW_RESIZEALWAYS$ to 0x00000002 ; // SIZINGMODE property equ PSS_WINDOW_RESIZENEVER$ to 0x00000004 ; // SIZINGMODE property equ PSS_WINDOW_BMP_TILED$ to 0x00000020 ; equ PSS_WINDOW_BMP_STRETCH$ to bitOr( PSS_WINDOW_BMP_CENTER$, PSS_WINDOW_BMP_TILED$ ) equ PSS_WINDOW_HAS_MENU$ to 0x00000100 ; equ PSS_WINDOW_DIALOGBOX$ to 0x00001000 ; equ PSS_WINDOW_AUTOSCROLL$ to 0x00002000 ; equ PSS_WINDOW_MULTIINSTANCE$ to 0x00004000 ; equ PSS_WINDOW_USEBKGDCOLOR$ to 0x00008000 ; equ PSS_WINDOW_CREATECOMPLETE$ to 0x80000000 ; equ PSSX_WINDOW_SUPPRESSMDITRANSLATE$ to 0x00400000 ; // SUPPRESSMDITRANSLATE property equ PSSX_WINDOW_MDISHOWCHILDMENU$ to 0x00800000 ; // MDISHOWCHILDMENU property /////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////// // SYSREPOSWINS structure overrides equ POS_TASKBARID$ to POS_TEXT_1$ equ POS_STATUSLINE$ to POS_TEXT_2$ equ POS_TOOLBARS$ to POS_TEXT_3$ // SYSREPOSWINEXES structure overrides equ PSPOS_TASKBARID$ to PSPOS_TEXT_1$ equ PSPOS_STATUSLINE$ to PSPOS_TEXT_2$ equ PSPOS_TOOLBARS$ to PSPOS_TEXT_3$ /////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////// // POS_DISPLAY WINDOW-only sub-values... equ POS_DISP_WIN_TRANSLUCENCY$ to POS_DISPLAY_TRANSLUCENCY$ equ POS_DISP_WIN_RESERVED_2$ to 2 ; * // @tm delimited equ POS_DISP_WIN_RESERVED_3$ to 3 equ POS_DISP_WIN_INITIALPOS$ to 4 equ POS_DISP_WIN_SHOWEFFECT$ to 5 equ POS_DISP_WIN_HIDEEFFECT$ to 6 equ POS_DISP_WIN_MAXIMIZESIZE$ to 7 ; * // @tm delimited equ POS_DISP_WIN_MINSCALEFACTOR$ to 8 equ POS_DISP_WIN_MAXSCALEFACTOR$ to 9 equ POS_DISP_WIN_SCALEINCREMENT$ to 10 // PSPOS_DISPLAY WINDOW-only sub-values... equ PSPOS_DISP_WIN_TRANSLUCENCY$ to PSPOS_DISPLAY_TRANSLUCENCY$ equ PSPOS_DISP_WIN_RESERVED_2$ to 2 ; * // @tm delimited equ PSPOS_DISP_WIN_RESERVED_3$ to 3 equ PSPOS_DISP_WIN_INITIALPOS$ to 4 equ PSPOS_DISP_WIN_SHOWEFFECT$ to 5 equ PSPOS_DISP_WIN_HIDEEFFECT$ to 6 equ PSPOS_DISP_WIN_MAXIMIZESIZE$ to 7 ; * // @tm delimited equ PSPOS_DISP_WIN_MINSCALEFACTOR$ to 8 equ PSPOS_DISP_WIN_MAXSCALEFACTOR$ to 9 equ PSPOS_DISP_WIN_SCALEINCREMENT$ to 10 /////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////// // FORMBORDERSTYLE property equates equ PS_FORMBORDERSTYLE_NONE$ to 0 equ PS_FORMBORDERSTYLE_FIXED$ to 1 equ PS_FORMBORDERSTYLE_SIZEABLE$ to 2 equ PS_FORMBORDERSTYLE_DIALOG$ to 3 equ PS_FORMBORDERSTYLE_FIXEDTOOL$ to 4 equ PS_FORMBORDERSTYLE_SIZEABLETOOL$ to 5 // These values map onto the following window styles: // // FormBorderStyle | Window Styles Window Ex Styles // ===================================================================== // None | WS_POPUP | // --------------------------------------------------------------------- // Fixed | WS_POPUP | WS_EX_WINDOWEDGE // | WS_BORDER | // --------------------------------------------------------------------- // Sizeable | WS_POPUP | WS_EX_WINDOWEDGE // | WS_BORDER | // | WS_THICKFRAME | // --------------------------------------------------------------------- // Dialog | WS_POPUP | WS_EX_DLGMODALFRAME // | | WS_EX_WINDOWEDGE // --------------------------------------------------------------------- // FixedTool | WS_POPUP | WS_EX_WINDOWEDGE // | WS_BORDER | WS_EX_TOOLWINDOW // --------------------------------------------------------------------- // SizeableTool | WS_POPUP | WS_EX_WINDOWEDGE // | WS_BORDER | WS_EX_TOOLWINDOW // | WS_THICKFRAME | // --------------------------------------------------------------------- // // NB: The "None" style cannot be displayed with a caption. // Backwards compatibilty with the old FRAMESTYLE name. equ PS_FRAMESTYLE_NONE$ to PS_FORMBORDERSTYLE_NONE$ equ PS_FRAMESTYLE_FIXED$ to PS_FORMBORDERSTYLE_FIXED$ equ PS_FRAMESTYLE_SIZEABLE$ to PS_FORMBORDERSTYLE_SIZEABLE$ equ PS_FRAMESTYLE_DIALOG$ to PS_FORMBORDERSTYLE_DIALOG$ equ PS_FRAMESTYLE_FIXEDTOOL$ to PS_FORMBORDERSTYLE_FIXEDTOOL$ equ PS_FRAMESTYLE_SIZEABLETOOL$ to PS_FORMBORDERSTYLE_SIZEABLETOOL$ /////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////// // SIZINGMODE property equates equ PS_SIZINGMODE_DEFAULT$ to 0 equ PS_SIZINGMODE_ALWAYS$ to 1 equ PS_SIZINGMODE_NEVER$ to 2 /////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////// // SHOWEFFECT/HIDEEFFECT property equ PS_SHE_NONE$ to 0 equ PS_SHE_FADE$ to 1 equ PS_SHE_SLIDE_DOWN$ to 2 equ PS_SHE_SLIDE_UP$ to 3 equ PS_SHE_SLIDE_RIGHT$ to 4 equ PS_SHE_SLIDE_LEFT$ to 5 equ PS_SHE_SLIDE_DOWN_RIGHT$ to 6 equ PS_SHE_SLIDE_DOWN_LEFT$ to 7 equ PS_SHE_SLIDE_UP_RIGHT$ to 8 equ PS_SHE_SLIDE_UP_LEFT$ to 9 equ PS_SHE_SLIDE_DEFAULT$ to -1 /////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////// * // CENTER method equates * // * // param1 - If TRUE then Center to Parent else Center to Desktop * // * // param2 - Requested SIZE (all fields default to "-1") * // * // <1> X-Position (-1 means center it on the X-Axis) * // <2> Y-Position (-1 means center it on the Y-Axis) * // <3> Width (-1 means leave the window width as is) * // <4> Height (-1 means leave the window height as is) * // * // param3 - If TRUE then just return the calculated size, don't * // actually set it. * // * // param4 - Options: * // * // - If Centering on the Parent then this argument contains * // the Parent Size to use (@'fm'd - overrides actual parent * // size) * // * // - If Centering on the Desktop then this contains: * // * // <1> Force Boundary Check: If TRUE then check that the * // frame is within the bounds of desktop. Usually * // this is only checked if we don't specify a specific * // X or Y coordinate (i.e. vParams[1]<1> and <2> are * // both "-1" ) * // * // <2> Desktop "anchor" window ID. This field can contain * // the name of an "anchor" window - this means the frame * // will be centered on the same monitor as the "anchor" * // * // Returns - Calculated size coordinates * // NewSize equ PSMTD_CENTER_DFT_XPOS$ to -1 equ PSMTD_CENTER_DFT_YPOS$ to -1 equ PSMTD_CENTER_DFT_WIDTH$ to -1 equ PSMTD_CENTER_DFT_HEIGHT$ to -1 * // Options (param4) equ PSMTD_CENTER_OPT_BOUNDSCHECK$ to 1 equ PSMTD_CENTER_OPT_ANCHORWINID$ to 2 /////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////// // Initial position equates equ PS_IP_AS_DESIGNED$ to 0 equ PS_IP_CENTER_DESKTOP$ to 1 equ PS_IP_CENTER_PARENT$ to 2 /////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////// // PLACEMENTDATA property // // <1> showCmd ( SW_ value ) // // <2> Normal Position // // <2,1> Left // <2,2> Top // <2,3> Width // <2,4> Height // // <3> Min position (Specifies the coordinates of the window's upper-left // corner when the window is minimized) // // <3,1> Left // <3,2> Top // // NB: If this is set then WPF_SETMINPOSITION must be set in the Flags // field // // <4> Max position (Specifies the coordinates of the window's upper-left // corner when the window is maximized) // // <4,1> Left // <4,2> Top // // <5> Flags (Set_Property only) equ PS_PD_POS_SHOWCMD$ to 1 equ PS_PD_POS_NORMALPOS$ to 2 equ PS_PD_POS_MINPOS$ to 3 equ PS_PD_POS_MAXPOS$ to 4 equ PS_PD_POS_FLAGS$ to 5 /////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////// // LOCKTYPE property equates equ PS_LKTYPE_EXCLUSIVE$ to 0 equ PS_LKTYPE_SHARED$ to 1 equ PS_LKTYPE_NONE$ to 2 /////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////// // LOCKCOORDINATION property equates equ PS_LKCOORD_NORMAL$ to 0 equ PS_LKCOORD_WITHTABLE$ to 1 /////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////// // PROGRESSSTATE property equates equ PS_PGS_NOPROGRESS$ to 0 equ PS_PGS_NORMAL$ to 1 ; // Spectrum is Green equ PS_PGS_ERROR$ to 2 ; // Red equ PS_PGS_PAUSED$ to 3 ; // Amber equ PS_PGS_INDETERMINATE$ to 4 ; // Green marquee /////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////// // SCALEFACTOR property equates // // <1> ScaleFactor // <2> Min ScaleFactor // <3> Max ScaleFactor // <4> ScaleFactor Increment equ PS_SCF_POS_FACTOR$ to 1 equ PS_SCF_POS_MINFACTOR$ to 2 equ PS_SCF_POS_MAXFACTOR$ to 3 equ PS_SCF_POS_INCREMENT$ to 4 equ PS_SCF_DFT_MINFACTOR$ to 0.5 equ PS_SCF_DFT_MAXFACTOR$ to 5.0 equ PS_SCF_DFT_INCREMENT$ to 0 /////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////// // WRITEMODE property equates equ PS_WRMD_CONTROLS_ONLY$ to 0 equ PS_WRMD_ALL$ to 1 /////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////// #endif /////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////