Leaked source code of windows server 2003
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.

141 lines
6.5 KiB

  1. #ifndef _IBODYOBJ_H
  2. #define _IBODYOBJ_H
  3. #include "statbar.h"
  4. #include "mimeole.h"
  5. #ifndef __IBodyObj_FWD_DEFINED__
  6. #define __IBodyObj_FWD_DEFINED__
  7. typedef interface IBodyObj IBodyObj;
  8. #endif /* __IBodyObj_FWD_DEFINED__ */
  9. // HrInit flags
  10. enum
  11. {
  12. IBOF_PRINT =0x01,
  13. IBOF_USEMARKREAD =0x02, // if msg is UNREAD, activates mark as read rules
  14. IBOF_TABLINKS =0x04,
  15. IBOF_NOSCROLL =0x08,
  16. IBOF_DISPLAYTO =0x10
  17. };
  18. // HrLoad flags
  19. enum
  20. {
  21. BLF_PRESERVESERVICE =0x01, // uses ULA_PRESERVESERVICE
  22. };
  23. // HrUnloadAll flags
  24. enum
  25. {
  26. ULA_PRESERVESERVICE =0x01, // skips SetService(NULL)
  27. };
  28. // HrSave flags
  29. enum
  30. {
  31. BSF_HTML =0x00000001,
  32. BSF_FIXUPURLS =0x00000002
  33. };
  34. enum
  35. {
  36. // Used with SMIME
  37. MEHC_BTN_OPEN = 0x00000001, // This if from the error screen to the message
  38. MEHC_BTN_CERT, // This opens the cert
  39. MEHC_BTN_TRUST, // This opens the trusts
  40. MEHC_BTN_CONTINUE, // Goes from opening screen to either error or main message
  41. // Used with HTML errors
  42. MEHC_CMD_CONNECT, // Try to reconnect to the server
  43. MEHC_CMD_DOWNLOAD, // Try to download message again
  44. // Used with Mark As Read
  45. MEHC_CMD_MARK_AS_READ, // Should mark as read now if haven't done it
  46. MEHC_UIACTIVATE, // Notifies the view we have the focus
  47. MEHC_CMD_PROCESS_RECEIPT, // Tells the view to process for receipts
  48. MEHC_CMD_PROCESS_RECEIPT_IF_NOT_SIGNED, //Tells the view to process for reciepts if the msg is not signed
  49. MEHC_MAX
  50. };
  51. interface IMimeEditEventSink : public IUnknown
  52. {
  53. // Return S_OK if handled, Return S_FALSE if want MEHost to handle event
  54. virtual HRESULT STDMETHODCALLTYPE EventOccurred(DWORD cmdID, IMimeMessage *pMessage) PURE;
  55. };
  56. typedef void (CALLBACK * PFNMARKASREAD)(DWORD);
  57. typedef HRESULT (CALLBACK * PFNNOSECUI)(DWORD);
  58. interface IBodyOptions;
  59. interface IBodyObj2 : public IUnknown
  60. {
  61. public:
  62. // Basic functions
  63. virtual HRESULT STDMETHODCALLTYPE HrUpdateFormatBar() PURE;
  64. virtual HRESULT STDMETHODCALLTYPE HrClearFormatting() PURE;
  65. virtual HRESULT STDMETHODCALLTYPE HrInit(HWND hwndParent, DWORD dwFlags, IBodyOptions *pBodyOptions) PURE;
  66. virtual HRESULT STDMETHODCALLTYPE HrClose() PURE;
  67. virtual HRESULT STDMETHODCALLTYPE HrResetDocument() PURE;
  68. virtual HRESULT STDMETHODCALLTYPE HrSetStatusBar(CStatusBar *pStatus) PURE;
  69. virtual HRESULT STDMETHODCALLTYPE HrUpdateToolbar(HWND hwndToolbar) PURE;
  70. virtual HRESULT STDMETHODCALLTYPE HrShow(BOOL fVisible) PURE;
  71. virtual HRESULT STDMETHODCALLTYPE HrOnInitMenuPopup(HMENU hmenuPopup, UINT uID) PURE;
  72. virtual HRESULT STDMETHODCALLTYPE HrWMMenuSelect(HWND hwnd, WPARAM wParam, LPARAM lParam) PURE;
  73. virtual HRESULT STDMETHODCALLTYPE HrWMDrawMenuItem(HWND hwnd, LPDRAWITEMSTRUCT pdis) PURE;
  74. virtual HRESULT STDMETHODCALLTYPE HrWMMeasureMenuItem(HWND hwnd, LPMEASUREITEMSTRUCT pmis) PURE;
  75. virtual HRESULT STDMETHODCALLTYPE HrWMCommand(HWND hwnd, int id, WORD wCmd) PURE;
  76. virtual HRESULT STDMETHODCALLTYPE HrGetWindow(HWND *pHwnd) PURE;
  77. virtual HRESULT STDMETHODCALLTYPE HrSetSize(LPRECT prc) PURE;
  78. virtual HRESULT STDMETHODCALLTYPE HrSetNoSecUICallback(DWORD dwCookie, PFNNOSECUI pfnNoSecUI) PURE;
  79. virtual HRESULT STDMETHODCALLTYPE HrSetDragSource(BOOL fIsSource) PURE;
  80. virtual HRESULT STDMETHODCALLTYPE HrTranslateAccelerator(LPMSG lpMsg) PURE;
  81. virtual HRESULT STDMETHODCALLTYPE HrUIActivate(BOOL fActivate) PURE;
  82. virtual HRESULT STDMETHODCALLTYPE HrSetUIActivate() PURE;
  83. virtual HRESULT STDMETHODCALLTYPE HrFrameActivate(BOOL fActivate) PURE;
  84. virtual HRESULT STDMETHODCALLTYPE HrHasFocus() PURE;
  85. virtual HRESULT STDMETHODCALLTYPE HrSetBkGrndPicture(LPTSTR pszPicture) PURE;
  86. virtual HRESULT STDMETHODCALLTYPE GetTabStopArray(HWND *rgTSArray, int *pcArrayCount) PURE;
  87. virtual HRESULT STDMETHODCALLTYPE PublicFilterDataObject(IDataObject *pDO, IDataObject **ppDORet) PURE;
  88. virtual HRESULT STDMETHODCALLTYPE HrSaveAttachment() PURE;
  89. virtual HRESULT STDMETHODCALLTYPE SetEventSink(IMimeEditEventSink *pEventSink) PURE;
  90. virtual HRESULT STDMETHODCALLTYPE LoadHtmlErrorPage(LPCSTR pszURL) PURE;
  91. // MimeEdit Command Set functions
  92. virtual HRESULT STDMETHODCALLTYPE HrSpellCheck(BOOL fSuppressDoneMsg) PURE;
  93. virtual HRESULT STDMETHODCALLTYPE HrIsDirty(BOOL *pfDirty) PURE;
  94. virtual HRESULT STDMETHODCALLTYPE HrSetDirtyFlag(BOOL fDirty) PURE;
  95. virtual HRESULT STDMETHODCALLTYPE HrIsEmpty(BOOL *pfEmpty) PURE;
  96. virtual HRESULT STDMETHODCALLTYPE HrUnloadAll(UINT idsDefaultBody, DWORD dwFlags) PURE;
  97. virtual HRESULT STDMETHODCALLTYPE HrSetStyle(DWORD dwStyle) PURE;
  98. virtual HRESULT STDMETHODCALLTYPE HrGetStyle(DWORD *pdwStyle) PURE;
  99. virtual HRESULT STDMETHODCALLTYPE HrEnableHTMLMode(BOOL fOn) PURE;
  100. virtual HRESULT STDMETHODCALLTYPE HrDowngradeToPlainText() PURE;
  101. virtual HRESULT STDMETHODCALLTYPE HrSetText(LPSTR lpsz) PURE;
  102. virtual HRESULT STDMETHODCALLTYPE HrPerformROT13Encoding() PURE;
  103. virtual HRESULT STDMETHODCALLTYPE HrInsertTextFile(LPSTR lpsz) PURE;
  104. virtual HRESULT STDMETHODCALLTYPE HrInsertTextFileFromDialog() PURE;
  105. virtual HRESULT STDMETHODCALLTYPE HrViewSource(DWORD dwViewType) PURE;
  106. virtual HRESULT STDMETHODCALLTYPE HrSetPreviewFormat(LPSTR lpsz) PURE;
  107. virtual HRESULT STDMETHODCALLTYPE HrSetEditMode(BOOL fOn) PURE;
  108. virtual HRESULT STDMETHODCALLTYPE HrIsEditMode(BOOL *pfOn) PURE;
  109. virtual HRESULT STDMETHODCALLTYPE HrSetCharset(HCHARSET hCharset) PURE;
  110. virtual HRESULT STDMETHODCALLTYPE HrGetCharset(HCHARSET *phCharset) PURE;
  111. virtual HRESULT STDMETHODCALLTYPE HrSaveAsStationery(LPWSTR pwszFile) PURE;
  112. virtual HRESULT STDMETHODCALLTYPE HrApplyStationery(LPWSTR pwszFile) PURE;
  113. virtual HRESULT STDMETHODCALLTYPE HrHandsOffStorage() PURE;
  114. virtual HRESULT STDMETHODCALLTYPE HrRefresh() PURE;
  115. virtual HRESULT STDMETHODCALLTYPE HrScrollPage() PURE;
  116. virtual HRESULT STDMETHODCALLTYPE UpdateBackAndStyleMenus(HMENU hmenu) PURE;
  117. };
  118. #endif //_IBODYOBJ_H