1 /**
2  * Windows API header module
3  *
4  * Translated from MinGW Windows headers
5  *
6  * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost License 1.0)
7  * Source: $(DRUNTIMESRC core/sys/windows/_docobj.d)
8  */
9 /// Automatically imported and edited from the druntime module
10 /// core.sys.windows.docobj for the auto-generated win32 package.
11 module win32.docobj;
12 //version (Windows):
13 @system:
14 
15 import win32.basetyps, win32.oaidl, win32.objidl, win32.oleidl,
16   win32.unknwn, win32.windef, win32.wtypes;
17 
18 // FIXME: remove inherited methods from interface definitions
19 
20 enum {
21     OLECMDERR_E_UNKNOWNGROUP = -2147221244,
22     OLECMDERR_E_CANCELED     = -2147221245,
23     OLECMDERR_E_NOHELP       = -2147221246,
24     OLECMDERR_E_DISABLED     = -2147221247,
25     OLECMDERR_E_NOTSUPPORTED = -2147221248
26 }
27 
28 enum OLECMDID {
29     OLECMDID_OPEN = 1,
30     OLECMDID_NEW = 2,
31     OLECMDID_SAVE = 3,
32     OLECMDID_SAVEAS = 4,
33     OLECMDID_SAVECOPYAS = 5,
34     OLECMDID_PRINT = 6,
35     OLECMDID_PRINTPREVIEW = 7,
36     OLECMDID_PAGESETUP = 8,
37     OLECMDID_SPELL = 9,
38     OLECMDID_PROPERTIES = 10,
39     OLECMDID_CUT = 11,
40     OLECMDID_COPY = 12,
41     OLECMDID_PASTE = 13,
42     OLECMDID_PASTESPECIAL = 14,
43     OLECMDID_UNDO = 15,
44     OLECMDID_REDO = 16,
45     OLECMDID_SELECTALL = 17,
46     OLECMDID_CLEARSELECTION = 18,
47     OLECMDID_ZOOM = 19,
48     OLECMDID_GETZOOMRANGE = 20,
49     OLECMDID_UPDATECOMMANDS = 21,
50     OLECMDID_REFRESH = 22,
51     OLECMDID_STOP = 23,
52     OLECMDID_HIDETOOLBARS = 24,
53     OLECMDID_SETPROGRESSMAX = 25,
54     OLECMDID_SETPROGRESSPOS = 26,
55     OLECMDID_SETPROGRESSTEXT = 27,
56     OLECMDID_SETTITLE = 28,
57     OLECMDID_SETDOWNLOADSTATE = 29,
58     OLECMDID_STOPDOWNLOAD = 30
59 }
60 
61 enum OLECMDF {
62     OLECMDF_SUPPORTED = 1,
63     OLECMDF_ENABLED = 2,
64     OLECMDF_LATCHED = 4,
65     OLECMDF_NINCHED = 8
66 }
67 
68 enum OLECMDEXECOPT {
69     OLECMDEXECOPT_DODEFAULT = 0,
70     OLECMDEXECOPT_PROMPTUSER = 1,
71     OLECMDEXECOPT_DONTPROMPTUSER = 2,
72     OLECMDEXECOPT_SHOWHELP = 3
73 }
74 
75 struct OLECMDTEXT {
76     DWORD cmdtextf;
77     ULONG cwActual;
78     ULONG cwBuf;
79     wchar[1] rgwz = 0;
80 }
81 
82 struct OLECMD {
83     ULONG cmdID;
84     DWORD cmdf;
85 }
86 
87 alias IOleInPlaceSite LPOLEINPLACESITE;
88 alias IEnumOleDocumentViews LPENUMOLEDOCUMENTVIEWS;
89 
90 extern (C) extern const IID
91     IID_IContinueCallback,
92     IID_IEnumOleDocumentViews,
93     IID_IPrint,
94     IID_IOleDocumentView,
95     IID_IOleDocument,
96     IID_IOleCommandTarget,
97     IID_IOleDocumentSite;
98 
99 
100 interface IOleDocumentView : IUnknown {
101     HRESULT SetInPlaceSite(LPOLEINPLACESITE);
102     HRESULT GetInPlaceSite(LPOLEINPLACESITE*);
103     HRESULT GetDocument(IUnknown*);
104     HRESULT SetRect(LPRECT);
105     HRESULT GetRect(LPRECT);
106     HRESULT SetRectComplex(LPRECT, LPRECT, LPRECT, LPRECT);
107     HRESULT Show(BOOL);
108     HRESULT UIActivate(BOOL);
109     HRESULT Open();
110     HRESULT Close(DWORD);
111     HRESULT SaveViewState(IStream);
112     HRESULT ApplyViewState(IStream);
113     HRESULT Clone(LPOLEINPLACESITE, IOleDocumentView*);
114 }
115 
116 interface IEnumOleDocumentViews : IUnknown {
117       HRESULT Next(ULONG, IOleDocumentView, ULONG*);
118       HRESULT Skip(ULONG);
119       HRESULT Reset();
120       HRESULT Clone(IEnumOleDocumentViews*);
121 }
122 
123 interface IOleDocument : IUnknown {
124     HRESULT CreateView(LPOLEINPLACESITE, IStream, DWORD, IOleDocumentView*);
125     HRESULT GetDocMiscStatus(DWORD*);
126     HRESULT EnumViews(LPENUMOLEDOCUMENTVIEWS*, IOleDocumentView*);
127 }
128 
129 interface IOleCommandTarget : IUnknown {
130     HRESULT QueryStatus(const(GUID)*, ULONG, OLECMD*, OLECMDTEXT*);
131     HRESULT Exec(const(GUID)*, DWORD, DWORD, VARIANTARG*, VARIANTARG*);
132 }
133 
134 interface IOleDocumentSite : IUnknown {
135     HRESULT ActivateMe(IOleDocumentView);
136 }