gdi32: Recompute the background masks on every use to support PALETTEINDEX colors.
[wine/multimedia.git] / include / htiframe.idl
blob6bf0680023f7d1ba6a18992b668092dee2616200
1 /*
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
19 import "objidl.idl";
20 import "oleidl.idl";
21 import "urlmon.idl";
23 /*****************************************************************************
24 * ITargetNotify interface
27 object,
28 uuid(863a99a0-21bc-11d0-82b4-00a0c90c29c5),
29 pointer_default(unique)
31 interface ITargetNotify : IUnknown
33 typedef [unique] ITargetNotify *LPTARGETNOTIFY;
35 HRESULT OnCreate(
36 [in] IUnknown *pUnkDestination,
37 [in] ULONG cbCookie);
39 HRESULT OnReuse([in] IUnknown *pUnkDestination);
42 /*****************************************************************************
43 * ITargetNotify2 interface
46 object,
47 uuid(3050f6b1-98b5-11cf-bb82-00aa00bdce0b),
48 pointer_default(unique)
50 interface ITargetNotify2 : ITargetNotify
52 typedef [unique] ITargetNotify2 *LPTARGETNOTIFY2;
54 HRESULT GetOptionString([in,out] BSTR *pbstrOptions);
57 /*****************************************************************************
58 * ITargetFrame2 interface
61 object,
62 uuid(86d52e11-94a8-11d0-82af-00c04fd5ae38),
63 pointer_default(unique)
65 interface ITargetFrame2 : IUnknown
67 typedef [unique] ITargetFrame2 *LPTARGETFRAME2;
69 typedef enum {
70 FINDFRAME_NONE = 0,
71 FINDFRAME_JUSTTESTEXISTENCE = 1,
72 FINDFRAME_INTERNAL = 0x80000000
73 } FINDFRAME_FLAGS;
75 typedef enum {
76 FRAMEOPTIONS_SCROLL_YES = 0x00000001,
77 FRAMEOPTIONS_SCROLL_NO = 0x00000002,
78 FRAMEOPTIONS_SCROLL_AUTO = 0x00000004,
79 FRAMEOPTIONS_NORESIZE = 0x00000008,
80 FRAMEOPTIONS_NO3DBORDER = 0x00000010,
81 FRAMEOPTIONS_DESKTOP = 0x00000020,
82 FRAMEOPTIONS_BROWSERBAND = 0x00000040
83 } FRAMEOPTIONS_FLAGS;
85 HRESULT SetFrameName([in] LPCWSTR pszFrameName);
87 HRESULT GetFrameName([out] LPWSTR *ppszFrameName);
89 HRESULT GetParentFrame([out] IUnknown **ppunkParent);
91 HRESULT SetFrameSrc([in] LPCWSTR pszFrameSrc);
93 HRESULT GetFrameSrc([out] LPWSTR *ppszFrameSrc);
95 HRESULT GetFramesContainer([out] IOleContainer **ppContainer);
97 HRESULT SetFrameOptions([in] DWORD dwFlags);
99 HRESULT GetFrameOptions([out] DWORD *pdwFlags);
101 HRESULT SetFrameMargins(
102 [in] DWORD dwWidth,
103 [in] DWORD dwHeight);
105 HRESULT GetFrameMargins(
106 [out] DWORD *pdwWidth,
107 [out] DWORD *pdwHeight);
109 HRESULT FindFrame(
110 [in,unique] LPCWSTR pszTargetName,
111 [in] DWORD dwFlags,
112 [out] IUnknown **ppunkTargetFrame);
114 HRESULT GetTargetAlias(
115 [in,unique] LPCWSTR pszTargetName,
116 [out] LPWSTR *ppszTargetAlias);
119 /*****************************************************************************
120 * ITargetContainer interface
123 object,
124 uuid(7847ec01-2bec-11d0-82b4-00a0c90C29c5),
125 pointer_default(unique)
127 interface ITargetContainer : IUnknown
129 typedef [unique] ITargetContainer *LPTARGETCONTAINER;
131 HRESULT GetFrameUrl([out] LPWSTR *ppszFrameSrc);
133 HRESULT GetFramesContainer([out] IOleContainer **ppContainer);
137 /*****************************************************************************
138 * ITargetFramePriv interface
141 object,
142 uuid(9216e421-2bf5-11d0-82b4-00a0c90c29c5),
143 pointer_default(unique)
145 interface ITargetFramePriv : IUnknown
147 typedef [unique] ITargetFramePriv *LPTARGETFRAMEPRIV;
149 HRESULT FindFrameDownwards(
150 [in] LPCWSTR pszTargetName,
151 [in] DWORD dwFlags,
152 [out] IUnknown **ppunkTargetFrame);
154 HRESULT FindFrameInContext(
155 [in] LPCWSTR pszTargetName,
156 [in] IUnknown *punkContextFrame,
157 [in] DWORD dwFlags,
158 [out] IUnknown **ppunkTargetFrame);
160 HRESULT OnChildFrameActivate([in] IUnknown *pUnkChildFrame);
161 HRESULT OnChildFrameDeactivate([in] IUnknown *pUnkChildFrame);
163 HRESULT NavigateHack(
164 [in] DWORD grfHLNF,
165 [in, unique] LPBC pbc,
166 [in, unique] IBindStatusCallback *pibsc,
167 [in, unique] LPCWSTR pszTargetName,
168 [in] LPCWSTR pszUrl,
169 [in, unique] LPCWSTR pszLocation);
171 HRESULT FindBrowserByIndex(
172 [in] DWORD dwID,
173 [out] IUnknown **ppunkBrowser);
176 /*****************************************************************************
177 * ITargetFramePriv2 interface
180 object,
181 uuid(b2c867e6-69d6-46f2-a611-ded9a4bd7fef),
182 pointer_default(unique)
184 interface ITargetFramePriv2 : ITargetFramePriv
186 typedef [unique] ITargetFramePriv2 *LPTARGETFRAMEPRIV2;
188 HRESULT AggregatedNavigation2(
189 [in] DWORD grfHLNF,
190 [in, unique] LPBC pbc,
191 [in, unique] IBindStatusCallback *pibsc,
192 [in, unique] LPCWSTR pszTargetName,
193 [in] IUri *pUri,
194 [in, unique] LPCWSTR pszLocation);