winex11: Require an A8R8G8B8 format for blending with a source alpha.
[wine.git] / include / htiframe.idl
blob21a55a4270ed0fedad1fff49bd26ea458051a74e
1 /*
2 * Copyright 2006 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";
22 /*****************************************************************************
23 * ITargetNotify interface
26 object,
27 uuid(863a99a0-21bc-11d0-82b4-00a0c90c29c5),
28 pointer_default(unique)
30 interface ITargetNotify : IUnknown
32 typedef [unique] ITargetNotify *LPTARGETNOTIFY;
34 HRESULT OnCreate(
35 [in] IUnknown *pUnkDestination,
36 [in] ULONG cbCookie);
38 HRESULT OnReuse([in] IUnknown *pUnkDestination);
41 /*****************************************************************************
42 * ITargetNotify2 interface
45 object,
46 uuid(3050f6b1-98b5-11cf-bb82-00aa00bdce0b),
47 pointer_default(unique)
49 interface ITargetNotify2 : ITargetNotify
51 typedef [unique] ITargetNotify2 *LPTARGETNOTIFY2;
53 HRESULT GetOptionString([in,out] BSTR *pbstrOptions);
56 /*****************************************************************************
57 * ITargetFrame2 interface
60 object,
61 uuid(86d52e11-94a8-11d0-82af-00c04fd5ae38),
62 pointer_default(unique)
64 interface ITargetFrame2 : IUnknown
66 typedef [unique] ITargetFrame2 *LPTARGETFRAME2;
68 typedef enum {
69 FINDFRAME_NONE = 0,
70 FINDFRAME_JUSTTESTEXISTENCE = 1,
71 FINDFRAME_INTERNAL = 0x80000000
72 } FINDFRAME_FLAGS;
74 typedef enum {
75 FRAMEOPTIONS_SCROLL_YES = 0x00000001,
76 FRAMEOPTIONS_SCROLL_NO = 0x00000002,
77 FRAMEOPTIONS_SCROLL_AUTO = 0x00000004,
78 FRAMEOPTIONS_NORESIZE = 0x00000008,
79 FRAMEOPTIONS_NO3DBORDER = 0x00000010,
80 FRAMEOPTIONS_DESKTOP = 0x00000020,
81 FRAMEOPTIONS_BROWSERBAND = 0x00000040
82 } FRAMEOPTIONS_FLAGS;
84 HRESULT SetFrameName([in] LPCWSTR pszFrameName);
86 HRESULT GetFrameName([out] LPWSTR *ppszFrameName);
88 HRESULT GetParentFrame([out] IUnknown **ppunkParent);
90 HRESULT SetFrameSrc([in] LPCWSTR pszFrameSrc);
92 HRESULT GetFrameSrc([out] LPWSTR *ppszFrameSrc);
94 HRESULT GetFramesContainer([out] IOleContainer **ppContainer);
96 HRESULT SetFrameOptions([in] DWORD dwFlags);
98 HRESULT GetFrameOptions([out] DWORD *pdwFlags);
100 HRESULT SetFrameMargins(
101 [in] DWORD dwWidth,
102 [in] DWORD dwHeight);
104 HRESULT GetFrameMargins(
105 [out] DWORD *pdwWidth,
106 [out] DWORD *pdwHeight);
108 HRESULT FindFrame(
109 [in,unique] LPCWSTR pszTargetName,
110 [in] DWORD dwFlags,
111 [out] IUnknown **ppunkTargetFrame);
113 HRESULT GetTargetAlias(
114 [in,unique] LPCWSTR pszTargetName,
115 [out] LPWSTR *ppszTargetAlias);
118 /*****************************************************************************
119 * ITargetContainer interface
122 object,
123 uuid(7847ec01-2bec-11d0-82b4-00a0c90C29c5),
124 pointer_default(unique)
126 interface ITargetContainer : IUnknown
128 typedef [unique] ITargetContainer *LPTARGETCONTAINER;
130 HRESULT GetFrameUrl([out] LPWSTR *ppszFrameSrc);
132 HRESULT GetFramesContainer([out] IOleContainer **ppContainer);