[INTRIN]
[reactos.git] / reactos / base / shell / browseui / explorerband.cpp
1 #include "precomp.h"
2
3 #if 1
4 #undef UNIMPLEMENTED
5
6 #define UNIMPLEMENTED DbgPrint("%s is UNIMPLEMENTED!\n", __FUNCTION__)
7 #endif
8
9 extern "C"
10 HRESULT WINAPI CExplorerBand_Constructor(REFIID riid, LPVOID *ppv)
11 {
12 return ShellObjectCreator<CExplorerBand>(riid, ppv);
13 }
14
15 CExplorerBand::CExplorerBand() :
16 m_OnWinEventShown(FALSE)
17 {
18 #if 0
19 HRESULT hResult = CoCreateInstance(CLSID_ExplorerBand, NULL, CLSCTX_INPROC_SERVER, IID_PPV_ARG(IUnknown, &m_internalBand));
20 if (FAILED(hResult))
21 {
22 ERR("Could not create internal band (hr=%08lx).\n", hResult);
23 m_internalBand = NULL;
24 return;
25 }
26 hResult = m_internalBand->QueryInterface(IID_PPV_ARG(IDeskBand, &m_internalDeskBand));
27 if (FAILED(hResult))
28 {
29 ERR("Could not obtain interface IDeskBand from internal band (hr=%08lx).\n", hResult);
30 m_internalBand = NULL;
31 m_internalDeskBand = NULL;
32 return;
33 }
34 hResult = m_internalBand->QueryInterface(IID_PPV_ARG(IObjectWithSite, &m_internalObjectWithSite));
35 if (FAILED(hResult))
36 {
37 ERR("Could not obtain interface IObjectWithSite from internal band (hr=%08lx).\n", hResult);
38 m_internalBand = NULL;
39 m_internalDeskBand = NULL;
40 m_internalObjectWithSite = NULL;
41 return;
42 }
43 hResult = m_internalBand->QueryInterface(IID_PPV_ARG(IInputObject, &m_internalInputObject));
44 if (FAILED(hResult))
45 {
46 ERR("Could not obtain interface IInputObject from internal band (hr=%08lx).\n", hResult);
47 m_internalBand = NULL;
48 m_internalDeskBand = NULL;
49 m_internalObjectWithSite = NULL;
50 m_internalInputObject = NULL;
51 return;
52 }
53 hResult = m_internalBand->QueryInterface(IID_PPV_ARG(IPersistStream, &m_internalPersistStream));
54 if (FAILED(hResult))
55 {
56 ERR("Could not obtain interface IPersistStream from internal band (hr=%08lx).\n", hResult);
57 m_internalBand = NULL;
58 m_internalDeskBand = NULL;
59 m_internalObjectWithSite = NULL;
60 m_internalInputObject = NULL;
61 m_internalPersistStream = NULL;
62 return;
63 }
64 hResult = m_internalBand->QueryInterface(IID_PPV_ARG(IOleCommandTarget, &m_internalOleCommandTarget));
65 if (FAILED(hResult))
66 {
67 ERR("Could not obtain interface IOleCommandTarget from internal band (hr=%08lx).\n", hResult);
68 m_internalBand = NULL;
69 m_internalDeskBand = NULL;
70 m_internalObjectWithSite = NULL;
71 m_internalInputObject = NULL;
72 m_internalPersistStream = NULL;
73 m_internalOleCommandTarget = NULL;
74 return;
75 }
76 hResult = m_internalBand->QueryInterface(IID_PPV_ARG(IServiceProvider, &m_internalServiceProvider));
77 if (FAILED(hResult))
78 {
79 ERR("Could not obtain interface IServiceProvider from internal band (hr=%08lx).\n", hResult);
80 m_internalBand = NULL;
81 m_internalDeskBand = NULL;
82 m_internalObjectWithSite = NULL;
83 m_internalInputObject = NULL;
84 m_internalPersistStream = NULL;
85 m_internalOleCommandTarget = NULL;
86 m_internalServiceProvider = NULL;
87 return;
88 }
89 hResult = m_internalBand->QueryInterface(IID_PPV_ARG(IBandNavigate, &m_internalBandNavigate));
90 if (FAILED(hResult))
91 {
92 ERR("Could not obtain interface IBandNavigate from internal band (hr=%08lx).\n", hResult);
93 m_internalBand = NULL;
94 m_internalDeskBand = NULL;
95 m_internalObjectWithSite = NULL;
96 m_internalInputObject = NULL;
97 m_internalPersistStream = NULL;
98 m_internalOleCommandTarget = NULL;
99 m_internalServiceProvider = NULL;
100 m_internalBandNavigate = NULL;
101 return;
102 }
103 hResult = m_internalBand->QueryInterface(IID_PPV_ARG(IWinEventHandler, &m_internalWinEventHandler));
104 if (FAILED(hResult))
105 {
106 ERR("Could not obtain interface IWinEventHandler from internal band (hr=%08lx).\n", hResult);
107 m_internalBand = NULL;
108 m_internalDeskBand = NULL;
109 m_internalObjectWithSite = NULL;
110 m_internalInputObject = NULL;
111 m_internalPersistStream = NULL;
112 m_internalOleCommandTarget = NULL;
113 m_internalServiceProvider = NULL;
114 m_internalBandNavigate = NULL;
115 m_internalWinEventHandler = NULL;
116 return;
117 }
118 hResult = m_internalBand->QueryInterface(IID_PPV_ARG(INamespaceProxy, &m_internalNamespaceProxy));
119 if (FAILED(hResult))
120 {
121 ERR("Could not obtain interface INamespaceProxy from internal band (hr=%08lx).\n", hResult);
122 m_internalBand = NULL;
123 m_internalDeskBand = NULL;
124 m_internalObjectWithSite = NULL;
125 m_internalInputObject = NULL;
126 m_internalPersistStream = NULL;
127 m_internalOleCommandTarget = NULL;
128 m_internalServiceProvider = NULL;
129 m_internalBandNavigate = NULL;
130 m_internalWinEventHandler = NULL;
131 m_internalNamespaceProxy = NULL;
132 return;
133 }
134 hResult = m_internalBand->QueryInterface(IID_PPV_ARG(IDispatch, &m_internalDispatch));
135 if (FAILED(hResult))
136 {
137 ERR("Could not obtain interface INamespaceProxy from internal band (hr=%08lx).\n", hResult);
138 m_internalBand = NULL;
139 m_internalDeskBand = NULL;
140 m_internalObjectWithSite = NULL;
141 m_internalInputObject = NULL;
142 m_internalPersistStream = NULL;
143 m_internalOleCommandTarget = NULL;
144 m_internalServiceProvider = NULL;
145 m_internalBandNavigate = NULL;
146 m_internalWinEventHandler = NULL;
147 m_internalNamespaceProxy = NULL;
148 m_internalDispatch = NULL;
149 return;
150 }
151 #endif
152 }
153
154 CExplorerBand::~CExplorerBand()
155 {
156 }
157
158 // *** IOleWindow methods ***
159 HRESULT STDMETHODCALLTYPE CExplorerBand::GetWindow(HWND *lphwnd)
160 {
161 HRESULT hr;
162 if (m_internalDeskBand)
163 {
164 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::GetWindow(HWND *lphwnd=%p)\n", lphwnd);
165 hr = m_internalDeskBand->GetWindow(lphwnd);
166 if (lphwnd)
167 DbgPrint("\t*lphwnd=%p\n", *lphwnd);
168 DbgPrint("CExplorerBand::GetWindow returning %08lx\n", hr);
169 return hr;
170 }
171
172 UNIMPLEMENTED;
173 return E_NOTIMPL;
174 }
175
176 HRESULT STDMETHODCALLTYPE CExplorerBand::ContextSensitiveHelp(BOOL fEnterMode)
177 {
178 HRESULT hr;
179 if (m_internalDeskBand)
180 {
181 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::ContextSensitiveHelp(BOOL fEnterMode=%s)\n", fEnterMode ? "TRUE" : "FALSE");
182 hr = m_internalDeskBand->ContextSensitiveHelp(fEnterMode);
183 DbgPrint("CExplorerBand::ContextSensitiveHelp returning %08lx\n", hr);
184 return hr;
185 }
186
187 UNIMPLEMENTED;
188 return E_NOTIMPL;
189 }
190
191
192 // *** IDockingWindow methods ***
193 HRESULT STDMETHODCALLTYPE CExplorerBand::CloseDW(DWORD dwReserved)
194 {
195 HRESULT hr;
196 if (m_internalDeskBand)
197 {
198 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::CloseDW(DWORD dwReserved=%u)\n", dwReserved);
199 hr = m_internalDeskBand->CloseDW(dwReserved);
200 DbgPrint("CExplorerBand::CloseDW returning %08lx\n", hr);
201 return hr;
202 }
203
204 UNIMPLEMENTED;
205 return E_NOTIMPL;
206 }
207
208 HRESULT STDMETHODCALLTYPE CExplorerBand::ResizeBorderDW(const RECT *prcBorder, IUnknown *punkToolbarSite, BOOL fReserved)
209 {
210 HRESULT hr;
211 if (m_internalDeskBand)
212 {
213 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::ResizeBorderDW(const RECT *prcBorder=%p, IUnknown *punkToolbarSite=%p, BOOL fReserved=%s)\n",
214 prcBorder, punkToolbarSite, fReserved ? "TRUE" : "FALSE");
215 if (prcBorder)
216 DbgPrint("\t*prcBorder={%u, %u, %u, %u}\n", prcBorder->left, prcBorder->top, prcBorder->right, prcBorder->bottom);
217 hr = m_internalDeskBand->ResizeBorderDW(prcBorder, punkToolbarSite, fReserved);
218 DbgPrint("CExplorerBand::ResizeBorderDW returning %08lx\n", hr);
219 return hr;
220 }
221
222 UNIMPLEMENTED;
223 return E_NOTIMPL;
224 }
225
226 HRESULT STDMETHODCALLTYPE CExplorerBand::ShowDW(BOOL fShow)
227 {
228 HRESULT hr;
229 if (m_internalDeskBand)
230 {
231 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::ShowDW(BOOL fShow=%s)\n", fShow ? "TRUE" : "FALSE");
232 hr = m_internalDeskBand->ShowDW(fShow);
233 DbgPrint("CExplorerBand::ShowDW returning %08lx\n", hr);
234 return hr;
235 }
236
237 UNIMPLEMENTED;
238 return E_NOTIMPL;
239 }
240
241
242 // *** IDeskBand methods ***
243 HRESULT STDMETHODCALLTYPE CExplorerBand::GetBandInfo(DWORD dwBandID, DWORD dwViewMode, DESKBANDINFO *pdbi)
244 {
245 HRESULT hr;
246 if (m_internalDeskBand)
247 {
248 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::GetBandInfo(DWORD dwBandID=%u, DWORD dwViewMode=%u, DESKBANDINFO *pdbi=%p)\n",
249 dwBandID, dwViewMode, pdbi);
250 if (pdbi)
251 DbgPrint("\t*pdbi={dwMask=%u, ...}\n", pdbi->dwMask);
252 hr = m_internalDeskBand->GetBandInfo(dwBandID, dwViewMode, pdbi);
253 if (pdbi)
254 DbgPrint("\t*pdbi={dwMask=%u, crBkgnd=%u, ...}\n", pdbi->dwMask, pdbi->crBkgnd);
255 DbgPrint("CExplorerBand::GetBandInfo returning %08lx\n", hr);
256 return hr;
257 }
258
259 UNIMPLEMENTED;
260 return E_NOTIMPL;
261 }
262
263
264 // *** IObjectWithSite methods ***
265 HRESULT STDMETHODCALLTYPE CExplorerBand::SetSite(IUnknown *pUnkSite)
266 {
267 HRESULT hr;
268 if (m_internalObjectWithSite)
269 {
270 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::SetSite(IUnknown *pUnkSite=%p)\n", pUnkSite);
271 hr = m_internalObjectWithSite->SetSite(pUnkSite);
272 DbgPrint("CExplorerBand::SetSite returning %08lx\n", hr);
273 return hr;
274 }
275
276 UNIMPLEMENTED;
277 return E_NOTIMPL;
278 }
279
280 HRESULT STDMETHODCALLTYPE CExplorerBand::GetSite(REFIID riid, void **ppvSite)
281 {
282 HRESULT hr;
283 if (m_internalObjectWithSite)
284 {
285 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::GetSite(REFIID riid=%s, void **ppvSite=%p)\n", wine_dbgstr_guid(&riid), ppvSite);
286 hr = m_internalObjectWithSite->GetSite(riid, ppvSite);
287 if (ppvSite)
288 DbgPrint("\t*ppvSite=%p\n", *ppvSite);
289 DbgPrint("CExplorerBand::GetSite returning %08lx\n", hr);
290 return hr;
291 }
292
293 UNIMPLEMENTED;
294 return E_NOTIMPL;
295 }
296
297
298 // *** IOleCommandTarget methods ***
299 HRESULT STDMETHODCALLTYPE CExplorerBand::QueryStatus(const GUID *pguidCmdGroup, ULONG cCmds, OLECMD prgCmds [], OLECMDTEXT *pCmdText)
300 {
301 HRESULT hr;
302 if (m_internalOleCommandTarget)
303 {
304 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::QueryStatus(const GUID *pguidCmdGroup=%s, ULONG cCmds=%08x, OLECMD prgCmds []=%p, OLECMDTEXT *pCmdText=%p)\n",
305 wine_dbgstr_guid(pguidCmdGroup), cCmds, prgCmds, pCmdText);
306 hr = m_internalOleCommandTarget->QueryStatus(pguidCmdGroup, cCmds, prgCmds, pCmdText);
307 DbgPrint("CExplorerBand::QueryStatus returning %08lx\n", hr);
308 return hr;
309 }
310
311 UNIMPLEMENTED;
312 return E_NOTIMPL;
313 }
314
315 HRESULT STDMETHODCALLTYPE CExplorerBand::Exec(const GUID *pguidCmdGroup, DWORD nCmdID, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
316 {
317 HRESULT hr;
318 if (m_internalOleCommandTarget)
319 {
320 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::Exec(const GUID *pguidCmdGroup=%s, DWORD nCmdID=%u, DWORD nCmdexecopt=%u, VARIANT *pvaIn=%p, VARIANT *pvaOut=%p)\n",
321 wine_dbgstr_guid(pguidCmdGroup), nCmdID, nCmdexecopt, pvaIn, pvaOut);
322 hr = m_internalOleCommandTarget->Exec(pguidCmdGroup, nCmdID, nCmdexecopt, pvaIn, pvaOut);
323 DbgPrint("CExplorerBand::Exec returning %08lx\n", hr);
324 return hr;
325 }
326
327 UNIMPLEMENTED;
328 return E_NOTIMPL;
329 }
330
331
332 // *** IServiceProvider methods ***
333 HRESULT STDMETHODCALLTYPE CExplorerBand::QueryService(REFGUID guidService, REFIID riid, void **ppvObject)
334 {
335 HRESULT hr;
336 if (m_internalServiceProvider)
337 {
338 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::QueryService(REFGUID guidService=%s, REFIID riid=%s, void **ppvObject=%p)\n",
339 wine_dbgstr_guid(&guidService), wine_dbgstr_guid(&riid), ppvObject);
340 hr = m_internalServiceProvider->QueryService(guidService, riid, ppvObject);
341 if (ppvObject)
342 DbgPrint("\t*ppvObject=%p\n", *ppvObject);
343 DbgPrint("CExplorerBand::QueryService returning %08lx\n", hr);
344 return hr;
345 }
346
347 UNIMPLEMENTED;
348 return E_NOTIMPL;
349 }
350
351
352 // *** IInputObject methods ***
353 HRESULT STDMETHODCALLTYPE CExplorerBand::UIActivateIO(BOOL fActivate, LPMSG lpMsg)
354 {
355 HRESULT hr;
356 if (m_internalInputObject)
357 {
358 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::UIActivateIO(BOOL fActivate=%s, LPMSG lpMsg=%p)\n",
359 fActivate ? "TRUE" : "FALSE", lpMsg);
360 hr = m_internalInputObject->UIActivateIO(fActivate, lpMsg);
361 if (lpMsg)
362 DbgPrint("\t*lpMsg={hwnd=%p, message=%x, wParam=%x, lParam=%x, time=%x, pt={%u %u}}\n",
363 lpMsg->hwnd, lpMsg->message, lpMsg->wParam, lpMsg->lParam, lpMsg->time, lpMsg->pt.x, lpMsg->pt.y);
364 DbgPrint("CExplorerBand::UIActivateIO returning %08lx\n", hr);
365 return hr;
366 }
367
368 UNIMPLEMENTED;
369 return E_NOTIMPL;
370 }
371
372 HRESULT STDMETHODCALLTYPE CExplorerBand::HasFocusIO()
373 {
374 HRESULT hr;
375 if (m_internalInputObject)
376 {
377 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::HasFocusIO()\n");
378 hr = m_internalInputObject->HasFocusIO();
379 DbgPrint("CExplorerBand::HasFocusIO returning %08lx\n", hr);
380 return hr;
381 }
382
383 UNIMPLEMENTED;
384 return E_NOTIMPL;
385 }
386
387 HRESULT STDMETHODCALLTYPE CExplorerBand::TranslateAcceleratorIO(LPMSG lpMsg)
388 {
389 HRESULT hr;
390 if (m_internalInputObject)
391 {
392 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::TranslateAcceleratorIO(LPMSG lpMsg=%p)\n", lpMsg);
393 hr = m_internalInputObject->TranslateAcceleratorIO(lpMsg);
394 if (lpMsg)
395 DbgPrint("\t*lpMsg={hwnd=%p, message=%x, wParam=%x, lParam=%x, time=%x, pt={%u %u}}\n",
396 lpMsg->hwnd, lpMsg->message, lpMsg->wParam, lpMsg->lParam, lpMsg->time, lpMsg->pt.x, lpMsg->pt.y);
397 DbgPrint("CExplorerBand::TranslateAcceleratorIO returning %08lx\n", hr);
398 return hr;
399 }
400
401 UNIMPLEMENTED;
402 return E_NOTIMPL;
403 }
404
405
406 // *** IPersist methods ***
407 HRESULT STDMETHODCALLTYPE CExplorerBand::GetClassID(CLSID *pClassID)
408 {
409 HRESULT hr;
410 if (m_internalPersistStream)
411 {
412 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::GetClassID(CLSID *pClassID=%p)\n", pClassID);
413 hr = m_internalPersistStream->GetClassID(pClassID);
414 if (pClassID)
415 DbgPrint("\t*pClassID=%s\n", wine_dbgstr_guid(pClassID));
416 DbgPrint("CExplorerBand::GetClassID returning %08lx\n", hr);
417 return hr;
418 }
419
420 UNIMPLEMENTED;
421 return E_NOTIMPL;
422 }
423
424
425 // *** IPersistStream methods ***
426 HRESULT STDMETHODCALLTYPE CExplorerBand::IsDirty()
427 {
428 HRESULT hr;
429 if (m_internalPersistStream)
430 {
431 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::IsDirty()\n");
432 hr = m_internalPersistStream->IsDirty();
433 DbgPrint("CExplorerBand::IsDirty returning %08lx\n", hr);
434 return hr;
435 }
436
437 UNIMPLEMENTED;
438 return E_NOTIMPL;
439 }
440
441 HRESULT STDMETHODCALLTYPE CExplorerBand::Load(IStream *pStm)
442 {
443 HRESULT hr;
444 if (m_internalPersistStream)
445 {
446 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::Load(IStream *pStm=%p)\n", pStm);
447 hr = m_internalPersistStream->Load(pStm);
448 DbgPrint("CExplorerBand::Load returning %08lx\n", hr);
449 return hr;
450 }
451
452 UNIMPLEMENTED;
453 return E_NOTIMPL;
454 }
455
456 HRESULT STDMETHODCALLTYPE CExplorerBand::Save(IStream *pStm, BOOL fClearDirty)
457 {
458 HRESULT hr;
459 if (m_internalPersistStream)
460 {
461 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::Save(IStream *pStm=%p, BOOL fClearDirty=%s)\n",
462 pStm, fClearDirty ? "TRUE" : "FALSE");
463 hr = m_internalPersistStream->Save(pStm, fClearDirty);
464 DbgPrint("CExplorerBand::Save returning %08lx\n", hr);
465 return hr;
466 }
467
468 UNIMPLEMENTED;
469 return E_NOTIMPL;
470 }
471
472 HRESULT STDMETHODCALLTYPE CExplorerBand::GetSizeMax(ULARGE_INTEGER *pcbSize)
473 {
474 HRESULT hr;
475 if (m_internalPersistStream)
476 {
477 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::GetSizeMax(ULARGE_INTEGER *pcbSize=%p)\n", pcbSize);
478 hr = m_internalPersistStream->GetSizeMax(pcbSize);
479 if (pcbSize)
480 DbgPrint("\t*pcbSize=%llx\n", pcbSize->QuadPart);
481 DbgPrint("CExplorerBand::GetSizeMax returning %08lx\n", hr);
482 return hr;
483 }
484
485 UNIMPLEMENTED;
486 return E_NOTIMPL;
487 }
488
489
490 // *** IWinEventHandler methods ***
491 HRESULT STDMETHODCALLTYPE CExplorerBand::OnWinEvent(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam, LRESULT *theResult)
492 {
493 HRESULT hr;
494 if (m_internalWinEventHandler)
495 {
496 if (m_OnWinEventShown)
497 return m_internalWinEventHandler->OnWinEvent(hWnd, uMsg, wParam, lParam, theResult);
498 m_OnWinEventShown = TRUE;
499
500 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::OnWinEvent(HWND hWnd=%x, UINT uMsg=%x, WPARAM wParam=%x, LPARAM lParam=%x, LRESULT *theResult=%p)\n",
501 hWnd, uMsg, wParam, lParam, theResult);
502 hr = m_internalWinEventHandler->OnWinEvent(hWnd, uMsg, wParam, lParam, theResult);
503 if (theResult)
504 DbgPrint("\t*theResult=%x\n", *theResult);
505 DbgPrint("CExplorerBand::OnWinEvent returning %08lx\n", hr);
506 return hr;
507 }
508
509 UNIMPLEMENTED;
510 return E_NOTIMPL;
511 }
512
513 HRESULT STDMETHODCALLTYPE CExplorerBand::IsWindowOwner(HWND hWnd)
514 {
515 HRESULT hr;
516 if (m_internalWinEventHandler)
517 {
518 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::IsWindowOwner(HWND hWnd=%x)\n", hWnd);
519 hr = m_internalWinEventHandler->IsWindowOwner(hWnd);
520 DbgPrint("CExplorerBand::IsWindowOwner returning %08lx\n", hr);
521 return hr;
522 }
523
524 UNIMPLEMENTED;
525 return E_NOTIMPL;
526 }
527
528
529 // *** IBandNavigate methods ***
530 HRESULT STDMETHODCALLTYPE CExplorerBand::Select(long paramC)
531 {
532 HRESULT hr;
533 if (m_internalBandNavigate)
534 {
535 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::Select(long paramC=%x)\n", paramC);
536 hr = m_internalBandNavigate->Select(paramC);
537 DbgPrint("CExplorerBand::Select returning %08lx\n", hr);
538 return hr;
539 }
540
541 UNIMPLEMENTED;
542 return E_NOTIMPL;
543 }
544
545
546 // *** INamespaceProxy ***
547 HRESULT STDMETHODCALLTYPE CExplorerBand::GetNavigateTarget(long paramC, long param10, long param14)
548 {
549 HRESULT hr;
550 if (m_internalNamespaceProxy)
551 {
552 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::GetNavigateTarget(long paramC=%08x, long param10=%08x, long param14=%08x)\n",
553 paramC, param10, param14);
554 hr = m_internalNamespaceProxy->GetNavigateTarget(paramC, param10, param14);
555 DbgPrint("CExplorerBand::GetNavigateTarget returning %08lx\n", hr);
556 return hr;
557 }
558
559 UNIMPLEMENTED;
560 return E_NOTIMPL;
561 }
562
563 HRESULT STDMETHODCALLTYPE CExplorerBand::Invoke(long paramC)
564 {
565 HRESULT hr;
566 if (m_internalNamespaceProxy)
567 {
568 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::Invoke(long paramC=%08x)\n", paramC);
569 hr = m_internalNamespaceProxy->Invoke(paramC);
570 DbgPrint("CExplorerBand::Invoke returning %08lx\n", hr);
571 return hr;
572 }
573
574 UNIMPLEMENTED;
575 return E_NOTIMPL;
576 }
577
578 HRESULT STDMETHODCALLTYPE CExplorerBand::OnSelectionChanged(long paramC)
579 {
580 HRESULT hr;
581 if (m_internalNamespaceProxy)
582 {
583 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::OnSelectionChanged(long paramC=%08x)\n", paramC);
584 hr = m_internalNamespaceProxy->OnSelectionChanged(paramC);
585 DbgPrint("CExplorerBand::OnSelectionChanged returning %08lx\n", hr);
586 return hr;
587 }
588
589 UNIMPLEMENTED;
590 return E_NOTIMPL;
591 }
592
593 HRESULT STDMETHODCALLTYPE CExplorerBand::RefreshFlags(long paramC, long param10, long param14)
594 {
595 HRESULT hr;
596 if (m_internalNamespaceProxy)
597 {
598 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::RefreshFlags(long paramC=%08x, long param10=%08x, long param14=%08x)\n",
599 paramC, param10, param14);
600 hr = m_internalNamespaceProxy->RefreshFlags(paramC, param10, param14);
601 DbgPrint("CExplorerBand::RefreshFlags returning %08lx\n", hr);
602 return hr;
603 }
604
605 UNIMPLEMENTED;
606 return E_NOTIMPL;
607 }
608
609 HRESULT STDMETHODCALLTYPE CExplorerBand::CacheItem(long paramC)
610 {
611 HRESULT hr;
612 if (m_internalNamespaceProxy)
613 {
614 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::CacheItem(long paramC=%08x)\n", paramC);
615 hr = m_internalNamespaceProxy->CacheItem(paramC);
616 DbgPrint("CExplorerBand::CacheItem returning %08lx\n", hr);
617 return hr;
618 }
619
620 UNIMPLEMENTED;
621 return E_NOTIMPL;
622 }
623
624
625 // *** IDispatch methods ***
626 HRESULT STDMETHODCALLTYPE CExplorerBand::GetTypeInfoCount(UINT *pctinfo)
627 {
628 HRESULT hr;
629 if (m_internalDispatch)
630 {
631 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::GetTypeInfoCount(UINT *pctinfo=%p)\n", pctinfo);
632 hr = m_internalDispatch->GetTypeInfoCount(pctinfo);
633 if (pctinfo)
634 DbgPrint("\t*pctinfo=%08x\n", *pctinfo);
635 DbgPrint("CExplorerBand::GetTypeInfoCount returning %08lx\n", hr);
636 return hr;
637 }
638
639 UNIMPLEMENTED;
640 return E_NOTIMPL;
641 }
642
643 HRESULT STDMETHODCALLTYPE CExplorerBand::GetTypeInfo(UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo)
644 {
645 HRESULT hr;
646 if (m_internalDispatch)
647 {
648 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::GetTypeInfo(UINT iTInfo=%u, LCID lcid=%08x, ITypeInfo **ppTInfo=%p)\n",
649 iTInfo, lcid, ppTInfo);
650 hr = m_internalDispatch->GetTypeInfo(iTInfo, lcid, ppTInfo);
651 if (ppTInfo)
652 DbgPrint("\t*ppTInfo=%08x\n", *ppTInfo);
653 DbgPrint("CExplorerBand::GetTypeInfo returning %08lx\n", hr);
654 return hr;
655 }
656
657 UNIMPLEMENTED;
658 return E_NOTIMPL;
659 }
660
661 HRESULT STDMETHODCALLTYPE CExplorerBand::GetIDsOfNames(REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
662 {
663 HRESULT hr;
664 if (m_internalDispatch)
665 {
666 DbgPrint("HRESULT STDMETHODCALLTYPE CExplorerBand::GetIDsOfNames(REFIID riid=%s, LPOLESTR *rgszNames=%S, UINT cNames=%u, LCID lcid=%08x, DISPID *rgDispId=%p)\n",
667 wine_dbgstr_guid(&riid), rgszNames, cNames, lcid, rgDispId);
668 hr = m_internalDispatch->GetIDsOfNames(riid, rgszNames, cNames, lcid, rgDispId);
669 if (rgDispId && SUCCEEDED(hr))
670 {
671 for (UINT i = 0; i < cNames; i++)
672 {
673 DbgPrint("\trgDispId[%d]=%08x\n", rgDispId[i]);
674 }
675 }
676 DbgPrint("CExplorerBand::GetTypeInfo returning %08lx\n", hr);
677 return hr;
678 }
679
680 UNIMPLEMENTED;
681 return E_NOTIMPL;
682 }
683
684 HRESULT STDMETHODCALLTYPE CExplorerBand::Invoke(DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
685 {
686 UNIMPLEMENTED;
687 return E_NOTIMPL;
688 }
689