Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

137 lines
4.8 KiB

  1. /*-----------------------------------------------------------------------------+
  2. | SERVER.H |
  3. | |
  4. | (C) Copyright Microsoft Corporation 1992. All rights reserved. |
  5. | |
  6. | Revision History |
  7. | Oct-1992 MikeTri Ported to WIN32 / WIN16 common code |
  8. | |
  9. +-----------------------------------------------------------------------------*/
  10. //
  11. // this function is in MCIOLE.DLL
  12. //
  13. /* This is defined (as an enum) in ole.h:
  14. */
  15. typedef UINT OLESTATUS;
  16. //
  17. // global variables of doom!!
  18. //
  19. extern BOOL gfEmbeddedObject; // TRUE if editing embedded OLE object
  20. extern BOOL gfRunWithEmbeddingFlag; // TRUE if we are run with "-Embedding"
  21. extern BOOL gfCloseAfterPlaying; // TRUE if we are to hide after play
  22. extern BOOL gfPlayingInPlace; // TRUE if playing in place
  23. extern BOOL gfParentWasEnabled; // TRUE if parent was enabled
  24. extern BOOL gfShowWhilePlaying; //
  25. extern BOOL gfDirty; //
  26. extern int gfErrorBox; // TRUE if we have a message box active
  27. extern BOOL gfErrorDeath; // Die when errorbox is up
  28. // server related stuff.
  29. #define SERVER_STUFF
  30. #ifdef SERVER_STUFF
  31. //typedef struct _SRVR *PSRVR;
  32. //typedef struct _SRVR FAR *LPSRVR;
  33. #endif /* SERVER_STUFF */
  34. void FAR PASCAL ServerUnblock(void);
  35. void FAR PASCAL BlockServer(void);
  36. void FAR PASCAL UnblockServer(void);
  37. void FAR PASCAL PlayInPlace(HWND hwndApp, HWND hwndClient, LPRECT prc);
  38. void FAR PASCAL EndPlayInPlace(HWND hwndApp);
  39. void FAR PASCAL DelayedFixLink(UINT verb, BOOL fShow, BOOL fActivate);
  40. void CleanObject(void);
  41. void UpdateObject(void);
  42. BOOL FAR PASCAL IsObjectDirty(void);
  43. #ifdef SERVER_STUFF
  44. #ifdef REDEFINITION
  45. typedef struct _SRVR {
  46. OLESERVER olesrvr;
  47. LHSERVER lhsrvr; // registration handle
  48. HWND hwnd; // corresponding server window
  49. }SRVR;
  50. #endif /* REDEFINITION */
  51. //BOOL FAR PASCAL InitServer (HWND, HANDLE, LPTSTR);
  52. void FAR PASCAL TermServer (void);
  53. typedef struct _OLECLIENT FAR* LPOLECLIENT;
  54. #ifdef REDEFINITION
  55. // server related stuff.
  56. typedef struct _DOC *PDOC;
  57. typedef struct _DOC {
  58. OLESERVERDOC oledoc;
  59. LHSERVERDOC lhdoc; // registration handle
  60. HWND hwnd; // corresponding server window
  61. ATOM aName; // docmnet name.
  62. } DOC ;
  63. #endif /* REDEFINITION */
  64. #ifdef UNUSED
  65. OLESTATUS FAR PASCAL DocSave (LPOLESERVERDOC);
  66. OLESTATUS FAR PASCAL DocClose (LPOLESERVERDOC);
  67. OLESTATUS FAR PASCAL DocRelease (LPOLESERVERDOC);
  68. OLESTATUS FAR PASCAL DocGetObject (LPOLESERVERDOC, OLE_LPCSTR, LPOLEOBJECT FAR *, LPOLECLIENT);
  69. OLESTATUS FAR PASCAL DocSetDocDimensions (LPOLESERVERDOC, OLE_CONST RECT FAR*);
  70. OLESTATUS FAR PASCAL DocSetHostNames (LPOLESERVERDOC, OLE_LPCSTR, OLE_LPCSTR);
  71. OLESTATUS FAR PASCAL DocExecute (LPOLESERVERDOC, HANDLE);
  72. OLESTATUS FAR PASCAL DocSetColorScheme (LPOLESERVERDOC, OLE_CONST LOGPALETTE FAR*);
  73. #endif /* UNUSED */
  74. //typedef struct _ITEM *PITEM;
  75. //typedef struct _ITEM FAR *LPITEM;
  76. //typedef struct _ITEM { /*OLEOBJECT*/
  77. // OLEOBJECT oleobject;
  78. // LPOLECLIENT lpoleclient;
  79. // HWND hwnd;
  80. //}ITEM;
  81. //OLESTATUS FAR PASCAL ItemOpen (LPOLEOBJECT, BOOL);
  82. //OLESTATUS FAR PASCAL ItemDoVerb (LPOLEOBJECT, UINT, BOOL, BOOL);
  83. //OLESTATUS FAR PASCAL ItemRelease (LPOLEOBJECT);
  84. //OLESTATUS FAR PASCAL ItemGetData (LPOLEOBJECT, OLECLIPFORMAT, LPHANDLE);
  85. //OLESTATUS FAR PASCAL ItemSetData (LPOLEOBJECT, OLECLIPFORMAT, HANDLE);
  86. //OLESTATUS FAR PASCAL ItemSetTargetDevice (LPOLEOBJECT, HANDLE);
  87. //OLECLIPFORMAT FAR PASCAL ItemEnumFormats (LPOLEOBJECT, OLECLIPFORMAT);
  88. //OLESTATUS FAR PASCAL ItemSetColorScheme (LPOLEOBJECT, OLE_CONST LOGPALETTE FAR*);
  89. //OLESTATUS FAR PASCAL ItemSetBounds (LPOLEOBJECT, OLE_CONST RECT FAR*);
  90. //!!extern SRVR gSrvr;
  91. //!!extern DOC gDoc;
  92. //!!extern ITEM gItem;
  93. int FAR PASCAL SendChangeMsg(UINT options); //!!!
  94. void FAR PASCAL TerminateServer(void);
  95. //void FAR PASCAL NewDoc(BOOL fUntitled);
  96. //BOOL FAR PASCAL RegisterDocument(LHSERVERDOC lhdoc, LPOLESERVERDOC FAR *lplpoledoc);
  97. //void FAR PASCAL RevokeDocument(void);
  98. /* ole.h:
  99. */
  100. typedef WORD OLECLIPFORMAT;
  101. extern OLECLIPFORMAT cfLink;
  102. extern OLECLIPFORMAT cfOwnerLink;
  103. extern OLECLIPFORMAT cfNative;
  104. void FAR PASCAL SetEmbeddedObjectFlag(BOOL flag);
  105. void FAR PASCAL CopyObject(HWND hwnd);
  106. #define WM_USER_DESTROY (WM_USER+120)
  107. #define WM_DO_VERB (WM_USER+121) /* Perform the ItemSetData */
  108. #endif /* SERVER_STUFF */