home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 7 / 07.iso / c / c480 / 19.ddi / SAMPLES / CLIDEMO / GLOBAL.H_ / GLOBAL.H
Encoding:
C/C++ Source or Header  |  1993-02-08  |  4.5 KB  |  109 lines

  1. /* 
  2.  * global.h
  3.  *
  4.  * Created by Microsoft Corporation.
  5.  * (c) Copyright Microsoft Corp. 1990 - 1992  All Rights Reserved
  6.  */
  7.  
  8. //--- CONSTANTS ---
  9.  
  10. #define PROTOCOL_STRLEN    15          //- protocol name string size
  11. #define CFILTERMAX         20             //- Max # filters 
  12.                                        //- Max # chars/filter
  13. #define CBFILTERMAX        (100 * CFILTERMAX)
  14. #define CBPATHMAX          250         //- max qualified file name
  15. #define CBOBJNAMEMAX       14          //- maximum length of object name
  16. #define CBVERBTEXTMAX      30          //- maximum length of verb text 
  17. #define CBVERBNUMBMAX      8           //- maximum number of verbs 
  18. #define OBJECT_LINK_MAX    256*3       //- maximum size of object link data
  19. #define CDIGITSMAX         5
  20. #define KEYNAMESIZE        300         //- Maximum registration key length
  21. #define RETRY              3
  22.                                        //- protocol name strings
  23. #define STDFILEEDITING     ((LPSTR)"StdFileEditing")
  24. #define STATICP            ((LPSTR)"Static")
  25.                                        //- object name prefixes
  26. #define OBJPREFIX          ((LPSTR)"CliDemo #")
  27. #define OBJCLONE           ((LPSTR)"CliDemo1#")
  28. #define OBJTEMP            ((LPSTR)"CliDemo2#")
  29.  
  30. #define DOC_CLEAN          0           //- Dirty() methods
  31. #define DOC_DIRTY          1
  32. #define DOC_UNDIRTY        2
  33. #define DOC_QUERY          3
  34.  
  35. #define RELEASE            FALSE       //- object deletion type
  36. #define DELETE             TRUE
  37.  
  38. #define WM_ERROR           WM_USER + 1 //- user defined messages 
  39. #define WM_INIT            WM_USER + 2
  40. #define WM_DELETE          WM_USER + 3
  41. #define WM_RETRY           WM_USER + 4
  42. #define WM_CHANGE          WM_USER + 5
  43.  
  44. #define RD_CANCEL          0x00000001
  45. #define RD_RETRY           0x00000002
  46.  
  47. //--- TYPES ---
  48.  
  49. typedef struct _APPSTREAM FAR *LPAPPSTREAM;
  50.  
  51. typedef struct _APPSTREAM {
  52.     OLESTREAM        olestream;
  53.     int              fh;
  54. } APPSTREAM;
  55.  
  56. typedef struct _APPITEM *APPITEMPTR;
  57.  
  58. typedef struct _APPITEM {              //- Application item
  59.    OLECLIENT         oleclient;
  60.    HWND              hwnd; 
  61.    LPOLEOBJECT       lpObject;         //- OLE object pointers
  62.    LPOLEOBJECT       lpObjectUndo;     //- undo object
  63.    LONG              otObject;         //- OLE object type
  64.    LONG              otObjectUndo;
  65.    OLEOPT_UPDATE     uoObject;         //- OLE object update option
  66.    OLEOPT_UPDATE     uoObjectUndo;     //- link name atom
  67.    ATOM              aLinkName;        //- Save the link's document name 
  68.    ATOM              aLinkUndo;        //- Save the link's document name 
  69.    LPSTR             lpLinkData;       //- pointer to link data
  70.    BOOL              fVisible;         //- TRUE: item is to be displayed
  71.    BOOL              fOpen;            //- server open? --for undo objects
  72.    BOOL              fRetry;           //- retry flag for busy servers
  73.    BOOL              fNew;
  74.    BOOL              fServerChangedBounds;
  75.    RECT              rect;             //- bounding rectangle
  76.    LHCLIENTDOC       lhcDoc;           //- client document handle
  77.    ATOM              aServer;
  78. } APPITEM;                             
  79.  
  80.  
  81. typedef struct _RETRY *RETRYPTR;
  82.  
  83. typedef struct _RETRY {                //- Application item
  84.    LPSTR       lpserver;
  85.    BOOL        bCancel;
  86.    APPITEMPTR  paItem;
  87. } RETRYSTRUCT;
  88.                  
  89. //--- GLOBALS ---
  90.  
  91. extern OLECLIPFORMAT vcfLink;          //- ObjectLink clipboard format 
  92. extern OLECLIPFORMAT vcfNative;        //- Native clipboard format 
  93. extern OLECLIPFORMAT vcfOwnerLink;     //- OwnerLink clipboard format 
  94.  
  95. extern HANDLE        hInst;            //- instance handle
  96. extern HANDLE        hwndFrame;        //- main window handle
  97. extern HANDLE        hAccTable;        //- accelerator table
  98. extern HWND          hwndProp;         //- link properties dialog
  99. extern HWND          hRetry;           //- retry dialog box handle
  100. extern int           cOleWait;         //- wait for asyncc commands
  101. extern int           iObjects;         //- object count
  102. extern int           iObjectNumber;    //- unique name id
  103. extern char          szItemClass[];    //- item class name    
  104. extern char          szDefExtension[]; //- default file extension       
  105. extern char          szAppName[];      //- application name
  106. extern BOOL          fLoadFile;        //- load file flag
  107. extern char          szFileName[];     //- open file name
  108. extern FARPROC       lpfnTimerProc;    //- pointer to timer callback function
  109.