/*DDK*************************************************************************/
/*                                                                           */
/* COPYRIGHT    Copyright (C) 1995 IBM Corporation                           */
/*                                                                           */
/*    The following IBM OS/2 WARP source code is provided to you solely for  */
/*    the purpose of assisting you in your development of OS/2 WARP device   */
/*    drivers. You may use this code in accordance with the IBM License      */
/*    Agreement provided in the IBM Device Driver Source Kit for OS/2. This  */
/*    Copyright statement may not be removed.                                */
/*                                                                           */
/*****************************************************************************/
/****************************** Module Header ******************************\
*
* Module Name: PMTKTP.H
*
* Private OS/2 Presentation Manager Help Toolkit include file
*
*
*
* ===========================================================================
*
* Comments at the end of each typedef line give the name tags used in
* the assembler include version of this file.
*
* The assembler include version of this file excludes lines between NOINC
* and INC comments.
*
* ===========================================================================
*
*/

/* NOINC */
#ifdef __IBMC__
   #pragma checkout( suspend )
   #ifndef __CHKHDR__
      #pragma checkout( suspend )
   #endif
   #pragma checkout( resume )
#endif
/* INC */

#define PMTKTP_INCLUDED


#ifdef INCL_HELP
   /* values for help resources and predefined resource ids */
   #define RT_TEXT   256        /* text resource type */
   
   #define THI_UNDEFINED -1        /* unknown index (do not use !!!) */
   #define THI_INDEX      1        /* index panel */
   #define THI_KEYS       2        /* keys panel */
   #define THI_ABOUT      3        /* first panel number available for user */
   
   #ifndef RC_INVOKED
      
      /* Help handle */
      typedef ULONG HHELP;
      
      /* Help Initialization structure */
      typedef struct _HIS     /* his */
      {
         USHORT cxWidth;
         USHORT cyHeight;
      } HIS;
      typedef HIS *PHIS;
      
      
   #endif /* RC_INVOKED */
   
#endif /* INCL_HELP */

#ifdef INCL_TKTP
   /* Common strings (for use by WtiAlertBox() */
   
   #define IDS_MERGE1      0      /* merge string (%%) */
   #define IDS_IFN         1      /* %% is not a valid filename. */
   #define IDS_FNF         2      /* %% not found - Create new file? */
   #define IDS_REF         3      /* Replace existing %%? */
   #define IDS_SCC         4      /* %% has changed. Save current changes? */
   #define IDS_EOF         5      /* Error opening %% */
   #define IDS_ECF         6      /* Error creating %% */
   
   /* Common msg     box Help Ids */
   #define IDMB_IFN        -1
   #define IDMB_FNF        -2
   #define IDMB_REF        -3
   #define IDMB_SCC        -4
   #define IDMB_EOF        -5
   #define IDMB_ECF        -6
   
   /* Dialog box IDs Open/Save IDs */
   #define IDD_FILEOPEN    -1
   #define IDD_FILESAVE    -2
   #define IDD_PMTKT_OPEN          255
   #define IDD_PMTKT_SAVEAS        254
   #define IDD_PMTKT_LOGO          253
   
   #define ATTRDIRLIST     0x4010 /* include directories and drives in listbox */
   
   #define APPNAMEMAX        40   /* for help use, truncated if larger */
   #define MAX_FNAME_LEN     260
   #define CBEXTMAX           6
   #define CBROOTNAMEMAX    (MAX_FNAME_LEN - CBEXTMAX - 1)
   #define MAXMESSAGELENGTH (MAX_FNAME_LEN + 120) /* maximum cb of a msg
   (instruction or warning). */
   
   /* Action value for WtiDlgFile, the values may be ORed, except DLG_OPENDLG */
   /* and DLG_SAVEDLG. */
   #define DLG_OPENDLG 0x00        /* Use the Open dialog box. */
   #define DLG_SAVEDLG 0x01        /* Use the Save (As) dialog box */
   #define DLG_NOOPEN  0x02        /* Don't Open the file we selected */
   #define DLG_HELP    0x04        /* The dialog box supports Help */
   
   /* Return values from WtiDlgFile : */
   #define TDF_ERRMEM   0
   #define TDF_INVALID  1
   #define TDF_NOOPEN   2
   #define TDF_NEWOPEN  3
   #define TDF_OLDOPEN  4
   #define TDF_NOSAVE   5
   #define TDF_NEWSAVE  6
   #define TDF_OLDSAVE  7
   
   
   /* Some ROP GPICALLS.H doesn't define */
   #define ROP_Pn           (LONG)0x0000000f
   #define ROP_DSan         (LONG)0x00000077
   
   /* Flags for WtiOpenFile */
   #define OF_REOPEN 0x8000
   #define OF_EXIST  0x4000
   #define OF_PROMPT 0x2000
   #define OF_CREATE 0x1000
   #define OF_CANCEL 0x0800
   #define OF_VERIFY 0x0400
   #define OF_DELETE 0x0200
   #define OF_PARSE  0x0100
   
   #define OF_READ      0x0080
   #define OF_WRITE     0x0040
   #define OF_READWRITE 0x0020
   
   /* flAttributes used to filter entries provided by DlgFillListBox */
   #define BITATTRDRIVE 0x4000
   #define BITATTRDIR   0x0010
   
   #ifndef RC_INVOKED
      
      /* Useful abreviations */
      typedef char *PSTR;
      typedef SHANDLE *PHANDLE;
      
      /* Data structure used to pass information to WtiDlgFile(). */
      typedef struct _DLF     /* dlf */
      {
         USHORT   rgbAction;             /* action usType:  eg. DLG_OPEN     */
         USHORT   rgbFlags;              /* open file flAttributes         */
         PHANDLE  phFile;                /* file handle                    */
         PSZ      pszExt;                /* default file extension "\.ext" */
         PSZ      pszAppName;            /* application name               */
         PSZ      pszTitle;              /* panel title or NULL            */
         PSZ      pszInstructions;       /* panel instructions or NULL     */
         CHAR szFileName[MAX_FNAME_LEN]; /* relative file name             */
         CHAR szOpenFile[MAX_FNAME_LEN]; /* full path name of current file */
      } DLF;
      typedef DLF *NPDLF;
      typedef DLF *PDLF;
      
      /*  Brush structure */
      typedef struct _BRUSH   /* tkbr */
      {
         LONG   lColor;
         USHORT usSymbol;
         ULONG  rop;
      } BRUSH;
      typedef BRUSH *NPBRUSH;
      typedef BRUSH *PBRUSH;
      
   #endif
   
#endif /* INCL_TKTP */

/* NOINC */
#ifdef __IBMC__
   #pragma checkout( suspend )
   #ifndef __CHKHDR__
      #pragma checkout( resume )
   #endif
   #pragma checkout( resume )
#endif
/* INC */

/**************************** end of file **********************************/
