2 * Copyright 2005 Jacek Caban
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
25 /*****************************************************************************
26 * IDocHostUIHandler interface
29 typedef enum tagDOCHOSTUIFLAG
31 DOCHOSTUIFLAG_DIALOG
= 0x00000001,
32 DOCHOSTUIFLAG_DISABLE_HELP_MENU
= 0x00000002,
33 DOCHOSTUIFLAG_NO3DBORDER
= 0x00000004,
34 DOCHOSTUIFLAG_SCROLL_NO
= 0x00000008,
35 DOCHOSTUIFLAG_DISABLE_SCRIPT_INACTIVE
= 0x00000010,
36 DOCHOSTUIFLAG_OPENNEWWIN
= 0x00000020,
37 DOCHOSTUIFLAG_DISABLE_OFFSCREEN
= 0x00000040,
38 DOCHOSTUIFLAG_FLAT_SCROLLBAR
= 0x00000080,
39 DOCHOSTUIFLAG_DIV_BLOCKDEFAULT
= 0x00000100,
40 DOCHOSTUIFLAG_ACTIVATE_CLIENTHIT_ONLY
= 0x00000200,
41 DOCHOSTUIFLAG_OVERRIDEBEHAVIORFACTORY
= 0x00000400,
42 DOCHOSTUIFLAG_CODEPAGELINKEDFONTS
= 0x00000800,
43 DOCHOSTUIFLAG_URL_ENCODING_DISABLE_UTF8
= 0x00001000,
44 DOCHOSTUIFLAG_URL_ENCODING_ENABLE_UTF8
= 0x00002000,
45 DOCHOSTUIFLAG_ENABLE_FORMS_AUTOCOMPLETE
= 0x00004000,
46 DOCHOSTUIFLAG_ENABLE_INPLACE_NAVIGATION
= 0x00010000,
47 DOCHOSTUIFLAG_IME_ENABLE_RECONVERSION
= 0x00020000,
48 DOCHOSTUIFLAG_THEME
= 0x00040000,
49 DOCHOSTUIFLAG_NOTHEME
= 0x00080000,
50 DOCHOSTUIFLAG_NOPICS
= 0x00100000,
51 DOCHOSTUIFLAG_NO3DOUTERBORDER
= 0x00200000,
52 DOCHOSTUIFLAG_DISABLE_EDIT_NS_FIXUP
= 0x00400000,
53 DOCHOSTUIFLAG_LOCAL_MACHINE_ACCESS_CHECK
= 0x00800000,
54 DOCHOSTUIFLAG_DISABLE_UNTRUSTEDPROTOCOL
= 0x01000000
59 uuid(BD3F23C0
-D43E
-11CF
-893B
-00AA00BDCE1A
),
60 pointer_default(unique),
63 interface IDocHostUIHandler
: IUnknown
65 typedef struct _DOCHOSTUIINFO
74 HRESULT ShowContextMenu
(
77 [in] IUnknown
*pcmdtReserved
,
78 [in] IDispatch
*pdispReserved
);
80 HRESULT GetHostInfo
([in, out] DOCHOSTUIINFO
*pInfo
);
84 [in] IOleInPlaceActiveObject
*pActiveObject
,
85 [in] IOleCommandTarget
*pCommandTarget
,
86 [in] IOleInPlaceFrame
*pFrame
,
87 [in] IOleInPlaceUIWindow
*pDoc
);
93 HRESULT EnableModeless
([in] BOOL fEnable
);
95 HRESULT OnDocWindowActivate
([in] BOOL fActivate
);
97 HRESULT OnFrameWindowActivate
([in] BOOL fActivate
);
100 [in] LPCRECT prcBorder
,
101 [in] IOleInPlaceUIWindow
*pUIWindow
,
102 [in] BOOL fRameWindow
);
104 HRESULT TranslateAccelerator
(
106 [in] const GUID
*pguidCmdGroup
,
109 HRESULT GetOptionKeyPath
(
110 [out] LPOLESTR
*pchKey
,
113 HRESULT GetDropTarget
(
114 [in] IDropTarget
*pDropTarget
,
115 [out] IDropTarget
**ppDropTarget
);
117 HRESULT GetExternal
([out] IDispatch
**ppDispatch
);
119 HRESULT TranslateUrl
(
120 [in] DWORD dwTranslate
,
121 [in] OLECHAR
*pchURLIn
,
122 [out] OLECHAR
**ppchURLOut
);
124 HRESULT FilterDataObject
(
125 [in] IDataObject
*pDO
,
126 [out] IDataObject
**ppDORet
);
131 uuid(3050F6D0
-98b5
-11CF
-BB82
-00AA00BDCE0B
),
132 pointer_default(unique),
135 interface IDocHostUIHandler2
: IDocHostUIHandler
137 HRESULT GetOverrideKeyPath
(
138 [out] LPOLESTR
*pchKey
,
142 cpp_quote
("typedef HRESULT WINAPI SHOWHTMLDIALOGFN(HWND,IMoniker*,VARIANT*,WCHAR*,VARIANT*);");
143 cpp_quote
("typedef HRESULT WINAPI SHOWHTMLDIALOGEXFN(HWND,IMoniker*,DWORD,VARIANT*,WCHAR*,VARIANT*);");
144 cpp_quote
("typedef HRESULT WINAPI SHOWMODELESSHTMLDIALOGFN(HWND,IMoniker*,VARIANT*,VARIANT*,IHTMLWindow2**);");
146 cpp_quote
("EXTERN_C HRESULT WINAPI ShowHTMLDialog(HWND,IMoniker*,VARIANT*,WCHAR*,VARIANT*);");
147 cpp_quote
("EXTERN_C HRESULT WINAPI ShowHTMLDialogEx(HWND,IMoniker*,DWORD,VARIANT*,WCHAR,VARIANT*);");
148 cpp_quote
("EXTERN_C HRESULT WINAPI ShowModelessHTMLDialog(HWND,IMoniker*,VARIANT,IHTMLWindow2**);");
149 cpp_quote
("EXTERN_C HRESULT WINAPI RunHTMLApplication(HINSTANCE,HINSTANCE,LPSTR,int);");
150 cpp_quote
("EXTERN_C HRESULT WINAPI CreateHTMLPropertyPage(IMoniker*,IPropertyPage**);");