2002-03-10 00:29:33 +01:00
|
|
|
/*
|
1999-03-25 11:57:12 +01:00
|
|
|
* IShellBrowser
|
2002-03-10 00:29:33 +01:00
|
|
|
*
|
|
|
|
* Copyright (C) 1999 Juergen Schmied
|
|
|
|
*
|
|
|
|
* This library is free software; you can redistribute it and/or
|
|
|
|
* modify it under the terms of the GNU Lesser General Public
|
|
|
|
* License as published by the Free Software Foundation; either
|
|
|
|
* version 2.1 of the License, or (at your option) any later version.
|
|
|
|
*
|
|
|
|
* This library is distributed in the hope that it will be useful,
|
|
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
|
|
* Lesser General Public License for more details.
|
|
|
|
*
|
|
|
|
* You should have received a copy of the GNU Lesser General Public
|
|
|
|
* License along with this library; if not, write to the Free Software
|
|
|
|
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
1999-03-25 11:57:12 +01:00
|
|
|
*/
|
|
|
|
|
1999-06-12 20:36:54 +02:00
|
|
|
#ifndef __WINE_WINE_OBJ_SHELLBROWSER_H
|
|
|
|
#define __WINE_WINE_OBJ_SHELLBROWSER_H
|
1999-03-25 11:57:12 +01:00
|
|
|
|
1999-06-12 12:53:06 +02:00
|
|
|
#ifdef __cplusplus
|
|
|
|
extern "C" {
|
|
|
|
#endif /* defined(__cplusplus) */
|
|
|
|
|
1999-03-25 11:57:12 +01:00
|
|
|
/* it's ok commented out, see obj_shellview.h
|
|
|
|
typedef struct IShellBrowser IShellBrowser, *LPSHELLBROWSER;
|
|
|
|
*/
|
|
|
|
|
|
|
|
#define SID_SShellBrowser IID_IShellBrowser
|
|
|
|
|
2000-11-01 02:50:21 +01:00
|
|
|
DEFINE_GUID(SID_STopLevelBrowser, 0x4C96BE40L, 0x915C, 0x11CF, 0x99, 0xD3, 0x00, 0xAA, 0x00, 0x4A, 0xE8, 0x37);
|
|
|
|
|
1999-03-25 11:57:12 +01:00
|
|
|
/* targets for GetWindow/SendControlMsg */
|
|
|
|
#define FCW_STATUS 0x0001
|
|
|
|
#define FCW_TOOLBAR 0x0002
|
|
|
|
#define FCW_TREE 0x0003
|
|
|
|
#define FCW_INTERNETBAR 0x0006
|
|
|
|
#define FCW_PROGRESS 0x0008
|
|
|
|
|
|
|
|
/* wFlags for BrowseObject*/
|
|
|
|
#define SBSP_DEFBROWSER 0x0000
|
|
|
|
#define SBSP_SAMEBROWSER 0x0001
|
|
|
|
#define SBSP_NEWBROWSER 0x0002
|
|
|
|
|
|
|
|
#define SBSP_DEFMODE 0x0000
|
|
|
|
#define SBSP_OPENMODE 0x0010
|
|
|
|
#define SBSP_EXPLOREMODE 0x0020
|
|
|
|
|
|
|
|
#define SBSP_ABSOLUTE 0x0000
|
|
|
|
#define SBSP_RELATIVE 0x1000
|
|
|
|
#define SBSP_PARENT 0x2000
|
|
|
|
#define SBSP_NAVIGATEBACK 0x4000
|
|
|
|
#define SBSP_NAVIGATEFORWARD 0x8000
|
|
|
|
|
|
|
|
#define SBSP_ALLOW_AUTONAVIGATE 0x10000
|
|
|
|
|
|
|
|
#define SBSP_INITIATEDBYHLINKFRAME 0x80000000
|
|
|
|
#define SBSP_REDIRECT 0x40000000
|
|
|
|
#define SBSP_WRITENOHISTORY 0x08000000
|
|
|
|
|
|
|
|
/* uFlage for SetToolbarItems */
|
|
|
|
#define FCT_MERGE 0x0001
|
|
|
|
#define FCT_CONFIGABLE 0x0002
|
|
|
|
#define FCT_ADDTOEND 0x0004
|
|
|
|
|
2003-04-10 02:19:24 +02:00
|
|
|
#define INTERFACE IShellBrowser
|
1999-03-25 11:57:12 +01:00
|
|
|
#define IShellBrowser_METHODS \
|
2003-04-10 02:19:24 +02:00
|
|
|
STDMETHOD(InsertMenusSB)(THIS_ HMENU hmenuShared, LPOLEMENUGROUPWIDTHS lpMenuWidths) PURE; \
|
|
|
|
STDMETHOD(SetMenuSB)(THIS_ HMENU hmenuShared, HOLEMENU holemenuReserved, HWND hwndActiveObject) PURE; \
|
|
|
|
STDMETHOD(RemoveMenusSB)(THIS_ HMENU hmenuShared) PURE; \
|
|
|
|
STDMETHOD(SetStatusTextSB)(THIS_ LPCOLESTR lpszStatusText) PURE; \
|
|
|
|
STDMETHOD(EnableModelessSB)(THIS_ BOOL fEnable) PURE; \
|
|
|
|
STDMETHOD(TranslateAcceleratorSB)(THIS_ LPMSG lpmsg, WORD wID) PURE; \
|
|
|
|
STDMETHOD(BrowseObject)(THIS_ LPCITEMIDLIST pidl, UINT wFlags) PURE; \
|
|
|
|
STDMETHOD(GetViewStateStream)(THIS_ DWORD grfMode, LPSTREAM * ppStrm) PURE; \
|
|
|
|
STDMETHOD(GetControlWindow)(THIS_ UINT id, HWND * lphwnd) PURE; \
|
|
|
|
STDMETHOD(SendControlMsg)(THIS_ UINT id, UINT uMsg, WPARAM wParam, LPARAM lParam, LRESULT * pret) PURE; \
|
|
|
|
STDMETHOD(QueryActiveShellView)(THIS_ IShellView ** IShellView) PURE; \
|
|
|
|
STDMETHOD(OnViewWindowActive)(THIS_ IShellView * IShellView) PURE; \
|
|
|
|
STDMETHOD(SetToolbarItems)(THIS_ LPTBBUTTON lpButtons, UINT nButtons, UINT uFlags) PURE;
|
1999-03-25 11:57:12 +01:00
|
|
|
#define IShellBrowser_IMETHODS \
|
|
|
|
IOleWindow_IMETHODS \
|
|
|
|
IShellBrowser_METHODS
|
|
|
|
ICOM_DEFINE(IShellBrowser,IOleWindow)
|
2003-04-10 02:19:24 +02:00
|
|
|
#undef INTERFACE
|
1999-03-25 11:57:12 +01:00
|
|
|
|
1999-10-23 22:09:05 +02:00
|
|
|
/*** IUnknown methods ***/
|
1999-03-25 11:57:12 +01:00
|
|
|
#define IShellBrowser_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b)
|
|
|
|
#define IShellBrowser_AddRef(p) ICOM_CALL(AddRef,p)
|
|
|
|
#define IShellBrowser_Release(p) ICOM_CALL(Release,p)
|
1999-10-23 22:09:05 +02:00
|
|
|
/*** IShellBrowser methods ***/
|
1999-03-25 11:57:12 +01:00
|
|
|
#define IShellBrowser_GetWindow(p,a) ICOM_CALL1(GetWindow,p,a)
|
|
|
|
#define IShellBrowser_ContextSensitiveHelp(p,a) ICOM_CALL1(ContextSensitiveHelp,p,a)
|
|
|
|
#define IShellBrowser_InsertMenusSB(p,a,b) ICOM_CALL2(InsertMenusSB,p,a,b)
|
|
|
|
#define IShellBrowser_SetMenuSB(p,a,b,c) ICOM_CALL3(SetMenuSB,p,a,b,c)
|
|
|
|
#define IShellBrowser_RemoveMenusSB(p,a) ICOM_CALL1(RemoveMenusSB,p,a)
|
|
|
|
#define IShellBrowser_SetStatusTextSB(p,a) ICOM_CALL1(SetStatusTextSB,p,a)
|
|
|
|
#define IShellBrowser_EnableModelessSB(p,a) ICOM_CALL1(EnableModelessSB,p,a)
|
|
|
|
#define IShellBrowser_TranslateAcceleratorSB(p,a,b) ICOM_CALL2(TranslateAcceleratorSB,p,a,b)
|
|
|
|
#define IShellBrowser_BrowseObject(p,a,b) ICOM_CALL2(BrowseObject,p,a,b)
|
|
|
|
#define IShellBrowser_GetViewStateStream(p,a,b) ICOM_CALL2(GetViewStateStream,p,a,b)
|
|
|
|
#define IShellBrowser_GetControlWindow(p,a,b) ICOM_CALL2(GetControlWindow,p,a,b)
|
|
|
|
#define IShellBrowser_SendControlMsg(p,a,b,c,d,e) ICOM_CALL5(SendControlMsg,p,a,b,c,d,e)
|
|
|
|
#define IShellBrowser_QueryActiveShellView(p,a) ICOM_CALL1(QueryActiveShellView,p,a)
|
|
|
|
#define IShellBrowser_OnViewWindowActive(p,a) ICOM_CALL1(OnViewWindowActive,p,a)
|
|
|
|
#define IShellBrowser_SetToolbarItems(p,a,b,c) ICOM_CALL3(SetToolbarItems,p,a,b,c)
|
|
|
|
|
1999-06-12 12:53:06 +02:00
|
|
|
#ifdef __cplusplus
|
|
|
|
} /* extern "C" */
|
|
|
|
#endif /* defined(__cplusplus) */
|
1999-03-25 11:57:12 +01:00
|
|
|
|
1999-06-12 20:36:54 +02:00
|
|
|
#endif /* __WINE_WINE_OBJ_SHELLBROWSER_H */
|