home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Professional Developers Kit 1992 November / Disc01 / Disc01.mdf / os2tk20 / c / os2h / pmhelp.h__ / PMHELP.H
Encoding:
C/C++ Source or Header  |  1992-10-05  |  23.9 KB  |  509 lines

  1. /****************************** Module Header ******************************\
  2. *
  3. * Module Name: PMHELP.H
  4. *
  5. * OS/2 Presentation Manager Information Presentation Facility,
  6. * Help Manager declarations.
  7. *
  8. * Copyright (c) International Business Machines Corporation 1981, 1988-1992
  9. *
  10. * ===========================================================================
  11. *
  12. * The following symbols are used in this file for conditional sections.
  13. *
  14. *   #define:                To include:
  15. *
  16. *   INCL_WINHELP            Help manager structures and APIs
  17. *   INCL_DDF                Dynamic Data Formatting APIs
  18. *
  19. * ===========================================================================
  20. *
  21. * Comments at the end of each typedef line give the name tags used in
  22. * the assembler include version of this file.
  23. *
  24. * The assembler include version of this file excludes lines between XLATOFF
  25. * and XLATON comments.
  26. *
  27. \***************************************************************************/
  28.  
  29. /* XLATOFF */
  30. #ifdef __IBMC__
  31.    #pragma checkout( suspend )
  32.    #ifndef __CHKHDR__
  33.       #pragma checkout( suspend )
  34.    #endif
  35.    #pragma checkout( resume )
  36. #endif
  37. /* XLATON */
  38.  
  39. /* XLATOFF */
  40. #ifndef PMHELP_INCLUDED
  41.    /* XLATON */
  42.    #define PMHELP_INCLUDED
  43.    
  44.    
  45.    /************************************************************************/
  46.    /* HelpSubTable entry structure                                         */
  47.    /************************************************************************/
  48.    typedef USHORT HELPSUBTABLE;
  49.    typedef HELPSUBTABLE *PHELPSUBTABLE;
  50.    
  51.    /************************************************************************/
  52.    /* HelpTable entry structure                                            */
  53.    /*                                                                      */
  54.    /*  Pack the structure HELPTABLE so that it is identical in the 32-Bit  */
  55.    /*  and 16-Bit world.  We have to do this because the HelpTable can     */
  56.    /*  reside either in memory or in the application's resources.          */
  57.    /************************************************************************/
  58.    
  59.    /* XLATOFF */
  60.    #pragma pack(2)   /* pack on word boundary */
  61.    /* XLATON */
  62.    
  63.    typedef struct _HELPTABLE       /* ht */
  64.    {
  65.       USHORT          idAppWindow;
  66.       PHELPSUBTABLE   phstHelpSubTable;
  67.       USHORT          idExtPanel;
  68.    } HELPTABLE;
  69.    typedef HELPTABLE *PHELPTABLE;
  70.    
  71.    /* XLATOFF */
  72.    #pragma pack()    /* reset to default packing */
  73.    /* XLATON */
  74.    
  75.    
  76.    /************************************************************************/
  77.    /* IPF Initialization Structure used on the                             */
  78.    /* WinCreateHelpInstance() call.                                        */
  79.    /************************************************************************/
  80.    
  81.    typedef struct _HELPINIT      /* hinit 32 bit */
  82.    {
  83.       ULONG        cb;
  84.       ULONG        ulReturnCode;
  85.       PSZ          pszTutorialName;
  86.       PHELPTABLE   phtHelpTable;
  87.       HMODULE      hmodHelpTableModule;
  88.       HMODULE      hmodAccelActionBarModule;
  89.       ULONG        idAccelTable;
  90.       ULONG        idActionBar;
  91.       PSZ          pszHelpWindowTitle;
  92.       ULONG        fShowPanelId;
  93.       PSZ          pszHelpLibraryName;
  94.    } HELPINIT;
  95.    typedef HELPINIT *PHELPINIT;
  96.    
  97.    
  98.    /************************************************************************/
  99.    /* Search parent chain indicator for HM_SET_ACTIVE_WINDOW message.      */
  100.    /************************************************************************/
  101.    #define HWND_PARENT         (HWND)NULL
  102.    
  103.    /************************************************************************/
  104.    /* Constants used to define whether user wants to display panel using   */
  105.    /* panel number or panel name.                                          */
  106.    /************************************************************************/
  107.    #define HM_RESOURCEID             0
  108.    #define HM_PANELNAME              1
  109.    
  110.    #define HMPANELTYPE_NUMBER        0
  111.    #define HMPANELTYPE_NAME          1
  112.    
  113.    /************************************************************************/
  114.    /* Constants used to define how the panel IDs are displayed on          */
  115.    /* help panels.                                                         */
  116.    /************************************************************************/
  117.    #define CMIC_HIDE_PANEL_ID        0x0000
  118.    #define CMIC_SHOW_PANEL_ID        0x0001
  119.    #define CMIC_TOGGLE_PANEL_ID      0x0002
  120.    
  121.    /************************************************************************/
  122.    /* Window Help API declarations.                                        */
  123.    /************************************************************************/
  124.    BOOL APIENTRY  WinDestroyHelpInstance(HWND hwndHelpInstance);
  125.    
  126.    HWND APIENTRY  WinCreateHelpInstance(HAB hab,
  127.                                         PHELPINIT phinitHMInitStructure);
  128.    
  129.    BOOL APIENTRY  WinAssociateHelpInstance(HWND hwndHelpInstance,
  130.                                            HWND hwndApp);
  131.    
  132.    HWND APIENTRY  WinQueryHelpInstance(HWND hwndApp);
  133.    
  134.    BOOL APIENTRY  WinLoadHelpTable(HWND hwndHelpInstance,
  135.                                    ULONG idHelpTable,
  136.                                    HMODULE Module);
  137.    
  138.    BOOL APIENTRY  WinCreateHelpTable(HWND hwndHelpInstance,
  139.                                      PHELPTABLE phtHelpTable);
  140.    
  141.    /************************************************************************/
  142.    /* IPF message base.                                                    */
  143.    /************************************************************************/
  144.    #define HM_MSG_BASE               0x0220
  145.    
  146.    /************************************************************************/
  147.    /* Messages applications can send to the IPF.                           */
  148.    /************************************************************************/
  149.    #define HM_DISMISS_WINDOW              HM_MSG_BASE+0x0001
  150.    #define HM_DISPLAY_HELP                HM_MSG_BASE+0x0002
  151.    #define HM_EXT_HELP                    HM_MSG_BASE+0x0003
  152.    #define HM_GENERAL_HELP                HM_EXT_HELP
  153.    #define HM_SET_ACTIVE_WINDOW           HM_MSG_BASE+0x0004
  154.    #define HM_LOAD_HELP_TABLE             HM_MSG_BASE+0x0005
  155.    #define HM_CREATE_HELP_TABLE           HM_MSG_BASE+0x0006
  156.    #define HM_SET_HELP_WINDOW_TITLE       HM_MSG_BASE+0x0007
  157.    #define HM_SET_SHOW_PANEL_ID           HM_MSG_BASE+0x0008
  158.    #define HM_REPLACE_HELP_FOR_HELP       HM_MSG_BASE+0x0009
  159.    #define HM_REPLACE_USING_HELP          HM_REPLACE_HELP_FOR_HELP
  160.    #define HM_HELP_INDEX                  HM_MSG_BASE+0x000a
  161.    #define HM_HELP_CONTENTS               HM_MSG_BASE+0x000b
  162.    #define HM_KEYS_HELP                   HM_MSG_BASE+0x000c
  163.    #define HM_SET_HELP_LIBRARY_NAME       HM_MSG_BASE+0x000d
  164.    
  165.    #define HM_SET_OBJCOM_WINDOW           HM_MSG_BASE+0x0018
  166.    #define HM_UPDATE_OBJCOM_WINDOW_CHAIN  HM_MSG_BASE+0x0019
  167.    #define HM_QUERY_DDF_DATA              HM_MSG_BASE+0x001a
  168.    #define HM_INVALIDATE_DDF_DATA         HM_MSG_BASE+0x001b
  169.    #define HM_QUERY                       HM_MSG_BASE+0x001c
  170.    #define HM_SET_COVERPAGE_SIZE          HM_MSG_BASE+0x001d
  171.    
  172.    /************************************************************************/
  173.    /* Constants used to query the info from IPF in HM_QUERY message        */
  174.    /************************************************************************/
  175.    
  176.    /* Hi word in lParam 1 */
  177.    #define HMQW_COVERPAGE           0x0001
  178.    #define HMQW_INDEX               0x0002
  179.    #define HMQW_TOC                 0x0003
  180.    #define HMQW_SEARCH              0x0004
  181.    #define HMQW_VIEWPAGES           0x0005
  182.    #define HMQW_LIBRARY             0x0006
  183.    #define HMQW_VIEWPORT            0x0007
  184.    #define HMQW_OBJCOM_WINDOW       0x0008
  185.    #define HMQW_INSTANCE            0x0009
  186.    #define HMQW_ACTIVEVIEWPORT      0x000a
  187.    #define CONTROL_SELECTED         0x000b
  188.    
  189.    #define HMQW_GROUP_VIEWPORT      0x00f1
  190.    #define HMQW_RES_VIEWPORT        0x00f2
  191.    #define USERDATA                 0x00f3
  192.    
  193.    /* Lo word in lParam1 of HMQW_VIEWPORT */
  194.    #define HMQVP_NUMBER             0x0001
  195.    #define HMQVP_NAME               0x0002
  196.    #define HMQVP_GROUP              0x0003
  197.    
  198.    /************************************************************************/
  199.    /* Predefined Control IDs                                               */
  200.    /************************************************************************/
  201.    #define CTRL_PREVIOUS_ID    ((USHORT)0x0001)
  202.    #define CTRL_SEARCH_ID      ((USHORT)0x0002)
  203.    #define CTRL_PRINT_ID       ((USHORT)0x0003)
  204.    #define CTRL_INDEX_ID       ((USHORT)0x0004)
  205.    #define CTRL_CONTENTS_ID    ((USHORT)0x0005)
  206.    #define CTRL_BACK_ID        ((USHORT)0x0006)
  207.    #define CTRL_FORWARD_ID     ((USHORT)0x0007)
  208.    #define CTRL_TUTORIAL_ID    ((USHORT)0x00FF)
  209.    
  210.    #define CTRL_USER_ID_BASE   ((USHORT)257)
  211.    
  212.    /************************************************************************/
  213.    /* Messages the IPF sends to the applications active window             */
  214.    /* as defined by the IPF.                                               */
  215.    /************************************************************************/
  216.    
  217.    #define HM_ERROR                       HM_MSG_BASE+0x000e
  218.    #define HM_HELPSUBITEM_NOT_FOUND       HM_MSG_BASE+0x000f
  219.    #define HM_QUERY_KEYS_HELP             HM_MSG_BASE+0x0010
  220.    #define HM_TUTORIAL                    HM_MSG_BASE+0x0011
  221.    #define HM_EXT_HELP_UNDEFINED          HM_MSG_BASE+0x0012
  222.    #define HM_GENERAL_HELP_UNDEFINED      HM_EXT_HELP_UNDEFINED
  223.    #define HM_ACTIONBAR_COMMAND           HM_MSG_BASE+0x0013
  224.    #define HM_INFORM                      HM_MSG_BASE+0x0014
  225.    #define HM_NOTIFY                      HM_MSG_BASE+0x0022
  226.    #define HM_SET_USERDATA                HM_MSG_BASE+0x0023
  227.    #define HM_CONTROL                     HM_MSG_BASE+0x0024
  228.    
  229.    /************************************************************************/
  230.    /* notify information for HM_NOTIFY                                     */
  231.    /************************************************************************/
  232.    #define OPEN_COVERPAGE        0x0001
  233.    #define OPEN_PAGE             0x0002
  234.    #define SWAP_PAGE             0x0003
  235.    #define OPEN_TOC              0x0004
  236.    #define OPEN_INDEX            0x0005
  237.    #define OPEN_HISTORY          0x0006
  238.    #define OPEN_SEARCH_HIT_LIST  0x0007
  239.    #define OPEN_LIBRARY          0x0008
  240.    
  241.    /************************************************************************/
  242.    /* HMERR_NO_FRAME_WND_IN_CHAIN - There is no frame window in the        */
  243.    /* window chain from which to find or set the associated help           */
  244.    /* instance.                                                            */
  245.    /************************************************************************/
  246.    #define  HMERR_NO_FRAME_WND_IN_CHAIN                0x00001001L
  247.    
  248.    /***********************************************************************/
  249.    /* HMERR_INVALID_ASSOC_APP_WND - The application window handle         */
  250.    /* specified on the WinAssociateHelpInstance() call is not a valid     */
  251.    /* window handle.                                                      */
  252.    /***********************************************************************/
  253.    #define  HMERR_INVALID_ASSOC_APP_WND                0x00001002L
  254.    
  255.    /***********************************************************************/
  256.    /* HMERR_INVALID_ASSOC_HELP_INST - The help instance handle specified  */
  257.    /* on the WinAssociateHelpInstance() call is not a valid               */
  258.    /* window handle.                                                      */
  259.    /***********************************************************************/
  260.    #define  HMERR_INVALID_ASSOC_HELP_INST              0x00001003L
  261.    
  262.    /***********************************************************************/
  263.    /* HMERR_INVALID_DESTROY_HELP_INST - The window handle specified       */
  264.    /* as the help instance to destroy is not of the help instance class.  */
  265.    /***********************************************************************/
  266.    #define  HMERR_INVALID_DESTROY_HELP_INST            0x00001004L
  267.    
  268.    /***********************************************************************/
  269.    /* HMERR_NO_HELP_INST_IN_CHAIN - The parent or owner chain of the      */
  270.    /* application window specified does not have a help instance          */
  271.    /* associated with it.                                                 */
  272.    /***********************************************************************/
  273.    #define  HMERR_NO_HELP_INST_IN_CHAIN                0x00001005L
  274.    
  275.    /***********************************************************************/
  276.    /* HMERR_INVALID_HELP_INSTANCE_HDL - The handle specified to be a      */
  277.    /* help instance does not have the class name of a IPF                 */
  278.    /* help instance.                                                      */
  279.    /***********************************************************************/
  280.    #define  HMERR_INVALID_HELP_INSTANCE_HDL            0x00001006L
  281.    
  282.    /***********************************************************************/
  283.    /* HMERR_INVALID_QUERY_APP_WND - The application window specified on   */
  284.    /* a WinQueryHelpInstance() call is not a valid window handle.         */
  285.    /***********************************************************************/
  286.    #define  HMERR_INVALID_QUERY_APP_WND                0x00001007L
  287.    
  288.    /***********************************************************************/
  289.    /* HMERR_HELP_INST_CALLED_INVALID -  The handle of the help instance   */
  290.    /* specified on an API call to the IPF does not have the               */
  291.    /* class name of an IPF help instance.                                 */
  292.    /***********************************************************************/
  293.    #define  HMERR_HELP_INST_CALLED_INVALID             0x00001008L
  294.    
  295.    #define  HMERR_HELPTABLE_UNDEFINE                   0x00001009L
  296.    #define  HMERR_HELP_INSTANCE_UNDEFINE               0x0000100aL
  297.    #define  HMERR_HELPITEM_NOT_FOUND                   0x0000100bL
  298.    #define  HMERR_INVALID_HELPSUBITEM_SIZE             0x0000100cL
  299.    #define  HMERR_HELPSUBITEM_NOT_FOUND                0x0000100dL
  300.    
  301.    /***********************************************************************/
  302.    /* HMERR_INDEX_NOT_FOUND - No index in library file.                   */
  303.    /***********************************************************************/
  304.    #define  HMERR_INDEX_NOT_FOUND                      0x00002001L
  305.    
  306.    /***********************************************************************/
  307.    /* HMERR_CONTENT_NOT_FOUND - Library file does not have any contents.  */
  308.    /***********************************************************************/
  309.    #define  HMERR_CONTENT_NOT_FOUND                    0x00002002L
  310.    
  311.    /***********************************************************************/
  312.    /* HMERR_OPEN_LIB_FILE     - Cannot open library file                  */
  313.    /***********************************************************************/
  314.    #define  HMERR_OPEN_LIB_FILE                        0x00002003L
  315.    
  316.    /***********************************************************************/
  317.    /* HMERR_READ_LIB_FILE     - Cannot read library file                  */
  318.    /***********************************************************************/
  319.    #define  HMERR_READ_LIB_FILE                        0x00002004L
  320.    
  321.    /***********************************************************************/
  322.    /* HMERR_CLOSE_LIB_FILE    - Cannot close library file                 */
  323.    /***********************************************************************/
  324.    #define  HMERR_CLOSE_LIB_FILE                       0x00002005L
  325.    
  326.    /***********************************************************************/
  327.    /* HMERR_INVALID_LIB_FILE  - Improper library file provided            */
  328.    /***********************************************************************/
  329.    #define  HMERR_INVALID_LIB_FILE                     0x00002006L
  330.    
  331.    /***********************************************************************/
  332.    /* HMERR_NO_MEMORY - Unable to allocate the requested amount of memory.*/
  333.    /***********************************************************************/
  334.    #define  HMERR_NO_MEMORY                            0x00002007L
  335.    
  336.    /***********************************************************************/
  337.    /* HMERR_ALLOCATE_SEGMENT - Unable                                     */
  338.    /* to allocate a segment of memory for memory allocation requested     */
  339.    /* from the IPF.                                                       */
  340.    /***********************************************************************/
  341.    #define  HMERR_ALLOCATE_SEGMENT                     0x00002008L
  342.    
  343.    /***********************************************************************/
  344.    /* HMERR_FREE_MEMORY - Unable to free allocated  memory                */
  345.    /***********************************************************************/
  346.    #define  HMERR_FREE_MEMORY                          0x00002009L
  347.    
  348.    /***********************************************************************/
  349.    /* HMERR_PANEL_NOT_FOUND  - Unable                                     */
  350.    /* to find a help panel requested to help manager                      */
  351.    /***********************************************************************/
  352.    #define  HMERR_PANEL_NOT_FOUND                      0x00002010L
  353.    
  354.    /***********************************************************************/
  355.    /* HMERR_DATABASE_NOT_OPEN - Unable to read the unopened database      */
  356.    /***********************************************************************/
  357.    #define  HMERR_DATABASE_NOT_OPEN                    0x00002011L
  358.    
  359.    /***********************************************************************/
  360.    /* HMERR_DDL_ERROR - Unable to load resource dll                       */
  361.    /***********************************************************************/
  362.    #define  HMERR_LOAD_DLL                              0x00002013L
  363.    
  364.    /***********************************************************************/
  365.    /* AC Viewport stucture definitions                                    */
  366.    /***********************************************************************/
  367.    typedef struct _ACVP        /* acvp */
  368.    {
  369.       ULONG  cb;
  370.       HAB    hAB;
  371.       HMQ    hmq;
  372.       ULONG  ObjectID;            /* object identifier */
  373.       HWND   hWndParent;          /* IPF viewport client handle */
  374.       HWND   hWndOwner;           /* IPF viewport client handle */
  375.       HWND   hWndACVP;            /* applications frame window hwnd */
  376.    } ACVP, *PACVP;
  377.    
  378.    /***********************************************************************/
  379.    /* DDF defines and prototypes                                          */
  380.    /***********************************************************************/
  381.    #ifndef PMDDF_H
  382.       #define PMDDF_H
  383.    #endif /* PMDDF_H */
  384.    
  385.    #ifdef INCL_DDF
  386.       /*********************************************************************/
  387.       /* Define Handle to DDF                                              */
  388.       /*********************************************************************/
  389.       typedef VOID *HDDF;
  390.       
  391.       /* DdfHyperText Flags */
  392.       #define REFERENCE_BY_ID     0L
  393.       #define REFERENCE_BY_RES    1L
  394.       
  395.       /* DdfBeginList formatting flags */
  396.       #define HMBT_NONE           1L
  397.       #define HMBT_ALL            2L
  398.       #define HMBT_FIT            3L
  399.       
  400.       #define HMLS_SINGLELINE     1L
  401.       #define HMLS_DOUBLELINE     2L
  402.       
  403.       /* DdfBitmap alignment flags */
  404.       #define ART_RUNIN           0x10L
  405.       #define ART_LEFT            0x01L
  406.       #define ART_RIGHT           0x02L
  407.       #define ART_CENTER          0x04L
  408.       
  409.       /* DdfSetColor Color Flag */
  410.       #define CLR_UNCHANGED      (-6L)
  411.       
  412.       /**********************************************************************/
  413.       /* DDF API declarations.                                              */
  414.       /**********************************************************************/
  415.       
  416.       HDDF APIENTRY  DdfInitialize (HWND hwndHelpInstance,
  417.                                     ULONG cbBuffer,
  418.                                     ULONG ulIncrement);
  419.       
  420.       BOOL APIENTRY  DdfPara (HDDF hddf);
  421.       
  422.       BOOL APIENTRY  DdfSetFormat (HDDF hddf,
  423.                                    ULONG fFormatType);
  424.       
  425.       BOOL APIENTRY  DdfSetTextAlign (HDDF hddf,
  426.                                       ULONG fAlign);
  427.       
  428.       BOOL APIENTRY  DdfSetColor (HDDF hddf,
  429.                                   COLOR fBackColor,
  430.                                   COLOR fForColor);
  431.       
  432.       BOOL APIENTRY  DdfInform (HDDF hddf,
  433.                                 PSZ pszText,
  434.                                 ULONG resInformNumber);
  435.       
  436.       BOOL APIENTRY  DdfSetFontStyle (HDDF hddf,
  437.                                       ULONG fFontStyle);
  438.       
  439.       BOOL APIENTRY  DdfHyperText (HDDF hddf,
  440.                                    PSZ pszText,
  441.                                    PSZ pszReference,
  442.                                    ULONG fReferenceType);
  443.       
  444.       BOOL APIENTRY  DdfBeginList (HDDF hddf,
  445.                                    ULONG ulWidthDT,
  446.                                    ULONG fBreakType,
  447.                                    ULONG fSpacing);
  448.       
  449.       BOOL APIENTRY  DdfListItem (HDDF hddf,
  450.                                   PSZ pszTerm,
  451.                                   PSZ pszDescription);
  452.       
  453.       BOOL APIENTRY  DdfEndList (HDDF hddf);
  454.       
  455.       BOOL APIENTRY  DdfMetafile (HDDF hddf,
  456.                                   HMF hmf,
  457.                                   PRECTL prclRect);
  458.       
  459.       BOOL APIENTRY  DdfText (HDDF hddf,
  460.                               PSZ pszText);
  461.       
  462.       BOOL APIENTRY  DdfSetFont (HDDF hddf,
  463.                                  PSZ pszFaceName,
  464.                                  ULONG ulWidth,
  465.                                  ULONG ulHeight);
  466.       
  467.       BOOL APIENTRY  DdfBitmap (HDDF hddf,
  468.                                 HBITMAP hbm,
  469.                                 ULONG fAlign);
  470.       
  471.       /*********************************************************************/
  472.       /* error codes returned by DDF API functions                         */
  473.       /*********************************************************************/
  474.       #define HMERR_DDF_MEMORY                  0x3001
  475.       #define HMERR_DDF_ALIGN_TYPE              0x3002
  476.       #define HMERR_DDF_BACKCOLOR               0x3003
  477.       #define HMERR_DDF_FORECOLOR               0x3004
  478.       #define HMERR_DDF_FONTSTYLE               0x3005
  479.       #define HMERR_DDF_REFTYPE                 0x3006
  480.       #define HMERR_DDF_LIST_UNCLOSED           0x3007
  481.       #define HMERR_DDF_LIST_UNINITIALIZED      0x3008
  482.       #define HMERR_DDF_LIST_BREAKTYPE          0x3009
  483.       #define HMERR_DDF_LIST_SPACING            0x300A
  484.       #define HMERR_DDF_HINSTANCE               0x300B
  485.       #define HMERR_DDF_EXCEED_MAX_LENGTH       0x300C
  486.       #define HMERR_DDF_EXCEED_MAX_INC          0x300D
  487.       #define HMERR_DDF_INVALID_DDF             0x300E
  488.       #define HMERR_DDF_FORMAT_TYPE             0x300F
  489.       #define HMERR_DDF_INVALID_PARM            0x3010
  490.       #define HMERR_DDF_INVALID_FONT            0x3011
  491.       #define HMERR_DDF_SEVERE                  0x3012
  492.       
  493.    #endif /* INCL_DDF */
  494.    /* XLATOFF */
  495. #endif /* PMHELP_INCLUDED */
  496. /* XLATON */
  497.  
  498. /* XLATOFF */
  499. #ifdef __IBMC__
  500.    #pragma checkout( suspend )
  501.    #ifndef __CHKHDR__
  502.       #pragma checkout( resume )
  503.    #endif
  504.    #pragma checkout( resume )
  505. #endif
  506. /* XLATON */
  507.  
  508. /**************************** end of file **********************************/
  509.