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
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
