Fixed acmFormatChoose returned fields.
[wine] / dlls / ole32 / ole2stubs.c
1 /*
2  * Temporary place for ole2 stubs.
3  *
4  * Copyright (C) 1999 Corel Corporation
5  * Move these functions to dlls/ole32/ole2impl.c when you implement them.
6  */
7
8 #include "windef.h"
9 #include "winbase.h"
10 #include "wingdi.h"
11 #include "winuser.h"
12 #include "ole2.h"
13 #include "debugtools.h"
14
15 DEFAULT_DEBUG_CHANNEL(ole);
16
17 /******************************************************************************
18  *               OleCreateLinkToFile        [OLE32.96]
19  */
20 HRESULT WINAPI  OleCreateLinkToFile(LPCOLESTR lpszFileName, REFIID riid,
21                         DWORD renderopt, LPFORMATETC lpFormatEtc,
22                         LPOLECLIENTSITE pClientSite, LPSTORAGE pStg, LPVOID* ppvObj)
23 {
24     FIXME("(%p,%p,%li,%p,%p,%p,%p), stub!\n",lpszFileName, riid, renderopt, lpFormatEtc, pClientSite, pStg, ppvObj);
25     return S_OK;
26 }
27
28
29 /******************************************************************************
30  *              OleDuplicateData        [OLE32.102]
31  */
32 HRESULT WINAPI OleDuplicateData(HANDLE hSrc, CLIPFORMAT cfFormat,
33                                   UINT uiFlags)
34 {
35     FIXME("(%x,%x,%x), stub!\n", hSrc, cfFormat, uiFlags);
36     return S_OK;
37 }
38
39  
40 /***********************************************************************
41  *               WriteFmtUserTypeStg (OLE32.160)
42  */
43 HRESULT WINAPI WriteFmtUserTypeStg(
44           LPSTORAGE pstg, CLIPFORMAT cf, LPOLESTR lpszUserType)
45 {
46     FIXME("(%p,%x,%s) stub!\n",pstg,cf,debugstr_w(lpszUserType));
47     return S_OK;
48 }
49
50 /***********************************************************************
51  *             OleTranslateAccelerator [OLE32.130]
52  */
53 HRESULT WINAPI OleTranslateAccelerator (LPOLEINPLACEFRAME lpFrame,
54                    LPOLEINPLACEFRAMEINFO lpFrameInfo, LPMSG lpmsg)
55 {
56     FIXME("(%p,%p,%p),stub!\n", lpFrame, lpFrameInfo, lpmsg);
57     return S_OK;
58 }
59
60 /******************************************************************************
61  *              CoTreatAsClass        [OLE32.46]
62  */
63 HRESULT WINAPI CoTreatAsClass(REFCLSID clsidOld, REFCLSID clsidNew)
64 {
65   FIXME("(%p,%p), stub!\n", clsidOld, clsidNew);
66   return S_OK;
67 }
68
69 /******************************************************************************
70  *              SetConvertStg        [OLE32.142]
71  */
72 HRESULT WINAPI SetConvertStg(LPSTORAGE pStg, BOOL fConvert)
73 {
74   FIXME("(%p,%x), stub!\n", pStg, fConvert);
75   return S_OK;
76 }
77
78 /******************************************************************************
79  *              OleCreate        [OLE32.89]
80  *
81  */
82 HRESULT WINAPI OleCreate(
83         REFCLSID rclsid,
84         REFIID riid,
85         DWORD renderopt,
86         LPFORMATETC pFormatEtc,
87         LPOLECLIENTSITE pClientSite,
88         LPSTORAGE pStg,
89         LPVOID* ppvObj)
90 {
91   HRESULT hres, hres1;
92   IUnknown * pUnk = NULL;
93     
94   FIXME("\n\t%s\n\t%s stub!\n", debugstr_guid(rclsid), debugstr_guid(riid));
95
96   if (SUCCEEDED((hres = CoCreateInstance(rclsid, 0, CLSCTX_INPROC_SERVER, riid, (LPVOID*)&pUnk))))
97   {
98     if (pClientSite)
99     {
100       IOleObject * pOE;
101       IPersistStorage * pPS;
102       if (SUCCEEDED((hres = IUnknown_QueryInterface( pUnk, &IID_IOleObject, (LPVOID*)&pOE))))
103       {
104         TRACE("trying to set clientsite %p\n", pClientSite);
105         hres1 = IOleObject_SetClientSite(pOE, pClientSite);
106         TRACE("-- result 0x%08lx\n", hres1);
107         IOleObject_Release(pOE);
108       }
109       if (SUCCEEDED((hres = IUnknown_QueryInterface( pUnk, &IID_IPersistStorage, (LPVOID*)&pPS))))
110       {
111         TRACE("trying to set stg %p\n", pStg);
112         hres1 = IPersistStorage_InitNew(pPS, pStg);
113         TRACE("-- result 0x%08lx\n", hres1);
114         IPersistStorage_Release(pPS);
115       }
116     }
117   }
118
119   *ppvObj = pUnk;
120
121   TRACE("-- %p \n", pUnk);
122   return hres;
123 }
124
125 /******************************************************************************
126  *              OleCreateLink        [OLE32.94]
127  */
128 HRESULT WINAPI OleCreateLink(LPMONIKER pmkLinkSrc, REFIID riid, DWORD renderopt, LPFORMATETC lpFormatEtc,
129                 LPOLECLIENTSITE pClientSite, LPSTORAGE pStg, LPVOID* ppvObj)
130 {
131   FIXME("(not shown), stub!\n");
132   return S_OK;
133 }
134
135 /******************************************************************************
136  *              OleCreateFromFile        [OLE32.93]
137  */
138 HRESULT WINAPI OleCreateFromFile(REFCLSID rclsid, LPCOLESTR lpszFileName, REFIID riid,
139             DWORD renderopt, LPFORMATETC lpFormatEtc, LPOLECLIENTSITE pClientSite, LPSTORAGE pStg, LPVOID* ppvObj)
140 {
141   FIXME("(not shown), stub!\n");
142   return S_OK;
143 }
144
145
146 /******************************************************************************
147  *              OleGetIconOfClass        [OLE32.106]
148  */
149 HGLOBAL WINAPI OleGetIconOfClass(REFCLSID rclsid, LPOLESTR lpszLabel, BOOL fUseTypeAsLabel)
150 {
151   FIXME("(%p,%p,%x), stub!\n", rclsid, lpszLabel, fUseTypeAsLabel);
152   return S_OK;
153 }
154
155 /******************************************************************************
156  *              ReadFmtUserTypeStg        [OLE32.136]
157  */
158 HRESULT WINAPI ReadFmtUserTypeStg (LPSTORAGE pstg, CLIPFORMAT* pcf, LPOLESTR* lplpszUserType)
159 {
160   FIXME("(%p,%p,%p), stub!\n", pstg, pcf, lplpszUserType);
161   return S_OK;
162 }
163
164 /******************************************************************************
165  *              OleCreateStaticFromData        [OLE32.98]
166  */
167 HRESULT     WINAPI OleCreateStaticFromData(LPDATAOBJECT pSrcDataObj, REFIID iid,
168                 DWORD renderopt, LPFORMATETC pFormatEtc, LPOLECLIENTSITE pClientSite,
169                 LPSTORAGE pStg, LPVOID* ppvObj)
170 {
171   FIXME("(not shown), stub!\n");
172   return S_OK;
173 }
174
175 /******************************************************************************
176  *              OleCreateLinkFromData        [OLE32.95]
177  */
178
179 HRESULT WINAPI  OleCreateLinkFromData(LPDATAOBJECT pSrcDataObj, REFIID riid,
180                 DWORD renderopt, LPFORMATETC pFormatEtc,
181                 LPOLECLIENTSITE pClientSite, LPSTORAGE pStg,
182                 LPVOID* ppvObj)
183 {
184   FIXME("(not shown), stub!\n");
185   return S_OK;
186 }
187
188 /******************************************************************************
189  *              OleIsRunning        [OLE32.111]
190  */
191 BOOL WINAPI OleIsRunning(LPOLEOBJECT pObject)
192 {
193   FIXME("(%p), stub!\n", pObject);
194   return TRUE;
195 }
196
197 /***********************************************************************
198  *           OleRegEnumVerbs    [OLE32.120]
199  */
200 HRESULT WINAPI OleRegEnumVerbs (REFCLSID clsid, LPENUMOLEVERB* ppenum)
201 {
202     FIXME("(%p,%p), stub!\n", clsid, ppenum);
203     return OLEOBJ_E_NOVERBS;
204 }
205
206 /***********************************************************************
207  *           OleRegEnumFormatEtc    [OLE32.119]
208  */
209 HRESULT     WINAPI OleRegEnumFormatEtc (
210   REFCLSID clsid, 
211   DWORD    dwDirection,
212   LPENUMFORMATETC* ppenumFormatetc)
213 {
214     FIXME("(%p, %ld, %p), stub!\n", clsid, dwDirection, ppenumFormatetc);
215
216     return S_OK;
217 }
218
219 /***********************************************************************
220  *           PropVariantClear                       [OLE32.166]
221  */
222 HRESULT WINAPI PropVariantClear(void *pvar) /* [in/out] FIXME: PROPVARIANT * */
223 {
224         FIXME("(%p): stub:\n", pvar);
225
226         *(LPWORD)pvar = 0;
227         /* sets at least the vt field to VT_EMPTY */
228         return S_OK;
229 }
230
231 /***********************************************************************
232  *           PropVariantCopy                        [OLE32.246]
233  */
234 HRESULT WINAPI PropVariantCopy(void *pvarDest,      /* [out] FIXME: PROPVARIANT * */
235                                const void *pvarSrc) /* [in] FIXME: const PROPVARIANT * */
236 {
237         FIXME("(%p, %p): stub:\n", pvarDest, pvarSrc);
238
239         return S_OK;
240 }
241
242 /***********************************************************************
243  *           FreePropVariantArray                           [OLE32.195]
244  */
245 HRESULT WINAPI FreePropVariantArray(ULONG cVariants, /* [in] */
246                                     void *rgvars)    /* [in/out] FIXME: PROPVARIANT * */
247 {
248         FIXME("(%lu, %p): stub:\n", cVariants, rgvars);
249
250         return S_OK;
251 }
252
253 /***********************************************************************
254  *           CoIsOle1Class                              [OLE32.29]
255  */
256 BOOL WINAPI CoIsOle1Class(REFCLSID clsid)
257 {
258   FIXME("%s\n", debugstr_guid(clsid));
259   return FALSE;
260 }