msvcrt: Don't forward wcschr to ntdll.
[wine.git] / include / shdeprecated.idl
blobec05f4ff4b684d5349bf4c29324b1e95c4c9413e
1 /*
2 * Deprecated shell interfaces
4 * Copyright (C) 2010 Nikolay Sivov for CodeWeavers
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
21 import "objidl.idl";
22 import "ocidl.idl";
23 import "shtypes.idl";
24 import "shobjidl.idl";
25 import "hlink.idl";
26 import "exdisp.idl";
28 cpp_quote("#define TLOG_BACK -1")
29 cpp_quote("#define TLOG_FORE 1")
31 cpp_quote("#define TLMENUF_INCLUDECURRENT 0x00000001")
32 cpp_quote("#define TLMENUF_CHECKCURRENT (TLMENUF_INCLUDECURRENT | 0x00000002)")
33 cpp_quote("#define TLMENUF_BACK 0x00000010")
34 cpp_quote("#define TLMENUF_FORE 0x00000020")
35 cpp_quote("#define TLMENUF_BACKANDFORTH (TLMENUF_BACK | TLMENUF_FORE | TLMENUF_INCLUDECURRENT)")
38 hidden,
39 local,
40 object,
41 uuid(F46EDB3B-BC2F-11d0-9412-00AA00A3EBD3)
43 interface ITravelEntry : IUnknown
45 HRESULT Invoke(
46 [in] IUnknown *punk);
48 HRESULT Update(
49 [in] IUnknown *punk,
50 [in] BOOL fIsLocalAnchor);
52 HRESULT GetPidl(
53 [out] LPITEMIDLIST *ppidl);
57 hidden,
58 local,
59 object,
60 uuid(66A9CB08-4802-11d2-A561-00A0C92DBFE8)
62 interface ITravelLog : IUnknown
64 HRESULT AddEntry(
65 [in] IUnknown *punk,
66 [in] BOOL fIsLocalAnchor);
68 HRESULT UpdateEntry(
69 [in] IUnknown *punk,
70 [in] BOOL fIsLocalAnchor);
72 HRESULT UpdateExternal(
73 [in] IUnknown *punk,
74 [in] IUnknown *punkHLBrowseContext);
76 HRESULT Travel(
77 [in] IUnknown *punk,
78 [in] int iOffset);
80 HRESULT GetTravelEntry(
81 [in] IUnknown *punk,
82 [in] int iOffset,
83 [optional, out] ITravelEntry **ppte);
85 HRESULT FindTravelEntry(
86 [in] IUnknown *punk,
87 [in] LPCITEMIDLIST pidl,
88 [out] ITravelEntry **ppte);
90 HRESULT GetToolTipText(
91 [in] IUnknown *punk,
92 [in] int iOffset,
93 [in] int idsTemplate,
94 [out, size_is(cchText)] LPWSTR pwzText,
95 [in] DWORD cchText);
97 HRESULT InsertMenuEntries(
98 [in] IUnknown *punk,
99 [in] HMENU hmenu,
100 [in] int nPos,
101 [in] int idFirst,
102 [in] int idLast,
103 [in] DWORD dwFlags);
105 HRESULT Clone(
106 [out] ITravelLog **pptl);
108 DWORD CountEntries(
109 [in] IUnknown *punk);
111 HRESULT Revert();
114 typedef void *CIE4ConnectionPoint;
117 local,
118 object,
119 uuid(0D7D1D00-6FC0-11D0-A974-00C04FD705A2)
121 interface IExpDispSupport : IUnknown
123 HRESULT FindCIE4ConnectionPoint(
124 REFIID riid,
125 CIE4ConnectionPoint **ppccp);
127 HRESULT OnTranslateAccelerator(
128 MSG *pMsg,
129 DWORD grfModifiers);
131 HRESULT OnInvoke(
132 DISPID dispidMember,
133 REFIID iid,
134 LCID lcid,
135 WORD wFlags,
136 DISPPARAMS *pdispparams,
137 VARIANT *pVarResult,
138 EXCEPINFO *pexcepinfo,
139 UINT *puArgErr);
142 typedef enum tagBNSTATE
144 BNS_NORMAL = 0,
145 BNS_BEGIN_NAVIGATE = 1,
146 BNS_NAVIGATE = 2
148 } BNSTATE;
150 enum {
151 SBSC_HIDE = 0,
152 SBSC_SHOW = 1,
153 SBSC_TOGGLE = 2,
154 SBSC_QUERY = 3
157 cpp_quote("#define BSF_REGISTERASDROPTARGET 0x00000001")
158 cpp_quote("#define BSF_THEATERMODE 0x00000002")
159 cpp_quote("#define BSF_NOLOCALFILEWARNING 0x00000010")
160 cpp_quote("#define BSF_UISETBYAUTOMATION 0x00000100")
161 cpp_quote("#define BSF_RESIZABLE 0x00000200")
162 cpp_quote("#define BSF_CANMAXIMIZE 0x00000400")
163 cpp_quote("#define BSF_TOPBROWSER 0x00000800")
164 cpp_quote("#define BSF_NAVNOHISTORY 0x00001000")
165 cpp_quote("#define BSF_HTMLNAVCANCELED 0x00002000")
166 cpp_quote("#define BSF_DONTSHOWNAVCANCELPAGE 0x00004000")
167 cpp_quote("#define BSF_SETNAVIGATABLECODEPAGE 0x00008000")
168 cpp_quote("#define BSF_DELEGATEDNAVIGATION 0x00010000")
169 cpp_quote("#define BSF_TRUSTEDFORACTIVEX 0x00020000")
171 cpp_quote("#define HLNF_CALLERUNTRUSTED 0x00200000")
172 cpp_quote("#define HLNF_TRUSTEDFORACTIVEX 0x00400000")
173 cpp_quote("#define HLNF_DISABLEWINDOWRESTRICTIONS 0x00800000")
174 cpp_quote("#define HLNF_TRUSTFIRSTDOWNLOAD 0x01000000")
175 cpp_quote("#define HLNF_UNTRUSTEDFORDOWNLOAD 0x02000000")
176 cpp_quote("#define SHHLNF_NOAUTOSELECT 0x04000000")
177 cpp_quote("#define SHHLNF_WRITENOHISTORY 0x08000000")
178 cpp_quote("#define HLNF_EXTERNALNAVIGATE 0x10000000")
179 cpp_quote("#define HLNF_ALLOW_AUTONAVIGATE 0x20000000")
180 cpp_quote("#define HLNF_NEWWINDOWSMANAGED 0x80000000")
183 local,
184 object,
185 uuid(02ba3b52-0547-11d1-b833-00c04fc9b31f)
187 interface IBrowserService : IUnknown
189 HRESULT GetParentSite(
190 [out] IOleInPlaceSite **ppipsite);
192 HRESULT SetTitle(
193 [in] IShellView *psv,
194 [in] LPCWSTR pszName);
196 HRESULT GetTitle(
197 [in] IShellView *psv,
198 [out, size_is(cchName)] LPWSTR pszName,
199 [in] DWORD cchName);
201 HRESULT GetOleObject(
202 [out] IOleObject **ppobjv);
204 HRESULT GetTravelLog(
205 [out, optional] ITravelLog **pptl);
207 HRESULT ShowControlWindow(
208 [in] UINT id,
209 [in] BOOL fShow);
211 HRESULT IsControlWindowShown(
212 [in] UINT id,
213 [out] BOOL *pfShown);
215 HRESULT IEGetDisplayName(
216 [in] PCIDLIST_ABSOLUTE pidl,
217 [out] LPWSTR pwszName,
218 [in] UINT uFlags);
220 HRESULT IEParseDisplayName(
221 [in] UINT uiCP,
222 [in] LPCWSTR pwszPath,
223 [out] PIDLIST_ABSOLUTE *ppidlOut);
225 HRESULT DisplayParseError(
226 [in] HRESULT hres,
227 [in] LPCWSTR pwszPath);
229 HRESULT NavigateToPidl(
230 [in] PCIDLIST_ABSOLUTE pidl,
231 [in] DWORD grfHLNF);
233 HRESULT SetNavigateState(
234 [in] BNSTATE bnstate);
236 HRESULT GetNavigateState(
237 [out] BNSTATE *pbnstate);
239 HRESULT NotifyRedirect(
240 [in] IShellView *psv,
241 [in] PCIDLIST_ABSOLUTE pidl,
242 [out] BOOL *pfDidBrowse);
244 HRESULT UpdateWindowList();
246 HRESULT UpdateBackForwardState();
248 HRESULT SetFlags(
249 [in] DWORD dwFlags,
250 [in] DWORD dwFlagMask);
252 HRESULT GetFlags(
253 [out] DWORD *pdwFlags);
255 HRESULT CanNavigateNow();
257 HRESULT GetPidl(
258 [out] PIDLIST_ABSOLUTE *ppidl);
260 HRESULT SetReferrer(
261 [in] PCIDLIST_ABSOLUTE pidl);
263 DWORD GetBrowserIndex();
265 HRESULT GetBrowserByIndex(
266 [in] DWORD dwID,
267 [out] IUnknown **ppunk);
269 HRESULT GetHistoryObject(
270 [out] IOleObject **ppole,
271 [out] IStream **pstm,
272 [out] IBindCtx **ppbc);
274 HRESULT SetHistoryObject(
275 [in] IOleObject *pole,
276 [in] BOOL fIsLocalAnchor);
278 HRESULT CacheOLEServer(
279 [in] IOleObject *pole);
281 HRESULT GetSetCodePage(
282 [in] VARIANT *pvarIn,
283 [out] VARIANT *pvarOut);
285 HRESULT OnHttpEquiv(
286 [in] IShellView *psv,
287 [in] BOOL fDone,
288 [in] VARIANT *pvarargIn,
289 [out] VARIANT *pvarargOut);
291 HRESULT GetPalette(
292 [out] HPALETTE *hpal);
294 HRESULT RegisterWindow(
295 [in] BOOL fForceRegister,
296 [in] int swc);
300 object,
301 local,
302 uuid(5836fb00-8187-11cf-a12b-00aa004ae837)
304 interface IShellService : IUnknown
306 HRESULT SetOwner( [in] IUnknown *pUnk );
309 cpp_quote("#if 0")
310 typedef HANDLE HMONITOR;
311 cpp_quote("#endif")
313 enum {
314 SECURELOCK_NOCHANGE = -1,
315 SECURELOCK_SET_UNSECURE = 0,
316 SECURELOCK_SET_MIXED = 1,
317 SECURELOCK_SET_SECUREUNKNOWNBIT = 2,
318 SECURELOCK_SET_SECURE40BIT = 3,
319 SECURELOCK_SET_SECURE56BIT = 4,
320 SECURELOCK_SET_FORTEZZA = 5,
321 SECURELOCK_SET_SECURE128BIT = 6,
322 SECURELOCK_FIRSTSUGGEST = 7,
323 SECURELOCK_SUGGEST_UNSECURE = SECURELOCK_FIRSTSUGGEST,
324 SECURELOCK_SUGGEST_MIXED = 8,
325 SECURELOCK_SUGGEST_SECUREUNKNOWNBIT = 9,
326 SECURELOCK_SUGGEST_SECURE40BIT = 10,
327 SECURELOCK_SUGGEST_SECURE56BIT = 11,
328 SECURELOCK_SUGGEST_FORTEZZA = 12,
329 SECURELOCK_SUGGEST_SECURE128BIT = 13,
333 typedef struct {
334 HWND _hwnd;
335 ITravelLog *_ptl;
336 IHlinkFrame *_phlf;
337 IWebBrowser2 *_pautoWB2;
338 IExpDispSupport *_pautoEDS;
339 IShellService *_pautoSS;
340 int _eSecureLockIcon;
341 DWORD _fCreatingViewWindow;
342 UINT _uActivateState;
344 LPCITEMIDLIST _pidlNewShellView;
346 IOleCommandTarget *_pctView;
348 LPITEMIDLIST _pidlCur;
349 IShellView *_psv;
350 IShellFolder *_psf;
351 HWND _hwndView;
352 LPWSTR _pszTitleCur;
354 LPITEMIDLIST _pidlPending;
355 IShellView *_psvPending;
356 IShellFolder *_psfPending;
357 HWND _hwndViewPending;
358 LPWSTR _pszTitlePending;
360 BOOL _fIsViewMSHTML;
361 BOOL _fPrivacyImpacted;
363 } BASEBROWSERDATA, *LPBASEBROWSERDATA;
364 typedef const BASEBROWSERDATA *LPCBASEBROWSERDATA;
366 cpp_quote("#define VIEW_PRIORITY_RESTRICTED 0x00000070")
367 cpp_quote("#define VIEW_PRIORITY_CACHEHIT 0x00000050")
368 cpp_quote("#define VIEW_PRIORITY_STALECACHEHIT 0x00000045")
369 cpp_quote("#define VIEW_PRIORITY_USEASDEFAULT 0x00000043")
370 cpp_quote("#define VIEW_PRIORITY_SHELLEXT 0x00000040")
371 cpp_quote("#define VIEW_PRIORITY_CACHEMISS 0x00000030")
372 cpp_quote("#define VIEW_PRIORITY_INHERIT 0x00000020")
373 cpp_quote("#define VIEW_PRIORITY_SHELLEXT_ASBACKUP 0x0015")
374 cpp_quote("#define VIEW_PRIORITY_DESPERATE 0x00000010")
375 cpp_quote("#define VIEW_PRIORITY_NONE 0x00000000")
377 typedef struct tagFolderSetData {
378 FOLDERSETTINGS _fs;
379 SHELLVIEWID _vidRestore;
380 DWORD _dwViewPriority;
381 } FOLDERSETDATA, *LPFOLDERSETDATA;
383 typedef struct SToolbarItem {
384 IDockingWindow *ptbar;
385 BORDERWIDTHS rcBorderTool;
386 LPWSTR pwszItem;
387 BOOL fShow;
388 HMONITOR hMon;
389 } TOOLBARITEM, *LPTOOLBARITEM;
391 cpp_quote("#define ITB_VIEW ((UINT)-1)")
394 local,
395 object,
396 uuid(68BD21CC-438B-11d2-A560-00A0C92DBFE8)
398 interface IBrowserService2 : IBrowserService
400 LRESULT WndProcBS(
401 [in] HWND hwnd,
402 [in] UINT uMsg,
403 [in, out] WPARAM wParam,
404 [in, out] LPARAM lParam);
406 HRESULT SetAsDefFolderSettings();
408 HRESULT GetViewRect(
409 [in, out] RECT *prc);
411 HRESULT OnSize(
412 [in] WPARAM wParam);
414 HRESULT OnCreate(
415 [in] struct tagCREATESTRUCTW *pcs);
417 LRESULT OnCommand(
418 [in] WPARAM wParam,
419 [in] LPARAM lParam);
421 HRESULT OnDestroy();
423 LRESULT OnNotify(
424 [in, out] struct tagNMHDR *pnm);
426 HRESULT OnSetFocus();
428 HRESULT OnFrameWindowActivateBS(
429 [in] BOOL fActive);
431 HRESULT ReleaseShellView();
433 HRESULT ActivatePendingView();
435 HRESULT CreateViewWindow(
436 [in] IShellView *psvNew,
437 [in] IShellView *psvOld,
438 [out] LPRECT prcView,
439 [out] HWND *phwnd);
441 HRESULT CreateBrowserPropSheetExt(
442 [in] REFIID riid,
443 [out] void **ppv);
445 HRESULT GetViewWindow(
446 [out] HWND *phwndView);
448 HRESULT GetBaseBrowserData(
449 [in, out] LPCBASEBROWSERDATA *pbbd);
451 LPBASEBROWSERDATA PutBaseBrowserData();
453 HRESULT InitializeTravelLog(
454 [in] ITravelLog *ptl,
455 [in] DWORD dw);
457 HRESULT SetTopBrowser();
459 HRESULT Offline(
460 [in] int iCmd);
462 HRESULT AllowViewResize(
463 [in] BOOL f);
465 HRESULT SetActivateState(
466 [in] UINT u);
468 HRESULT UpdateSecureLockIcon(
469 [in] int eSecureLock);
471 HRESULT InitializeDownloadManager();
473 HRESULT InitializeTransitionSite();
475 HRESULT _Initialize(
476 [in] HWND hwnd,
477 [in] IUnknown *pauto);
479 HRESULT _CancelPendingNavigationAsync();
481 HRESULT _CancelPendingView();
483 HRESULT _MaySaveChanges();
485 HRESULT _PauseOrResumeView(
486 [in] BOOL fPaused);
488 HRESULT _DisableModeless();
490 HRESULT _NavigateToPidl(
491 [in] LPCITEMIDLIST pidl,
492 [in] DWORD grfHLNF,
493 [in] DWORD dwFlags);
495 HRESULT _TryShell2Rename(
496 [in] IShellView *psv,
497 [in] LPCITEMIDLIST pidlNew);
499 HRESULT _SwitchActivationNow();
501 HRESULT _ExecChildren(
502 [in] IUnknown *punkBar,
503 [in] BOOL fBroadcast,
504 [in] const GUID *pguidCmdGroup,
505 [in] DWORD nCmdID,
506 [in] DWORD nCmdexecopt,
507 [in] VARIANTARG *pvarargIn,
508 [in, out] VARIANTARG *pvarargOut);
510 HRESULT _SendChildren(
511 [in] HWND hwndBar,
512 [in] BOOL fBroadcast,
513 [in] UINT uMsg,
514 [in, out] WPARAM wParam,
515 [in, out] LPARAM lParam);
517 HRESULT GetFolderSetData(
518 [in, out] struct tagFolderSetData *pfsd);
520 HRESULT _OnFocusChange(
521 [in] UINT itb);
523 HRESULT v_ShowHideChildWindows(
524 [in] BOOL fChildOnly);
526 UINT _get_itbLastFocus();
528 HRESULT _put_itbLastFocus(
529 [in] UINT itbLastFocus);
531 HRESULT _UIActivateView(
532 [in] UINT uState);
534 HRESULT _GetViewBorderRect(
535 [in, out] RECT* prc);
537 HRESULT _UpdateViewRectSize();
539 HRESULT _ResizeNextBorder(
540 [in] UINT itb);
542 HRESULT _ResizeView();
544 HRESULT _GetEffectiveClientArea(
545 [in, out] LPRECT lprectBorder,
546 [in] HMONITOR hmon);
548 IStream* v_GetViewStream(
549 [in] LPCITEMIDLIST pidl,
550 [in] DWORD grfMode,
551 [in] LPCWSTR pwszName);
553 LRESULT ForwardViewMsg(
554 [in] UINT uMsg,
555 [in] WPARAM wParam,
556 [in] LPARAM lParam);
558 HRESULT SetAcceleratorMenu(
559 [in] HACCEL hacc);
561 int _GetToolbarCount();
563 LPTOOLBARITEM _GetToolbarItem(
564 [in] int itb);
566 HRESULT _SaveToolbars(
567 [in] IStream *pstm);
569 HRESULT _LoadToolbars(
570 [in] IStream *pstm);
572 HRESULT _CloseAndReleaseToolbars(
573 [in] BOOL fClose);
575 HRESULT v_MayGetNextToolbarFocus(
576 [in] LPMSG lpMsg,
577 [in] UINT itbNext,
578 [in] int citb,
579 [out] LPTOOLBARITEM *pptbi,
580 [out] HWND *phwnd);
582 HRESULT _ResizeNextBorderHelper(
583 [in] UINT itb,
584 [in] BOOL bUseHmonitor);
586 UINT _FindTBar(
587 [in] IUnknown *punkSrc);
589 HRESULT _SetFocus(
590 [in] LPTOOLBARITEM ptbi,
591 [in] HWND hwnd,
592 [in] LPMSG lpMsg);
594 HRESULT v_MayTranslateAccelerator(
595 [in] MSG* pmsg);
597 HRESULT _GetBorderDWHelper(
598 [in] IUnknown *punkSrc,
599 [in] LPRECT lprectBorder,
600 [in] BOOL bUseHmonitor);
602 HRESULT v_CheckZoneCrossing(
603 [in, out] LPCITEMIDLIST pidl);