compile insert ps_TabControl_Equates
/* 
   ** Copyright (C) 2013 Revelation Software Inc. All Rights Reserved **
   
   Author   : Wile C Coyote - Stable Genius
   Date     : May 2013
   Purpose  : Constants for working with PS TABCONTROL object structures
   
   Comments
   ========
   
   
   Amended  Date       Reason
   =======  ====       ======
   Mr C     19 Jul 19  Added CloseButton to ItemStyle equates
   Mr C     10 Jan 18  Updated for ITEMSTYLE information 
   Mr C     02 Jul 16  Added per-tab colors and fonts etc.
   Mr C     02 Jun 16  Moved per-tab images so PSPOS_GLYPH$ remains in a 
                       standard format for the form compiler.
*/
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
#ifndef _PS_TABCONTROL_EQUATES_
#define _PS_TABCONTROL_EQUATES_
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////

   $insert oiWin_Equates
   $insert ps_Equates
   $insert msWin_TabControl_Equates

///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////

   // Properties held in window style bits in PSPOS_SDKSTYLE$ <0,0,1>
   //
   // TCS_SCROLLOPPOSITE        -> SCROLLOPPOSITE property
   // TCS_BOTTOM                -> TABALIGN property
   // TCS_VERTICAL              -> TABALIGN property
   // TCS_RIGHT                 -> TABALIGN property
   // TCS_FOCUSNEVER            -> ALLOWFOCUS property
   // TCS_TABS                  -> TABSTYLE property
   // TCS_BUTTONS               -> TABSTYLE property
   // TCS_FLATBUTTONS           -> TABSTYLE property
   // TCS_FLATSEPARATORS        -> FLATSEPARATORS property
   // TCS_FIXEDWIDTH            -> FIXEDWIDTH property
   // TCS_FORCEICONLEFT         -> FIXEDWIDTHICONLEFT property
   // TCS_FORCELABELLEFT        -> FIXEDWIDTHTEXTLEFT property
   // TCS_HOTTRACK              -> HOTTRACK property
   // TCS_MULTILINE             -> MULTILINE property
   // TCS_RIGHTJUSTIFY          -> USEFULLWIDTH property
   // TCS_RAGGEDRIGHT           -> RAGGEDRIGHT property
   // TCS_MULTISELECT           -> MULTISELECT property

///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////

   // SYSREPOSWINS/SYSREPOSWINEXES structure overrides.
   
   // This is a little more complex due to the changes between v9 and v10.
   //
   // v9 supported individual images in PSPOS_BITMAP$ in a format like so:
   // 
   // PSPOS_BITMAP$    -> This contains multiple @svm images (1 per tab)
   //                     with a possible "transparent flag" @tm-suffixed to
   //                     the end (This flag meant use the top-left pixel as
   //                     the color key)
   //
   //  <0,0,1> .\bmps\tabMain_General.bmp : @tm : 1
   //  <0,0,2> .\bmps\tabMain_Address.bmp
   //  <0,0,3> .\bmps\tabMain_Contact.bmp : @tm : 1
   //
   // and so on.
   //
   // For v10 this has changed:
   // 
   //  1) PSPOS_BITMAP$/PSPOS_IMAGEPROPERTIES$ now contains the image to use 
   //     as a background image for the entire tab panel (as per normal v10 
   //     controls)
   //
   //  2) PSPOS_IMAGELIST1$/PSPOS_IMGLIST_1_PROPS$ support an imagelist to 
   //     use with actual tab images.  The per-tab imagelist numbers are 
   //     stored @svm'd in PSPOS_CHARCOUNT$
   //
   //  3) We still support per-tab individual images but the properties 
   //     for these have moved to:
   //
   //     PSPOS_TYPESPECIFIC$    - Image file IDs - @svm'd, but @tm'd for 
   //                                               DPI size
   //     PSPOS_TEXT_1$          - Image color keys - @svm'd
   //     PSPOS_TEXT_2$          - Image alpha values - @svm'd
   //
   //
   //  4) PSPOS_TOOLTIP$ is not used - it is replaced by a per-tab tooltip 
   //     field
   //
   //  5) This means that the following fields (values actually) form
   //     an @svm'd "AMV group"
   // 
   //        PSPOS_LABELS$           (Tab Text)              
   //        PSPOS_LIST$             (Tab Values)
   //        PSPOS_TYPESPECIFIC$     (Tab Images)
   //        PSPOS_TEXT_1$           (Tab Image ColorKeys)
   //        PSPOS_TEXT_2$           (Tab Image Alpha Values)
   //        PSPOS_CHARCOUNT$        (Tab ImageList Numbers)
   //        PSPOS_TEXT_3$           (Tab ToolTips)
   //        PSPOS_TEXT_4$           (Tab Disabled Flags )
   
   // v9 equates
   equ POS_TAB_V9_IMAGES$                 to POS_BITMAP$             ; // @svm/@tm delimited
   equ PSPOS_TAB_V9_IMAGESS$              to PSPOS_BITMAP$           ; // @svm/@tm delimited
   
   // OIWIN structure
   //
   // (The Labels and values were @tm delimited in v9 - for v10 we've
   // upped them to @svm)
   
   equ POS_TAB_VALUE$                     to POS_VALUE$
   equ POS_TAB_PADDING$                   to POS_SCROLLRANGE$        ; // <0,0,1> PaddingH; <0,0,2> paddingV
   equ POS_TAB_FIXEDSIZE$                 to POS_SCROLLCHANGE$       ; // <0,0,1> TabWidth; <0,0,2> TabHeight
   equ POS_TAB_MINWIDTH$                  to POS_NUMCOLS$
   equ POS_TAB_ITEMSTYLES$                to POS_TEXT_6$             ; // @svm-delimited list of @tm delimited styles - control
         
   // Tabs AMV
   equ POS_TAB_LABELS$                    to POS_LABEL$              ; // @svm-delimited
   equ POS_TAB_VALUES$                    to POS_LIST$               ; // @svm delimited
   equ POS_TAB_IMAGES$                    to POS_TYPESPECIFIC$       ; // @svm delimited repository IDs
   equ POS_TAB_IMAGE_COLORKEYS$           to POS_TEXT_1$
   equ POS_TAB_IMAGE_TRANSLUCENCIES$      to POS_TEXT_2$             ; // @svm delimited (0-100)
   equ POS_TAB_IMAGELIST_NOS$             to POS_CHARCOUNT$          ; // @svm delimited list of 1-based imagelist indexes
   equ POS_TAB_TOOLTIPS$                  to POS_TEXT_3$             ; // @svm-delimited 
   equ POS_TAB_DISABLEDFLAGS$             to POS_TEXT_4$             ; // @svm-delimited (T/F)
   equ POS_TAB_TABITEMSTYLES$             to POS_TEXT_5$             ; // @svm-delimited (@tm/@stm delimited)
   
   // OIWINEXE structure
   equ PSPOS_TAB_VALUE$                   to PSPOS_VALUE$
   equ PSPOS_TAB_PADDING$                 to PSPOS_SCROLLRANGE$      ; // <0,0,1> PaddingH; <0,0,2> paddingV
   equ PSPOS_TAB_FIXEDSIZE$               to PSPOS_SCROLLCHANGE$     ; // <0,0,1> TabWidth; <0,0,2> TabHeight
   equ PSPOS_TAB_MINWIDTH$                to PSPOS_NUMCOLS$
   equ PSPOS_TAB_ITEMSTYLES$              to PSPOS_TEXT_6$           ; // @svm-delimited list of @tm-delimited styles
   
   // Tabs AMV
   equ PSPOS_TAB_LABELS$                  to PSPOS_LABEL$            ; // @svm-delimited
   equ PSPOS_TAB_VALUES$                  to PSPOS_LIST$             ; // @svm delimited
   equ PSPOS_TAB_IMAGES$                  to PSPOS_TYPESPECIFIC$     ; // <0,0,n,1> <=96 DPI; <0,0,n,2> <=120 DPI; <0,0,n,3> <=144 DPI; <0,0,n,4> >144 DPI
   equ PSPOS_TAB_IMAGE_COLORKEYS$         to PSPOS_TEXT_1$           ; // @svm delimited
   equ PSPOS_TAB_IMAGE_TRANSLUCENCIES$    to PSPOS_TEXT_2$           ; // @svm delimited
   equ PSPOS_TAB_IMAGELIST_NOS$           to PSPOS_CHARCOUNT$        ; // @svm delimited list of 1-based imagelist indexes 
   equ PSPOS_TAB_TOOLTIPS$                to PSPOS_TEXT_3$           ; // @svm-delimited 
   equ PSPOS_TAB_DISABLEDFLAGS$           to PSPOS_TEXT_4$           ; // @svm-delimited (T/F)
   equ PSPOS_TAB_TABITEMSTYLES$           to PSPOS_TEXT_5$           ; // @svm-delimited (@tm/; delimited)
   
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////

   // TABALIGN property equates
   equ PS_TCA_TOP$                          to 0
   equ PS_TCA_LEFT$                         to 1
   equ PS_TCA_RIGHT$                        to 2
   equ PS_TCA_BOTTOM$                       to 3
   
///////////////////////////////////////////////////////////////////////////////   
///////////////////////////////////////////////////////////////////////////////
   
   // ITEM State equates - used with ITEMSTYLE methods
   equ TCIS_NORMAL$                   to 1
   equ TCIS_HOT$                      to 2
   equ TCIS_DISABLED$                 to 3
   equ TCIS_SELECTED$                 to 4
   equ TCIS_HOTSELECTED$              to 5
   
   // ITEMSTYLE structure - used with ITEMSTYLE method
   // 
   // <1> ForeColor
   // <2> BackColor From
   // <3> BackColor To
   // <3> Bold
   // <4> Italic
   // <6> Underline
   // <7> Translucency (0-100) 
   // <8> CloseButton ForeColor
   // <9> CloseButton BackColor
   
   equ TCIS_POS_FORECOLOR$           to 1 ; * // COLORREF
   equ TCIS_POS_BACKCOLOR_FROM$      to 2 ; * // COLORREF
   equ TCIS_POS_BACKCOLOR_TO$        to 3 ; * // COLORREF
   equ TCIS_POS_BOLD$                to 4 ; * // Boolean
   equ TCIS_POS_ITALIC$              to 5 ; * // Boolean
   equ TCIS_POS_UNDERLINE$           to 6 ; * // Boolean
   equ TCIS_POS_TRANSLUCENCY$        to 7 ; * // UInt (0-100)
   equ TCIS_POS_CLOSEBTNFORECOLOR$   to 8 ; * // COLORREF
   equ TCIS_POS_CLOSEBTNBACKCOLOR$   to 9 ; * // COLORREF
   
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
#endif
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////

