23 #include <separatista/separatista.h> 24 #include "separatista/separatistadocument.h" 25 #include "separatista/debug/debug.h" 30 #ifndef SEPARATISTA_CONTROL_SEPARATISTADOCUMENT_H 31 #define SEPARATISTA_CONTROL_SEPARATISTADOCUMENT_H 34 DEFINE_GUID(IID_SEPARATISTADOCUMENT ,
35 0x4b8ac337, 0x5e17, 0x454d, 0xa7, 0xec, 0x89, 0x55, 0xb0, 0x7b, 0x99, 0xcc);
38 DEFINE_GUID(CLSID_SEPARATISTADOCUMENT,
39 0xa3142fec, 0xfb2e, 0x4715, 0xb5, 0xdf, 0xc4, 0xf7, 0x84, 0x4d, 0x29, 0x56);
53 STDMETHOD_(ULONG, AddRef)() PURE;
54 STDMETHOD_(ULONG, Release)() PURE;
55 STDMETHOD(QueryInterface)(REFIID riid,
void** ppvObject) PURE;
56 STDMETHOD(GetTypeInfoCount)(UINT* pctinfo) PURE;
57 STDMETHOD(GetTypeInfo)(UINT iTInfo, LCID lcid, ITypeInfo** ppTInfo) PURE;
58 STDMETHOD(GetIDsOfNames)(REFIID riid, LPOLESTR* rgszNames, UINT cNames, LCID lcid, DISPID* rgDispId) PURE;
59 STDMETHOD(Invoke)(DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS FAR* pDispParams, VARIANT FAR* pVarResult, EXCEPINFO FAR* pExcepInfo,
unsigned int FAR* puArgErr) PURE;
62 STDMETHOD(GetNamespaceText)(BSTR *pNamespaceText) PURE;
63 STDMETHOD(GetNamespace)(DocumentNamespace *pNamespace) PURE;
64 STDMETHOD(SetNamespace)(DocumentNamespace NameSpace) PURE;
65 STDMETHOD(GetEnableAutoMagic)(VARIANT_BOOL *pEnableAutoMagic) PURE;
66 STDMETHOD(SetEnableAutoMagic)(VARIANT_BOOL EnableAutoMagic) PURE;
67 STDMETHOD(GetRootElement)(
IElement **ppElement) PURE;
68 STDMETHOD(Save)(LONG hWnd, Separatista::IOErrorCode *pErrorCode) PURE;
69 STDMETHOD(SaveAs)(BSTR Path, Separatista::IOErrorCode *pErrorCode) PURE;
70 STDMETHOD(Open)(LONG hWnd, Separatista::IOErrorCode *pErrorCode) PURE;
71 STDMETHOD(OpenFrom)(BSTR Path, Separatista::IOErrorCode *pErrorCode) PURE;
75 struct __declspec(uuid("{4B8AC337-5E17-454D-A7EC-8955B07B99CC}
")) ISeparatistaDocument; 80 class SeparatistaDocument : public SepaControlDispatch<ISeparatistaDocument> 86 SeparatistaDocument(); 88 static const wchar_t *m_pNamespaceTable[]; 91 // Subclass for ISupportErrorInfo 92 STDMETHOD(QueryInterface)(REFIID riid, void** ppvObject); 94 STDMETHOD(GetNamespaceText)(BSTR *pNamespaceText); 95 STDMETHOD(GetNamespace)(DocumentNamespace *pNamespace); 96 STDMETHOD(SetNamespace)(DocumentNamespace NameSpace); 97 STDMETHOD(GetEnableAutoMagic)(VARIANT_BOOL *pEnableAutoMagic); 98 STDMETHOD(SetEnableAutoMagic)(VARIANT_BOOL EnableAutoMagic); 99 STDMETHOD(GetRootElement)(IElement **ppElement); 100 STDMETHOD(Save)(LONG hWnd, Separatista::IOErrorCode *pErrorCode); 101 STDMETHOD(SaveAs)(BSTR Path, Separatista::IOErrorCode *pErrorCode); 102 STDMETHOD(Open)(LONG hWnd, Separatista::IOErrorCode *pErrorCode); 103 STDMETHOD(OpenFrom)(BSTR Path, Separatista::IOErrorCode *pErrorCode); 109 ~SeparatistaDocument(); 112 HRESULT CreateDocument(DocumentNamespace documentNamespace); 114 Separatista::SeparatistaDocument *m_pSeparatistaDocument; 115 DocumentNamespace m_nDocumentNamespace; 116 bool m_bEnableAutoMagic; 119 class __declspec(uuid("{A3142FEC-FB2E-4715-B5DF-C4F7844D2956}
")) SeparatistaDocument; 121 #endif // #define SEPARATISTA_CONTROL_SEPARATISTADOCUMENT_H Definition: separatistadocument.h:41