open-insight/SYSPROG/STPROCINS/PS_EDITTABLE_EQUATES.txt
Infineon\StieberD 7762b129af pre cutover push
2024-09-04 20:33:41 -07:00

891 lines
46 KiB
Plaintext

compile insert PS_EditTable_Equates
/*
** Copyright (C) 2015-2024 Revelation Software Inc. All Rights Reserved **
Author : Wile C Coyote - Super Genius
Date : April 2015
Purpose : Constants for working with PS EDITTABLE object structures
Comments
========
Amended Date Reason
======= ==== ======
Mr C 06 Jun 24 Added CELLSTYLES property equates
Mr C 20 Feb 24 Added PSSX_EDT_SVMMULTILINEDELIM$, PSSX_EDT_TMMULTILINEDELIM$
Mr C 19 Feb 24 Renamed PS_EDT_AT_LEAVETRAILINGROWS$ to PS_EDT_AT_NOTRAILINGROWS$
Mr C 29 Aug 23 Update PS Extended styles for ALLOWRESETPREVPOS
Mr C 24 Oct 22 Added CELLPOSCHANGED context flags
Mr C 15 Dec 21 Corrected CELLTYPE comments
Mr C 21 Oct 21 Added missing PS extended style equates
Mr C 25 Aug 20 Added GlyphList OIWIN/OIWINEXE constants
Mr C 05 Sep 19 Added DELETEROW delInfo constants
Added INSERTROW insInfo constants
Mr C 13 Apr 19 Added PSS_EDT_ALLOWLASTROWDELETE$
Mr C 10 Apr 19 Updated CellFocusRect properties
Mr C 09 Apr 18 Added PSS_EDT_NOAUTOSORTMARKERS$
Mr C 27 Jan 17 Added ETCLS_MANUALDROPDOWN$
Mr C 17 Jan 17 Removed ReadOnly CellStyle
Updated OIWIN/EXE structures for Column cellstyles
Mr C 16 Jan 17 Renamed PSS_EDT_NOROWPADDING$ to PSS_EDT_NOAUTOROWFILLING$
Mr C 05 Jan 17 Added AUTOTRIMOPTIONS equates
Mr C 21 Sep 16 Fixed another missing "$" suffix??
Mr C 08 Sep 16 Fixed missing "$" suffix
Mr C 01 Jul 16 And even more comment updates
Mr C 21 Jun 16 More comment updates
Mr C 24 May 16 Adjusted some comments for clarity regarding
CellStyles
Mr C 29 Mar 16 Added FOCUSRECTSTYLE equates
djh 25 Mar 16 Add FocusRect props to CFGINFO
djh 23 Mar 16 Add $ to end of PSS_EDT_COLHDRSORTCLICK and PSS_EDT_COLHDRSORTDBLCLICK
Mr C 22 Mar 16 More cleanup
Mr C 18 Feb 16 Updated comments
Mr C 21 Nov 15 Added EMPTYTEXT constants
Mr C 17 Nov 15 Added COLHEADERSORTINGMODE constants
Updated PS style equates
Mr C 05 Oct 15 Spelling ...
Mr C 28 Sep 15 Updated config info layout for v9 compatibility
Mr C 27 Sep 15 Updated SORT method
Mr C 25 Sep 15 Renamed SORTEDCOL prop -> SORT method
Mr C 09 Sep 15 Cleanup due to clarification of COLUMN API
Mr C 08 Sep 15 Readded config info layout :-S
Added PSS_EDT_COLHEADERSORTING$, PSS_EDT_V10ROWEVENTMODE$
Added ROWEVENTMODE constants
Mr C 07 Sep 15 Added GridStyle equates, updated config info layout
Added PSS_EDT_NOROWPADDING$
Mr C 10 Aug 15 Updated SORTEDCOL equates
Mr C 02 Jul 15 Added COL/ROWSELECTMODE equates
*/
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
#ifndef _PS_EDITTABLE_EQUATES_
#define _PS_EDITTABLE_EQUATES_
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
$insert oiWin_Equates
$insert ps_Equates
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
equ EDT_DEFCOLWIDTH$ to 80 ; // px
equ EDT_DEFROWHEADERWIDTH$ to 40 ; // px
equ EDT_DEFROWHEIGHT$ to 0 ; // Based on FONT
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
// CELLTYPE equates
//
// A data cell can support the following types
//
// Edit
// CheckBox
// Button
// DropDown
// DropDownEdit
//
// A header cell can support the following types
//
// Static
// CheckBox
equ PS_EDT_CT_DEFAULT$ to -1
equ PS_EDT_CT_NORMAL$ to 0
equ PS_EDT_CT_CHECKBOX$ to 1
equ PS_EDT_CT_BUTTON$ to 2
equ PS_EDT_CT_DROPDOWN$ to 3
equ PS_EDT_CT_DROPDOWNEDIT$ to 4
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
// CELLSTYLE method equates
//
// A column, row or cell can have a style applied to it that is used for
// a specific state (this applies to header cells as well)
//
// The states that can have a style applied are:
//
// Normal
// Hot
// Disabled
// Selected
// HotSelected
// SelectedNoFocus
// Current
equ PS_EDT_CS_NORMAL$ to 0
equ PS_EDT_CS_HOT$ to 1
equ PS_EDT_CS_DISABLED$ to 2
equ PS_EDT_CS_SELECTED$ to 3
equ PS_EDT_CS_HOTSELECTED$ to 4
equ PS_EDT_CS_SELNOFOCUS$ to 5
equ PS_EDT_CS_CURRENT$ to 6
// The styling that can be applied for a state is defined by the
// following structure:
//
// <1> ForeColor (COLORREF)
// <2> BackColor From (COLORREF)
// <3> BackColor To (COLORREF)
// <4> Bold TRUE$/FALSE$
// <5> Italic TRUE$/FALSE$
// <6> Underline TRUE$/FALSE$
// <7> Translucency (0-100)
// <8> GlyphIndex (>=0)
equ PS_EDT_CS_POS_FORECOLOR$ to 1
equ PS_EDT_CS_POS_BACKCOLORFROM$ to 2
equ PS_EDT_CS_POS_BACKCOLORTO$ to 3
equ PS_EDT_CS_POS_BOLD$ to 4
equ PS_EDT_CS_POS_ITALIC$ to 5
equ PS_EDT_CS_POS_UNDERLINE$ to 6
equ PS_EDT_CS_POS_TRANSLUCENCY$ to 7
equ PS_EDT_CS_POS_GLYPHINDEX$ to 8
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
// CELLSTYLES property equates
//
// Category indexes
//
// <1> Data-cell CellStyles
// <2> Column Header CellStyles
// <3> Row Header CellStyles
equ PS_EDT_CSS_POS_DATACELL$ to 1
equ PS_EDT_CSS_POS_COLHEADER$ to 2
equ PS_EDT_CSS_POS_ROWHEADER$ to 3
// State indexes
//
// <0,1> Normal State CellStyle
// <0,2> Hot State CellStyle
// <0,3> Disabled State CellStyle
// <0,4> Selected State CellStyle
// <0,5> HotSelected State CellStyle
// <0,6> SelectedNoFocus State CellStyle
// <0,7> CurrentCell State CellStyle
equ PS_EDT_CSS_POS_NORMAL$ to 1
equ PS_EDT_CSS_POS_HOT$ to 2
equ PS_EDT_CSS_POS_DISABLED$ to 3
equ PS_EDT_CSS_POS_SELECTED$ to 4
equ PS_EDT_CSS_POS_HOTSELECTED$ to 5
equ PS_EDT_CSS_POS_SELNOFOCUS$ to 6
equ PS_EDT_CSS_POS_CURRENT$ to 7
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
// Cell EDITMODE equates
//
// Note that DISABLED, PROTECTED and READONLY can apply to a checkbox,
// but they are mainly aimed at normal edit/dropdown cells
equ PS_EDT_EM_DEFAULT$ to -1 ; // Resets the editmode to the col/row default
equ PS_EDT_EM_DISABLED$ to 0 ; // Gray Text, Gray Background
equ PS_EDT_EM_PROTECTED$ to 1 ; // Normal Text, Normal Background
equ PS_EDT_EM_READONLY$ to 2 ; // Normal Text, Gray Background
equ PS_EDT_EM_ENABLED$ to 3 ; // Normal Text, Normal Background
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
// COL/ROWSELECTMODE equates
equ PS_EDT_SM_NONE$ to 0; // Row/Column select mode disabled
equ PS_EDT_SM_SINGLE$ to 1; // Single Row/Column select mode
equ PS_EDT_SM_TOGGLE$ to 2; // Single "Toggle" Row/Column select mode
equ PS_EDT_SM_MULTI$ to 3; // Multi-Row/Column select mode
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
// GRIDSTYLE equates
equ PS_EDT_GS_NONE$ to 0; // No grid
equ PS_EDT_GS_HORZ$ to 1; // Horizontal lines only
equ PS_EDT_GS_VERT$ to 2; // Vertical lines only
equ PS_EDT_GS_BOTH$ to 3; // Horizontal and vertical lines
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
// CLICKPOS equates
equ PS_EDT_CP_EMPTY$ to 0
equ PS_EDT_CP_COLHEADER$ to 1
equ PS_EDT_CP_GRIDLINE$ to 2
equ PS_EDT_CP_CELL$ to 3
equ PS_EDT_CP_ROWHEADER$ to 4
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
// ROWEVENTMODE equates
equ PS_EDT_REV_PREHANDLER$ to 0 ; // v9 style INSERTROW/DELETEROW processing
equ PS_EDT_REV_POSTHANDLER$ to 1 ; // v10 style INSERTROW/DELETEROW processing
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
// COLHEADERSORTINGMODE equates
equ PS_EDT_CHSM_DISABLED$ to 0
equ PS_EDT_CHSM_SINGLECLICK$ to 1
equ PS_EDT_CHSM_DOUBLECLICK$ to 2
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
// FOCUSRECTSTYLE equates
equ PS_EDT_FRS_DEFAULT$ to -1
equ PS_EDT_FRS_DOTTED$ to 0
equ PS_EDT_FSR_SOLID$ to 1
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
// FOCUSRECTWEIGHT equates
equ PS_EDT_FRW_DEFAULT$ to -1 ; // 1px or SYSTEM
equ PS_EDT_FRW_MIN$ to 1
equ PS_EDT_FSR_MAX$ to 3
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
// SELECTIONSTYLE equates - determines if the non-header items in the
// edit table are painted in the classic Listbox style (solid fill), or in
// TreeView style (lighter color)
//
// Note that with some renderers (Classic and XP) the ListBox and TreeView
// items are painted in the same style so the SELECTIONSTYLE has no effect.
equ PS_EDT_SS_AUTO$ to 0; // Use the renderer default
equ PS_EDT_SS_LISTBOX$ to 1; // Render as normal ListBox items
equ PS_EDT_SS_TREEVIEW$ to 2; // Render as per Treeview items
// (if supported by the renderer)
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
// AUTOTRIMOPTIONS equates
//
// <1> If TRUE$ then treat whitespace as data
// <2> 2> If TRUE$ then don't leave a trailing blank row
// <3> If TRUE$ then scan all rows, not just the trailing ones
equ PS_EDT_AT_WHITESPACEISDATA$ to 1;
equ PS_EDT_AT_NOTRAILINGROWS$ to 2;
equ PS_EDT_AT_SCANALLROWS$ to 3;
// Deprecated - do not use - incorrect name ***
equ PS_EDT_AT_LEAVETRAILINGROW$ to PS_EDT_AT_NOTRAILINGROWS$
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
// MULTILINEDELIM equates
//
equ PS_EDT_MLD_DEFAULT$ to 0; // CRLF
equ PS_EDT_MLD_SVM$ to 1; // @svm
equ PS_EDT_MLD_TM$ to 2; // @tm
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
// SORT method
//
// call exec_Method( ctrlEntID, "SORT", sortCriteria, sortOptions )
//
// sortCriteria ===
//
// This argument is comprised of three fields that form an an AMV
// group.
//
// <0,1> @svm'd list of columns to sort by
// <0,2> @svm'd list of sorting directions/justification
//
// 0 - Descending Left
// 1 - Ascending Left
// 2 - Descending Right
// 3 - Ascending Right
//
// <0,3> @svm'd list of ICONV patterns
//
equ EGSC_POS_SORTCOLS$ to 1
equ EGSC_POS_SORTDIRS$ to 2
equ EGSC_POS_SORTCONV$ to 3
equ EGSC_SORT_DESCLEFT$ to 0
equ EGSC_SORT_ASCLEFT$ to 1
equ EGSC_SORT_DESCRIGHT$ to 2
equ EGSC_SORT_ASCRIGHT$ to 3
// sortOptions ===
//
// This argument specifies the options for the SORT.
//
// <0,1> If TRUE$ then exceute the TRIM method before the sorting
// operation takes place, respecting the TRIMOPTIONS
// property settings
//
equ EGSC_SORT_OPT_TRIM$ to 1
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
// Style equates (Properties held in window style bits in
// PSPOS_SDKSTYLE$ <0,0,1>)
// Old v9 (DataTbl) equates for reference and mapping
equ DTS_NONE$ to 0x00000000;
equ DTS_VIRTUALMEM$ to 0x00000001;
equ DTS_EDIT$ to 0x00000004;
equ DTS_RESIZE$ to 0x00000008;
equ DTS_NUMBERS$ to 0x00000010;
equ DTS_LETTERS$ to 0x00000020;
equ DTS_OWNERDEF$ to 0x00000030; // This is the default in v9
equ DTS_HGRID$ to 0x00000040;
equ DTS_VGRID$ to 0x00000080;
equ DTS_ROWSELECT$ to 0x00000100;
equ DTS_MULTIROW$ to 0x00000200;
equ DTS_COLSELECT$ to 0x00000400;
equ DTS_MULTICOL$ to 0x00000800;
equ DTS_SCROLLNOHIDE$ to 0x00001000;
equ DTS_ROWBUTTONS$ to 0x00002000;
equ DTS_ROWNUMBERS$ to 0x00004000;
equ DTS_DROPDOWN$ to 0x00008000;
equ DTS_AUTODROPDN$ to 0x00008002;
equ DTS_GRID$ to bitOr( DTS_HGRID$, DTS_VGRID$ )
////////////////////////////////////////////////////////////////////////////
// V10 (EditGrid) equates
equ ETS_AUTOAPPENDROW$ to 0x00000001;
equ ETS_AUTOTRIMROWS$ to 0x00000002;
equ ETS_EDIT$ to 0x00000004;
equ ETS_AUTOTRIMWSOK$ to 0x00000008; // Treat whitespace as data for autotrim
equ ETS_COLHEADERS$ to 0x00000010;
equ ETS_AUTOTRIMDELALL$ to 0x00000020; // Don't leave a blank row after the last row
equ ETS_HGRID$ to 0x00000040;
equ ETS_VGRID$ to 0x00000080;
equ ETS_ROWSELECT$ to 0x00000100;
equ ETS_MULTIROWSELECT$ to 0x00000200;
equ ETS_COLSELECT$ to 0x00000400;
equ ETS_MULTICOLSELECT$ to 0x00000800;
equ ETS_SCROLLNOHIDE$ to 0x00001000;
equ ETS_ROWBUTTONS$ to 0x00002000;
equ ETS_ROWNUMBERS$ to 0x00004000;
equ ETS_UNUSED_BIT16$ to 0x00008000;
equ ETS_COLTOGGLESELECT$ to bitOr( ETS_COLSELECT$, ETS_MULTICOLSELECT$ )
equ ETS_ROWTOGGLESELECT$ to bitOr( ETS_ROWSELECT$, ETS_MULTIROWSELECT$ )
equ ETS_GRID$ to bitOr( ETS_HGRID$, ETS_VGRID$ )
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
// EditGrid Cell styles
equ ETCLS_LEFT$ to 0x00000000;
equ ETCLS_DISABLED$ to 0x00000001; // Used in header for ETCHS_HIDDEN
equ ETCLS_PROTECTED$ to 0x00000002; // Used in header for ETCHS_RESIZE
equ ETCLS_SKIPPED$ to 0x00000004; // Used in header for EGCHS_SORTASCEND
equ ETCLS_AUTOEDIT$ to 0x00000008; // Used in header for EGCHS_SORTDESCEND
equ ETCLS_CENTER$ to 0x00000010;
equ ETCLS_RIGHT$ to 0x00000020;
equ ETCLS_VCENTER$ to 0x00000040;
equ ETCLS_VBOTTOM$ to 0x00000080;
equ ETCLS_LOWERCASE$ to 0x00000100;
equ ETCLS_UPPERCASE$ to 0x00000200;
equ ETCLS_PASSWORD$ to 0x00000400;
equ ETCLS_DRAWHTML$ to 0x00000800;
equ ETCLS_SHOWELLIPSES$ to 0x00001000;
equ ETCLS_MULTILINE$ to 0x00002000;
equ ETCLS_WORDWRAP$ to 0x00004000;
equ ETCLS_AUTOSCROLL$ to 0x00008000;
equ ETCLS_VSCROLL$ to 0x00010000;
equ ETCLS_HSCROLL$ to 0x00020000;
equ ETCLS_BUTTON$ to 0x00040000;
equ ETCLS_DROPDOWN$ to 0x00080000;
equ ETCLS_DROPDOWNEDIT$ to 0x00100000;
equ ETCLS_OPTIONSBUTTON$ to 0x00200000;
equ ETCLS_CHECKBOX$ to 0x00400000;
equ ETCLS_CHKRIGHT$ to 0x00800000;
equ ETCLS_CHKCENTER$ to 0x01000000;
equ ETCLS_GLYPHCENTER$ to 0x02000000;
equ ETCLS_GLYPHRIGHT$ to 0x04000000;
equ ETCLS_GLYPHVCENTER$ to 0x08000000;
equ ETCLS_GLYPHVBOTTOM$ to 0x10000000;
equ ETCLS_ENABLEDRAG$ to 0x20000000;
equ ETCLS_ENABLEDROP$ to 0x40000000;
equ ETCLS_MANUALDROPDOWN$ to 0x80000000;
equ ETCLS_READONLY$ to ( ETCLS_DISABLED$ + ETCLS_PROTECTED$ );
equ ETCLS_EDITMODE_MASK$ to ( ETCLS_READONLY$ );
equ ETCLS_TEXTALIGN_MASK$ to ( ETCLS_CENTER$ + ETCLS_RIGHT$ + ETCLS_VCENTER$ + ETCLS_VBOTTOM$ );
equ ETCLS_TEXTCASE_MASK$ to ( ETCLS_LOWERCASE$ + ETCLS_UPPERCASE$ );
equ ETCLS_CHECKBOX_MASK$ to ( ETCLS_CHECKBOX$ + ETCLS_CHKRIGHT$ + ETCLS_CHKCENTER$ );
equ ETCLS_GLYPHALIGN_MASK$ to ( ETCLS_GLYPHCENTER$ + ETCLS_GLYPHRIGHT$ + ETCLS_GLYPHVCENTER$ + ETCLS_GLYPHVBOTTOM$ );
equ ETCLS_SCROLLBARS_MASK$ to ( ETCLS_VSCROLL$ + ETCLS_HSCROLL$ );
equ ETCLS_DROPDOWN_MASK$ to ( ETCLS_DROPDOWN$ + ETCLS_DROPDOWNEDIT$ );
////////////////////////////////////////////////////////////////////////////
// EditGrid Header Cell styles - these are mapped into normal cell styles
// for the most part. This is to avoid having to write virtual functions
// for the Header cells to handle TextAlign, DrawHTML and so on.
equ ETCHS_LEFT$ to ETCLS_LEFT$;
equ ETCHS_HIDDEN$ to 0x00000001;
equ ETCHS_RESIZE$ to 0x00000002;
equ ETCHS_UNUSED_BIT3$ to 0x00000004;
equ ETCHS_UNUSED_BIT4$ to 0x00000008;
equ ETCHS_CENTER$ to ETCLS_CENTER$;
equ ETCHS_RIGHT$ to ETCLS_RIGHT$;
equ ETCHS_VCENTER$ to ETCLS_VCENTER$;
equ ETCHS_VBOTTOM$ to ETCLS_VBOTTOM$;
equ ETCHS_UNUSED_BIT09$ to 0x00000100;
equ ETCHS_UNUSED_BIT10$ to 0x00000200;
equ ETCHS_UNUSED_BIT11$ to 0x00000400;
equ ETCHS_DRAWHTML$ to ETCLS_DRAWHTML$;
equ ETCHS_SHOWELLIPSES$ to ETCLS_SHOWELLIPSES$;
equ ETCHS_MULTILINE$ to ETCLS_MULTILINE$;
equ ETCHS_WORDWRAP$ to ETCLS_WORDWRAP$;
equ ETCHS_UNUSED_BIT16$ to 0x00008000;
equ ETCHS_UNUSED_BIT17$ to 0x00010000;
equ ETCHS_UNUSED_BIT18$ to 0x00020000;
equ ETCHS_UNUSED_BIT19$ to 0x00040000;
equ ETCHS_UNUSED_BIT20$ to 0x00080000;
equ ETCHS_UNUSED_BIT21$ to 0x00100000;
equ ETCHS_UNUSED_BIT22$ to 0x00200000;
equ ETCHS_CHECKBOX$ to ETCLS_CHECKBOX$;
equ ETCHS_CHKRIGHT$ to ETCLS_CHKRIGHT$;
equ ETCHS_CHKCENTER$ to ETCLS_CHKCENTER$;
equ ETCHS_GLYPHCENTER$ to ETCLS_GLYPHCENTER$;
equ ETCHS_GLYPHRIGHT$ to ETCLS_GLYPHRIGHT$;
equ ETCHS_GLYPHVCENTER$ to ETCLS_GLYPHVCENTER$;
equ ETCHS_GLYPHVBOTTOM$ to ETCLS_GLYPHVBOTTOM$;
equ ETCHS_UNUSED_BIT29$ to 0x20000000;
equ ETCHS_UNUSED_BIT30$ to 0x40000000;
// equ ETCHS_IMAGESTRETCH$ to ETCLS_IMAGESTRETCH$;
equ ETCHS_TEXTALIGN_MASK$ to ( ETCHS_CENTER$ + ETCHS_RIGHT$ + ETCHS_VCENTER$ + ETCHS_VBOTTOM$ );
equ ETCHS_CHECKBOX_MASK$ to ( ETCHS_CHECKBOX$ + ETCHS_CHKRIGHT$ + ETCHS_CHKCENTER$ );
equ ETCHS_GLYPHALIGN_MASK$ to ( ETCHS_GLYPHCENTER$ + ETCHS_GLYPHRIGHT$ + ETCHS_GLYPHVCENTER$ + ETCHS_GLYPHVBOTTOM$ );
////////////////////////////////////////////////////////////////////////////
// These are for mapping from the old DataTbl.dll for v9 EditTables
// being loaded in legacy mode
equ DTCS_RESIZE$ to 0x00000001;
equ DTCS_FIXED$ to 0x00000002; // NOT USED
equ DTCS_EDIT$ to 0x00000004;
equ DTCS_PROTECT$ to 0x00000008;
equ DTCS_UPPERCASE$ to 0x00000010;
equ DTCS_HIDDEN$ to 0x00000020;
equ DTCS_LEFT$ to 0x00000000;
equ DTCS_CENTER$ to 0x00000040;
equ DTCS_RIGHT$ to 0x00000080;
equ DTCS_HEADCENTER$ to 0x00000100;
equ DTCS_HEADRIGHT$ to 0x00000200;
equ DTCS_VSCROLL$ to 0x00000400;
equ DTCS_HSCROLL$ to 0x00000800;
equ DTCS_SKIPPED$ to 0x00001000;
equ DTCS_LOCKED$ to 0x00002000; // NOT USED
equ DTCS_SORTASC$ to 0x00004000; // NOT USED
equ DTCS_SORTDES$ to 0x00008000; // NOT USED
equ DTCS_CHECKBOX$ to 0x00010000;
equ DTCS_DROPDOWN$ to 0x00020000;
equ DTCS_HEADMULTI$ to 0x00040000;
equ DTCS_CHKRIGHT$ to 0x00080000; // Right-aligned CheckBoxes
equ DTCS_VALIGNCENTER$ to 0x00100000;
equ DTCS_VALIGNBOTTOM$ to 0x00200000;
equ DTCS_DROPDOWNEDIT$ to 0x00400000;
equ DTCS_OPTIONSBUTTON$ to 0x00800000;
equ DTCS_ENABLEDROPDOWNDRAG$ to 0x01000000; // Can drag from Drop down LIST <- not supported in v10
equ DTCS_MULTILINE$ to 0x02000000;
equ DTCS_AUTOVSCROLL$ to 0x04000000;
equ DTCS_AUTOHSCROLL$ to 0x08000000;
equ DTCS_ENABLEDRAG$ to 0x10000000;
equ DTCS_ENABLEDROP$ to 0x20000000;
equ DTCS_CHKCENTER$ to 0x40000000;
equ DTCS_RESERVED$ to 0x80000000; // Do not use for row and cell styles
equ DTCS_BTNRIGHT$ to DTCS_CHKRIGHT$;
equ DTCS_BTNCENTER$ to DTCS_CHKCENTER$;
equ DTCS_TEXTALIGN_MASK$ to ( DTCS_CENTER$ + DTCS_RIGHT$ + DTCS_VALIGNCENTER$ + DTCS_VALIGNBOTTOM$ );
equ DTCS_HEADTEXTALIGN_MASK$ to ( DTCS_HEADCENTER$ + DTCS_HEADRIGHT$ );
equ DTCS_SCROLLBARS_MASK$ to ( DTCS_VSCROLL$ + DTCS_HSCROLL$ );
equ DTCS_CHECKBOXSTYLE_MASK$ to ( DTCS_CHECKBOX$ + DTCS_CHKRIGHT$ + DTCS_CHKCENTER$ );
// Row styles
equ DTRS_LABELLEFT$ to 0x00000100; // Hijacked DTCS_HEADCENTER
equ DTRS_LABELCENTER$ to 0x00000000; // The default ....
equ DTRS_LABELRIGHT$ to 0x00000200; // Hijacked DTCS_HEADRIGHT
equ DTRS_HEADTEXTALIGN_MASK$ to bitOr( DTRS_LABELLEFT$, DTRS_LABELRIGHT$ );
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
// PS Style equates (Properties held in window style bits in
// PSPOS_PSSTYLE$ <0,0,1>)
equ PSS_EDT_HOTTRACKCELL$ to 0x00000001;
equ PSS_EDT_HIGHLIGHTHEADERS$ to 0x00000002;
equ PSS_EDT_COLHDRSORTCLICK$ to 0x00000020;
equ PSS_EDT_COLHDRSORTDBLCLK$ to 0x00000040;
equ PSS_EDT_NOAUTOROWFILLING$ to 0x00000080; // SUPPRESSAUTOROWFILLING property
equ PSS_EDT_AUTOTRIMSCANALL$ to 0x00000100;
equ PSS_EDT_PRESERVEFORMATTING$ to 0x00000200;
equ PSS_EDT_V10ROWEVENTMODE$ to 0x00000400; // ROWEVENTMODE property
equ PSS_EDT_NOROWDRAGSELECT$ to 0x00000800; // ALLOWROWDRAGSELECT property (inverse)
equ PSS_EDT_ALLOWDELETE$ to 0x00020000; // ALLOWROWDELETE property
equ PSS_EDT_ALLOWINSERT$ to 0x00040000; // ALLOWROWINSERT property
equ PSS_EDT_ALLOWLASTROWDELETE$ to 0x00080000; // ALLOWLASTROWDELETE property
equ PSS_EDT_SORTTRIM$ to 0x00100000; // SORTTRIM property
equ PSS_EDT_ENABLECOLDRAG$ to 0x00200000; // ALLOWCOLDRAG property
equ PSS_EDT_ENABLEROWDRAG$ to 0x00400000; // ALLOWROWDRAG property
equ PSS_EDT_NOAUTOSORTMARKERS$ to 0x08000000; // SUPPRESSAUTOSORTMARKERS property
// Extended PS Style equates - (Properties held in window style bits in
// PSPOS_PSSTYLE$ <0,0,2>)
equ PSSX_EDT_HSCROLLBAR$ to 0x00000001
equ PSSX_EDT_VSCROLLBAR$ to 0x00000002
equ PSSX_EDT_DEFROWHEIGHTSET$ to 0x00000004
equ PSSX_EDT_COLHDRHEIGHTSET$ to 0x00000008
equ PSSX_EDT_ROWSTRIPE$ to 0x00000010
equ PSSX_EDT_ALLOWROWCLIPCOPY$ to 0x00000020
equ PSSX_EDT_ALLOWROWCLIPPASTE$ to 0x00000040
equ PSSX_EDT_ACCEPTRETURN$ to 0x00000200
equ PSSX_EDT_ALLOWRESETPREVPOS$ to 0x00000400
equ PSSX_EDT_SHOWSELNOFOCUS$ to 0x00000800
equ PSSX_EDT_SUPPRESSCELLTOOLTIPS$ to 0x00001000
equ PSSX_EDT_SVMMULTILINEDELIM$ to 0x00100000
equ PSSX_EDT_TMMULTILINEDELIM$ to 0x00200000
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
// SYSREPOSWINS structure overrides
equ POS_EDT_LIST$ to POS_LIST$ ; // @svm/@tm-delimited
equ POS_EDT_CFGINFO$ to POS_ROWLIMIT$ ; // @svm-delimited
equ POS_EDT_COLHDRFONT$ to POS_LOGFONT_1$ ; // @svm-delimited
equ POS_EDT_CELLSTYLES$ to POS_TEXT_10$ ; // @svm/@tm-delimited
equ POS_EDT_GRIDLINECOLOR$ to POS_COLOR_1$ ; // Single color only - Not a gradient
equ POS_EDT_EMPTYTEXT$ to POS_TEXT_14$
equ POS_EDT_GLYPHLIST$ to POS_IMGLIST_1$
equ POS_EDT_GLYPHLIST_PROPS$ to POS_IMGLIST_1_PROPS$
// Column positions - these form an "AMV group". Note that the original four
// v9 fields were @tm delimited for some reason - All fields in the group are
// now standardized to @svm.
equ POS_EDT_COLLABELS$ to POS_LABEL$ ; // @svm-delimited
equ POS_EDT_COLSTYLES$ to POS_COLSTYLES$ ; // @svm-delimited
equ POS_EDT_COLDATALENS$ to POS_CHARCOUNT$ ; // @svm-delimited
equ POS_EDT_COLDISPWIDTHS$ to POS_COLWIDE$ ; // @svm-delimited
equ POS_EDT_HDRSTYLES$ to POS_TYPESPECIFIC$ ; // @svm-delimited
equ POS_EDT_HDRFONTS$ to POS_TEXT_8$ ; // @svm/@tm-delimited
equ POS_EDT_HDRTOOLTIPS$ to POS_TEXT_2$ ; // @svm-delimited
equ POS_EDT_DROPDOWNLIST$ to POS_TEXT_3$ ; // @svm/@tm-delimited
equ POS_EDT_COLFONTS$ to POS_TEXT_9$ ; // @svm/@tm-delimited
equ POS_EDT_COLTOOLTIPS$ to POS_TEXT_4$ ; // @svm/@tm-delimited
equ POS_EDT_CUEBANNERS$ to POS_TEXT_1$ ; // @svm-delimited
equ POS_EDT_EDITMASKS$ to POS_TEXT_5$ ; // @svm/@tm-delimited
equ POS_EDT_VALIDCHARS$ to POS_TEXT_6$ ; // @svm-delimited
equ POS_EDT_COLBUTTONS$ to POS_TEXT_7$ ; // @svm/@tm-delimited (Text/Width)
equ POS_EDT_COLCELLSTYLES$ to POS_TEXT_11$ ; // @svm/@tm/";" -delimited
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
// SYSREPOSWINEXES structure overrides
equ PSPOS_EDT_LIST$ to PSPOS_LIST$ ; // @svm/@tm-delimited
equ PSPOS_EDT_CFGINFO$ to PSPOS_ROWLIMIT$ ; // @svm-delimited
equ PSPOS_EDT_COLHDRFONT$ to PSPOS_LOGFONT_1$ ; // @svm-delimited
equ PSPOS_EDT_CELLSTYLES$ to PSPOS_TEXT_10$ ; // @svm/@tm-delimited
equ PSPOS_EDT_GRIDLINECOLOR$ to PSPOS_COLOR_1$ ; // Single color only - Not a gradient
equ PSPOS_EDT_EMPTYTEXT$ to PSPOS_TEXT_14$
equ PSPOS_EDT_GLYPHLIST$ to PSPOS_IMGLIST_1$
equ PSPOS_EDT_GLYPHLIST_PROPS$ to PSPOS_IMGLIST_1_PROPS$
// Column positions - these form an "AMV group" (See POS_ equates above)
equ PSPOS_EDT_COLLABELS$ to PSPOS_LABEL$ ; // @svm-delimited
equ PSPOS_EDT_COLSTYLES$ to PSPOS_COLSTYLES$ ; // @svm-delimited
equ PSPOS_EDT_COLDATALENS$ to PSPOS_CHARCOUNT$ ; // @svm-delimited
equ PSPOS_EDT_COLDISPWIDTHS$ to PSPOS_COLWIDE$ ; // @svm-delimited
equ PSPOS_EDT_HDRSTYLES$ to PSPOS_TYPESPECIFIC$ ; // @svm-delimited
equ PSPOS_EDT_HDRFONTS$ to PSPOS_TEXT_8$ ; // @svm/@tm-delimited
equ PSPOS_EDT_HDRTOOLTIPS$ to PSPOS_TEXT_2$ ; // @svm-delimited
equ PSPOS_EDT_DROPDOWNLIST$ to PSPOS_TEXT_3$ ; // @svm/@tm-delimited
equ PSPOS_EDT_COLFONTS$ to PSPOS_TEXT_9$ ; // @svm/@tm-delimited
equ PSPOS_EDT_COLTOOLTIPS$ to PSPOS_TEXT_4$ ; // @svm/@tm-delimited
equ PSPOS_EDT_CUEBANNERS$ to PSPOS_TEXT_1$ ; // @svm-delimited
equ PSPOS_EDT_EDITMASKS$ to PSPOS_TEXT_5$ ; // @svm/@tm-delimited
equ PSPOS_EDT_VALIDCHARS$ to PSPOS_TEXT_6$ ; // @svm-delimited
equ PSPOS_EDT_COLBUTTONS$ to PSPOS_TEXT_7$ ; // @svm/@tm-delimited (Text/Width)
equ PSPOS_EDT_COLCELLSTYLES$ to PSPOS_TEXT_11$ ; // @svm/@tm/";" -delimited
///////////////////////////////////////////////////////////////////////////
// PSPOS_EDT_CFGINFO equates
//
// <0,0,1> Max Row Limit
// <0,0,2> Auto resize Col
// <0,0,3> RowStripe On Flag (Bool)
// <0,0,4> RowStripe Odd Color
// <0,0,5> RowStripe Even Color
// <0,0,6> Column Header Height
// <0,0,7> Row Height
// <0,0,8> Row Header Width (used to be <0,0,1> in PSPOS_COLWIDE$ )
// <0,0,9> Edit Key
// <0,0,10> Options Key
// <0,0,11> Min Row Limit
// <0,0,12> FocusRect Color
// <0,0,13> FocusRect Style
// <0,0,14> FocusRect Weight
equ PS_EDT_CIPOS_MAXROWLIMIT$ to 1 ; // 0 for no max row limit (the default)
equ PS_EDT_CIPOS_AUTOSIZECOL$ to 2 ; // 0 for no autosizing (the default)
equ PS_EDT_CIPOS_ROWSTRIPE$ to 3 ; // T/F - default is F
equ PS_EDT_CIPOS_ROWSTRIPEODDCOLOR$ to 4 ; // COLORREF
equ PS_EDT_CIPOS_ROWSTRIPEEVENCOLOR$ to 5 ; // COLORREF
equ PS_EDT_CIPOS_COLHDRHEIGHT$ to 6 ; // 0 to use default (font-based)
equ PS_EDT_CIPOS_COLROWHEIGHT$ to 7 ; // 0 to use default (font-based)
equ PS_EDT_CIPOS_ROWHEADERWIDTH$ to 8 ; // null to use default (40px)
equ PS_EDT_CIPOS_EDITKEY$ to 9 ; // Defaults to F2
equ PS_EDT_CIPOS_OPTIONSKEY$ to 10 ; // Defaults to F4
equ PS_EDT_CIPOS_MINROWLIMIT$ to 11 ; // 0 for no min row limit (the default)
equ PS_EDT_CIPOS_FOCUSRECTCOLOR$ to 12 ; // COLOROREF
equ PS_EDT_CIPOS_FOCUSRECTSTYLE$ to 13 ; // 0, 1 (Dotted,Solid)
equ PS_EDT_CIPOS_FOCUSRECTWEIGHT$ to 14 ; // 1-3
///////////////////////////////////////////////////////////////////////////
// PSPOS_EDT_CELLSTYLES$ equates
//
// This field contains the default CELLSTYLE for each state. There are
// three groups of CELLSTYLES. One for each of:
//
// 1) Data Cells
// 2) Column Header Cells
// 3) Row Header Cells
//
// <0,0,1> Normal cell CELLSTYLE <- always NULL (we use the normal FONT,FORECOLOR etc properties for this
// <0,0,2> Hot cell CELLSTYLE
// <0,0,3> Disabled cell CELLSTYLE
// <0,0,4> Selected cell CELLSTYLE
// <0,0,5> HotSelected cell CELLSTYLE
// <0,0,6> SelectedNoFocus cell CELLSTYLE
// <0,0,7> Current cell CELLSTYLE
//
// <0,0,11> Normal col header cell CELLSTYLE
// <0,0,12> Hot col header cell CELLSTYLE
// <0,0,13> Disabled col header cell CELLSTYLE
// <0,0,14> Selected col header cell CELLSTYLE
// <0,0,15> HotSelected col header cell CELLSTYLE
// <0,0,16> SelectedNoFocus col header cell CELLSTYLE
// <0,0,17> Currrent cell CELLSTYLE
//
// <0,0,21> Normal row header cell CELLSTYLE
// <0,0,22> Hot row header cell CELLSTYLE
// <0,0,23> Disabled row header cell CELLSTYLE
// <0,0,24> Selected row header cell CELLSTYLE
// <0,0,25> HotSelected row header cell CELLSTYLE
// <0,0,26> SelectedNoFocus row header cell CELLSTYLE
// <0,0,27> Current cell CELLSTYLE
//
// Each CELLSTYLE in these subvalues is an @tm delimited structure as
// noted above, i.e.
//
// <0,0,0,1> ForeColor (COLORREF)
// <0,0,0,2> BackColor From (COLORREF)
// <0,0,0,3> BackColor To (COLORREF)
// <0,0,0,4> Bold TRUE$/FALSE$
// <0,0,0,5> Italic TRUE$/FALSE$
// <0,0,0,6> Underline TRUE$/FALSE$
// <0,0,0,7> Translucency (0-100)
// <0,0,0,8> GlyphIndex (>=0)
equ PS_EDT_DCCSPOS_NORMAL$ to 1 ; equ PS_EDT_DCCSPOS_START$ to PS_EDT_DCCSPOS_NORMAL$
equ PS_EDT_DCCSPOS_HOT$ to 2
equ PS_EDT_DCCSPOS_DISABLED$ to 3
equ PS_EDT_DCCSPOS_SELECTED$ to 4
equ PS_EDT_DCCSPOS_HOTSELECTED$ to 5
equ PS_EDT_DCCSPOS_SELECTNOFOCUS$ to 6
equ PS_EDT_DCCSPOS_CURRENT$ to 7 ; equ PS_EDT_DCCSPOS_END$ to PS_EDT_DCCSPOS_CURRENT$
// -------------------------------------------------
equ PS_EDT_CHCSPOS_NORMAL$ to 11 ; equ PS_EDT_CHCSPOS_START$ to PS_EDT_CHCSPOS_NORMAL$
equ PS_EDT_CHCSPOS_HOT$ to 12
equ PS_EDT_CHCSPOS_DISABLED$ to 13
equ PS_EDT_CHCSPOS_SELECTED$ to 14
equ PS_EDT_CHCSPOS_HOTSELECTED$ to 15
equ PS_EDT_CHCSPOS_SELECTNOFOCUS$ to 16
equ PS_EDT_CHCSPOS_CURRENT$ to 17 ; equ PS_EDT_CHCSPOS_END$ to PS_EDT_CHCSPOS_CURRENT$
// -------------------------------------------------
equ PS_EDT_RHCSPOS_NORMAL$ to 21 ; equ PS_EDT_RHCSPOS_START$ to PS_EDT_RHCSPOS_NORMAL$
equ PS_EDT_RHCSPOS_HOT$ to 22
equ PS_EDT_RHCSPOS_DISABLED$ to 23
equ PS_EDT_RHCSPOS_SELECTED$ to 24
equ PS_EDT_RHCSPOS_HOTSELECTED$ to 25
equ PS_EDT_RHCSPOS_SELECTNOFOCUS$ to 26
equ PS_EDT_RHCSPOS_CURRENT$ to 27 ; equ PS_EDT_RHCSPOS_END$ to PS_EDT_RHCSPOS_CURRENT$
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
// INSERT column equates - structure definition for inserting columns
//
// <1> Header Text (v9 COLLABEL)
// <2> Style (v9 COLSTYLE) ETCLS_ styles (or DTCS_ for v9)
// <3> Data Length (v9 COLCHARS)
// <4> Display Width (v9 COLWIDTH)
// <5> Header Style ETCHS_ styles
// <6> Header Font
// <7> Header ToolTip
// <8> Cell DropDown List
// <9> Cell Font
// <10> Cell ToolTip
// <11> Cell CueBanner
// <12> Cell EditMask (@vm delimited)
// <13> Cell ValidChars
// <14> Cell ButtonText/Width (@vm delimited)
equ PS_EDT_INSPOS_HEADERTEXT$ to 1
equ PS_EDT_INSPOS_CELLSTYLE$ to 2
equ PS_EDT_INSPOS_DATALEN$ to 3
equ PS_EDT_INSPOS_DISPWIDTH$ to 4
equ PS_EDT_INSPOS_HEADERSTYLE$ to 5
equ PS_EDT_INSPOS_HEADERFONT$ to 6 ; // @svm delimited
equ PS_EDT_INSPOS_HEADERHELPTEXT$ to 7
equ PS_EDT_INSPOS_DROPDOWNLIST$ to 8 ; // @vm delimited
equ PS_EDT_INSPOS_FONT$ to 9
equ PS_EDT_INSPOS_HELPTEXT$ to 10
equ PS_EDT_INSPOS_CUEBANNER$ to 11
equ PS_EDT_INSPOS_EDITMASK$ to 12 ; // @vm delimited
equ PS_EDT_INSPOS_VALIDCHARS$ to 13
equ PS_EDT_INSPOS_BUTTONTEXT$ to 14
// However, both style fields can be substituted for an @vm'd array of
// property values if it makes life easier
//
// Column Style (field<2>) can be an @vm'd array structured like so:
//
// <0,1> CellType CELLTYPE property
// <0,2> EditMode EDITMODE property
// <0,3> TextAlign TEXTALIGN property
// <0,4> TextCase TEXTCASE property
// <0,5> CheckBoxAlign TEXTALIGN
// <0,6> OptionsButton 1/0
// <0,7> PasswordStyle 1/0
// <0,8> DrawHTML 1/0
// <0,9> ShowEllipses 1/0
// <0,10> Multiline 1/0
// <0,11> ScrollBars SCROLLBARS property
// <0,12> AutoScroll 1/0
// <0,13> WordWrap 1/0
// <0,14> GlyphAlign IMAGEALIGN property
// <0,15> AutoEdit 1/0
// <0,16> Skipped 1/0
// <0,17> EnableDrag 1/0
// <0,18> EnableDrop 1/0
equ PS_EDT_CCSPOS_CELLTYPE$ to 1
equ PS_EDT_CCSPOS_EDITMODE$ to 2
equ PS_EDT_CCSPOS_TEXTALIGN$ to 3
equ PS_EDT_CCSPOS_TEXTCASE$ to 4
equ PS_EDT_CCSPOS_CHECKBOXALIGN$ to 5
equ PS_EDT_CCSPOS_OPTIONSBUTTON$ to 6
equ PS_EDT_CCSPOS_PASSWORDSTYLE$ to 7
equ PS_EDT_CCSPOS_DRAWHTML$ to 8
equ PS_EDT_CCSPOS_SHOWELLIPSES$ to 9
equ PS_EDT_CCSPOS_MULTILINE$ to 10
equ PS_EDT_CCSPOS_SCROLLBARS$ to 11
equ PS_EDT_CCSPOS_AUTOSCROLL$ to 12
equ PS_EDT_CCSPOS_WORDWRAP$ to 13
equ PS_EDT_CCSPOS_GLYPHALIGN$ to 14
equ PS_EDT_CCSPOS_AUTOEDIT$ to 15
equ PS_EDT_CCSPOS_SKIPPED$ to 16
equ PS_EDT_CCSPOS_ENABLEDRAG$ to 17
equ PS_EDT_CCSPOS_ENABLEDROP$ to 18
// Header Style (field<4>) can be an @vm'd array structured like so:
//
// <0,1> CellType Header CELLTYPE property
// <0,2> Hidden 1/0
// <0,3> Resizable 1/0
// <0,4> TextAlign TEXTALIGN property
// <0,5> CheckBoxAlign TEXTALIGN
// <0,6> DrawHTML 1/0
// <0,7> ShowEllipses 1/0
// <0,8> Multiline 1/0
// <0,9> WordWrap 1/0
// <0,10> GlyphALign IMAGEALIGN property
equ PS_EDT_CHSPOS_CELLTYPE$ to 1
equ PS_EDT_CHSPOS_HIDDEN$ to 2
equ PS_EDT_CHSPOS_RESIZABLE$ to 3
equ PS_EDT_CHSPOS_TEXTALIGN$ to 4
equ PS_EDT_CHSPOS_CHECKBOXALIGN$ to 5
equ PS_EDT_CHSPOS_DRAWHTML$ to 6
equ PS_EDT_CHSPOS_SHOWELLIPSES$ to 7
equ PS_EDT_CHSPOS_MULTILINE$ to 8
equ PS_EDT_CHSPOS_WORDWRAP$ to 9
equ PS_EDT_CHSPOS_GLYPHALIGN$ to 10
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
// DELETEROW event
// InsInfo parameter constants
//
// <0,1> TRUE$ if the DELETEROW event was triggered from a WM_CUT
// operation
equ PS_EDT_DELINFOPOS_FROMCUT$ to 1
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
// INSERTROW event
// InsInfo parameter constants
//
// <0,1> TRUE$ if the INSERTROW event was triggered from a WM_PASTE
// operation
equ PS_EDT_INSINFOPOS_FROMPASTE$ to 1
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
// CELLPOSCHANGED context flags
equ PS_EDT_CTF_NONE$ to 0x00000000;
equ PS_EDT_CTF_KEYSTROKE$ to 0x00000001;
equ PS_EDT_CTF_MOUSECLICK$ to 0x00000002;
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
#endif
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////