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 tagDOCHOSTUIDBLCLK
31 DOCHOSTUIDBLCLK_DEFAULT
= 0,
32 DOCHOSTUIDBLCLK_SHOWPROPERTIES
= 1,
33 DOCHOSTUIDBLCLK_SHOWCODE
= 2
36 typedef enum tagDOCHOSTUIFLAG
38 DOCHOSTUIFLAG_DIALOG
= 0x00000001,
39 DOCHOSTUIFLAG_DISABLE_HELP_MENU
= 0x00000002,
40 DOCHOSTUIFLAG_NO3DBORDER
= 0x00000004,
41 DOCHOSTUIFLAG_SCROLL_NO
= 0x00000008,
42 DOCHOSTUIFLAG_DISABLE_SCRIPT_INACTIVE
= 0x00000010,
43 DOCHOSTUIFLAG_OPENNEWWIN
= 0x00000020,
44 DOCHOSTUIFLAG_DISABLE_OFFSCREEN
= 0x00000040,
45 DOCHOSTUIFLAG_FLAT_SCROLLBAR
= 0x00000080,
46 DOCHOSTUIFLAG_DIV_BLOCKDEFAULT
= 0x00000100,
47 DOCHOSTUIFLAG_ACTIVATE_CLIENTHIT_ONLY
= 0x00000200,
48 DOCHOSTUIFLAG_OVERRIDEBEHAVIORFACTORY
= 0x00000400,
49 DOCHOSTUIFLAG_CODEPAGELINKEDFONTS
= 0x00000800,
50 DOCHOSTUIFLAG_URL_ENCODING_DISABLE_UTF8
= 0x00001000,
51 DOCHOSTUIFLAG_URL_ENCODING_ENABLE_UTF8
= 0x00002000,
52 DOCHOSTUIFLAG_ENABLE_FORMS_AUTOCOMPLETE
= 0x00004000,
53 DOCHOSTUIFLAG_ENABLE_INPLACE_NAVIGATION
= 0x00010000,
54 DOCHOSTUIFLAG_IME_ENABLE_RECONVERSION
= 0x00020000,
55 DOCHOSTUIFLAG_THEME
= 0x00040000,
56 DOCHOSTUIFLAG_NOTHEME
= 0x00080000,
57 DOCHOSTUIFLAG_NOPICS
= 0x00100000,
58 DOCHOSTUIFLAG_NO3DOUTERBORDER
= 0x00200000,
59 DOCHOSTUIFLAG_DISABLE_EDIT_NS_FIXUP
= 0x00400000,
60 DOCHOSTUIFLAG_LOCAL_MACHINE_ACCESS_CHECK
= 0x00800000,
61 DOCHOSTUIFLAG_DISABLE_UNTRUSTEDPROTOCOL
= 0x01000000
66 uuid(BD3F23C0
-D43E
-11CF
-893B
-00AA00BDCE1A
),
67 pointer_default(unique),
70 interface IDocHostUIHandler
: IUnknown
72 typedef struct _DOCHOSTUIINFO
81 HRESULT ShowContextMenu
(
84 [in] IUnknown
*pcmdtReserved
,
85 [in] IDispatch
*pdispReserved
);
87 HRESULT GetHostInfo
([in, out] DOCHOSTUIINFO
*pInfo
);
91 [in] IOleInPlaceActiveObject
*pActiveObject
,
92 [in] IOleCommandTarget
*pCommandTarget
,
93 [in] IOleInPlaceFrame
*pFrame
,
94 [in] IOleInPlaceUIWindow
*pDoc
);
100 HRESULT EnableModeless
([in] BOOL fEnable
);
102 HRESULT OnDocWindowActivate
([in] BOOL fActivate
);
104 HRESULT OnFrameWindowActivate
([in] BOOL fActivate
);
106 HRESULT ResizeBorder
(
107 [in] LPCRECT prcBorder
,
108 [in] IOleInPlaceUIWindow
*pUIWindow
,
109 [in] BOOL fRameWindow
);
111 HRESULT TranslateAccelerator
(
113 [in] const GUID
*pguidCmdGroup
,
116 HRESULT GetOptionKeyPath
(
117 [out] LPOLESTR
*pchKey
,
120 HRESULT GetDropTarget
(
121 [in] IDropTarget
*pDropTarget
,
122 [out] IDropTarget
**ppDropTarget
);
124 HRESULT GetExternal
([out] IDispatch
**ppDispatch
);
126 HRESULT TranslateUrl
(
127 [in] DWORD dwTranslate
,
128 [in] OLECHAR
*pchURLIn
,
129 [out] OLECHAR
**ppchURLOut
);
131 HRESULT FilterDataObject
(
132 [in] IDataObject
*pDO
,
133 [out] IDataObject
**ppDORet
);
138 uuid(3050F6D0
-98b5
-11CF
-BB82
-00AA00BDCE0B
),
139 pointer_default(unique),
142 interface IDocHostUIHandler2
: IDocHostUIHandler
144 HRESULT GetOverrideKeyPath
(
145 [out] LPOLESTR
*pchKey
,
149 cpp_quote
("typedef HRESULT WINAPI SHOWHTMLDIALOGFN(HWND,IMoniker*,VARIANT*,WCHAR*,VARIANT*);");
150 cpp_quote
("typedef HRESULT WINAPI SHOWHTMLDIALOGEXFN(HWND,IMoniker*,DWORD,VARIANT*,WCHAR*,VARIANT*);");
151 cpp_quote
("typedef HRESULT WINAPI SHOWMODELESSHTMLDIALOGFN(HWND,IMoniker*,VARIANT*,VARIANT*,IHTMLWindow2**);");
153 cpp_quote
("EXTERN_C HRESULT WINAPI ShowHTMLDialog(HWND,IMoniker*,VARIANT*,WCHAR*,VARIANT*);");
154 cpp_quote
("EXTERN_C HRESULT WINAPI ShowHTMLDialogEx(HWND,IMoniker*,DWORD,VARIANT*,WCHAR*,VARIANT*);");
155 cpp_quote
("EXTERN_C HRESULT WINAPI ShowModelessHTMLDialog(HWND,IMoniker*,VARIANT*,VARIANT*,IHTMLWindow2**);");
156 cpp_quote
("EXTERN_C HRESULT WINAPI RunHTMLApplication(HINSTANCE,HINSTANCE,LPSTR,int);");
157 cpp_quote
("EXTERN_C HRESULT WINAPI CreateHTMLPropertyPage(IMoniker*,IPropertyPage**);");