|  | /* | 
|  | * Copyright 2006 Jacek Caban for CodeWeavers | 
|  | * | 
|  | * This library is free software; you can redistribute it and/or | 
|  | * modify it under the terms of the GNU Lesser General Public | 
|  | * License as published by the Free Software Foundation; either | 
|  | * version 2.1 of the License, or (at your option) any later version. | 
|  | * | 
|  | * This library is distributed in the hope that it will be useful, | 
|  | * but WITHOUT ANY WARRANTY; without even the implied warranty of | 
|  | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU | 
|  | * Lesser General Public License for more details. | 
|  | * | 
|  | * You should have received a copy of the GNU Lesser General Public | 
|  | * License along with this library; if not, write to the Free Software | 
|  | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA | 
|  | */ | 
|  |  | 
|  | import "objidl.idl"; | 
|  | import "oleidl.idl"; | 
|  |  | 
|  | /***************************************************************************** | 
|  | *    ITargetNotify interface | 
|  | */ | 
|  | [ | 
|  | object, | 
|  | uuid(863a99a0-21bc-11d0-82b4-00a0c90c29c5), | 
|  | pointer_default(unique) | 
|  | ] | 
|  | interface ITargetNotify : IUnknown | 
|  | { | 
|  | typedef [unique] ITargetNotify *LPTARGETNOTIFY; | 
|  |  | 
|  | HRESULT OnCreate( | 
|  | [in] IUnknown *pUnkDestination, | 
|  | [in] ULONG cbCookie); | 
|  |  | 
|  | HRESULT OnReuse([in] IUnknown *pUnkDestination); | 
|  | } | 
|  |  | 
|  | /***************************************************************************** | 
|  | *    ITargetNotify2 interface | 
|  | */ | 
|  | [ | 
|  | object, | 
|  | uuid(3050f6b1-98b5-11cf-bb82-00aa00bdce0b), | 
|  | pointer_default(unique) | 
|  | ] | 
|  | interface ITargetNotify2 : ITargetNotify | 
|  | { | 
|  | typedef [unique] ITargetNotify2 *LPTARGETNOTIFY2; | 
|  |  | 
|  | HRESULT GetOptionString([in,out] BSTR *pbstrOptions); | 
|  | } | 
|  |  | 
|  | /***************************************************************************** | 
|  | *    ITargetFrame2 interface | 
|  | */ | 
|  | [ | 
|  | object, | 
|  | uuid(86d52e11-94a8-11d0-82af-00c04fd5ae38), | 
|  | pointer_default(unique) | 
|  | ] | 
|  | interface ITargetFrame2 : IUnknown | 
|  | { | 
|  | typedef [unique] ITargetFrame2 *LPTARGETFRAME2; | 
|  |  | 
|  | typedef enum { | 
|  | FINDFRAME_NONE               = 0, | 
|  | FINDFRAME_JUSTTESTEXISTENCE  = 1, | 
|  | FINDFRAME_INTERNAL           = 0x80000000 | 
|  | } FINDFRAME_FLAGS; | 
|  |  | 
|  | typedef enum { | 
|  | FRAMEOPTIONS_SCROLL_YES   = 0x00000001, | 
|  | FRAMEOPTIONS_SCROLL_NO    = 0x00000002, | 
|  | FRAMEOPTIONS_SCROLL_AUTO  = 0x00000004, | 
|  | FRAMEOPTIONS_NORESIZE     = 0x00000008, | 
|  | FRAMEOPTIONS_NO3DBORDER   = 0x00000010, | 
|  | FRAMEOPTIONS_DESKTOP      = 0x00000020, | 
|  | FRAMEOPTIONS_BROWSERBAND  = 0x00000040 | 
|  | } FRAMEOPTIONS_FLAGS; | 
|  |  | 
|  | HRESULT SetFrameName([in] LPCWSTR pszFrameName); | 
|  |  | 
|  | HRESULT GetFrameName([out] LPWSTR *ppszFrameName); | 
|  |  | 
|  | HRESULT GetParentFrame([out] IUnknown **ppunkParent); | 
|  |  | 
|  | HRESULT SetFrameSrc([in] LPCWSTR pszFrameSrc); | 
|  |  | 
|  | HRESULT GetFrameSrc([out] LPWSTR *ppszFrameSrc); | 
|  |  | 
|  | HRESULT GetFramesContainer([out] IOleContainer **ppContainer); | 
|  |  | 
|  | HRESULT SetFrameOptions([in] DWORD dwFlags); | 
|  |  | 
|  | HRESULT GetFrameOptions([out] DWORD *pdwFlags); | 
|  |  | 
|  | HRESULT SetFrameMargins( | 
|  | [in] DWORD dwWidth, | 
|  | [in] DWORD dwHeight); | 
|  |  | 
|  | HRESULT GetFrameMargins( | 
|  | [out] DWORD *pdwWidth, | 
|  | [out] DWORD *pdwHeight); | 
|  |  | 
|  | HRESULT FindFrame( | 
|  | [in,unique] LPCWSTR pszTargetName, | 
|  | [in] DWORD dwFlags, | 
|  | [out] IUnknown **ppunkTargetFrame); | 
|  |  | 
|  | HRESULT GetTargetAlias( | 
|  | [in,unique] LPCWSTR pszTargetName, | 
|  | [out] LPWSTR *ppszTargetAlias); | 
|  | } | 
|  |  | 
|  | /***************************************************************************** | 
|  | *    ITargetContainer interface | 
|  | */ | 
|  | [ | 
|  | object, | 
|  | uuid(7847ec01-2bec-11d0-82b4-00a0c90C29c5), | 
|  | pointer_default(unique) | 
|  | ] | 
|  | interface ITargetContainer : IUnknown | 
|  | { | 
|  | typedef [unique] ITargetContainer *LPTARGETCONTAINER; | 
|  |  | 
|  | HRESULT GetFrameUrl([out] LPWSTR *ppszFrameSrc); | 
|  |  | 
|  | HRESULT GetFramesContainer([out] IOleContainer **ppContainer); | 
|  |  | 
|  | } |