2 * Copyright 2006,2011 Jacek Caban for CodeWeavers
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., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
23 cpp_quote
("#include <htiframe.h>")
26 /*****************************************************************************
27 * ITargetFrame interface
31 uuid(d5f78c80
-5252-11cf
-90fa
-00aa0042106e
),
32 pointer_default(unique)
34 interface ITargetFrame
: IUnknown
36 typedef [unique] ITargetFrame
*LPTARGETFRAME
;
39 NAVIGATEFRAME_FL_RECORD
= 0x01,
40 NAVIGATEFRAME_FL_POST
= 0x02,
41 NAVIGATEFRAME_FL_NO_DOC_CACHE
= 0x04,
42 NAVIGATEFRAME_FL_NO_IMAGE_CACHE
= 0x08,
43 NAVIGATEFRAME_FL_AUTH_FAIL_CACHE_OK
= 0x10,
44 NAVIGATEFRAME_FL_SENDING_FROM_FORM
= 0x20,
45 NAVIGATEFRAME_FL_REALLY_SENDING_FROM_FORM
= 0x40
46 } NAVIGATEFRAME_FLAGS
;
48 typedef struct tagNavigateData
{
56 HRESULT SetFrameName
([in] LPCWSTR pszFrameName
);
57 HRESULT GetFrameName
([out] LPWSTR
*ppszFrameName
);
58 HRESULT GetParentFrame
([out] IUnknown
**ppunkParent
);
61 [in] LPCWSTR pszTargetName
,
62 [in] IUnknown
*ppunkContextFrame
,
64 [out] IUnknown
**ppunkTargetFrame
);
66 HRESULT SetFrameSrc
([in] LPCWSTR pszFrameSrc
);
67 HRESULT GetFrameSrc
([out] LPWSTR
*ppszFrameSrc
);
68 HRESULT GetFramesContainer
([out] IOleContainer
**ppContainer
);
69 HRESULT SetFrameOptions
([in] DWORD dwFlags
);
70 HRESULT GetFrameOptions
([out] DWORD
*pdwFlags
);
72 HRESULT SetFrameMargins
(
76 HRESULT GetFrameMargins
(
77 [out] DWORD
*pdwWidth
,
78 [out] DWORD
*pdwHeight
);
80 HRESULT RemoteNavigate
(
82 [in, size_is(cLength
)] ULONG
*pulData
);
84 HRESULT OnChildFrameActivate
([in] IUnknown
*pUnkChildFrame
);
85 HRESULT OnChildFrameDeactivate
([in] IUnknown
*pUnkChildFrame
);
88 /*****************************************************************************
89 * ITargetFramePriv interface
93 uuid(9216e421
-2bf5
-11d0
-82b4
-00a0c90c29c5
),
94 pointer_default(unique)
96 interface ITargetFramePriv
: IUnknown
98 typedef [unique] ITargetFramePriv
*LPTARGETFRAMEPRIV
;
100 HRESULT FindFrameDownwards
(
101 [in] LPCWSTR pszTargetName
,
103 [out] IUnknown
**ppunkTargetFrame
);
105 HRESULT FindFrameInContext
(
106 [in] LPCWSTR pszTargetName
,
107 [in] IUnknown
*punkContextFrame
,
109 [out] IUnknown
**ppunkTargetFrame
);
111 HRESULT OnChildFrameActivate
([in] IUnknown
*pUnkChildFrame
);
112 HRESULT OnChildFrameDeactivate
([in] IUnknown
*pUnkChildFrame
);
114 HRESULT NavigateHack
(
116 [in, unique] LPBC pbc
,
117 [in, unique] IBindStatusCallback
*pibsc
,
118 [in, unique] LPCWSTR pszTargetName
,
120 [in, unique] LPCWSTR pszLocation
);
122 HRESULT FindBrowserByIndex
(
124 [out] IUnknown
**ppunkBrowser
);
127 /*****************************************************************************
128 * ITargetFramePriv2 interface
132 uuid(b2c867e6
-69d6
-46f2
-a611
-ded9a4bd7fef
),
133 pointer_default(unique)
135 interface ITargetFramePriv2
: ITargetFramePriv
137 typedef [unique] ITargetFramePriv2
*LPTARGETFRAMEPRIV2
;
139 HRESULT AggregatedNavigation2
(
141 [in, unique] LPBC pbc
,
142 [in, unique] IBindStatusCallback
*pibsc
,
143 [in, unique] LPCWSTR pszTargetName
,
145 [in, unique] LPCWSTR pszLocation
);