blob: 97646a440acdbe15fe2567cd364894d1215a86fe [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2012 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* IBM Corporation - initial API and implementation
*******************************************************************************/
import "oaidl.idl";
import "ocidl.idl";
[
object,
uuid(201244D7-94C6-4fb0-9948-2634523A475B),
oleautomation,
nonextensible,
helpstring("IIECrossfireBHO Interface"),
pointer_default(unique)
]
interface IIECrossfireBHO : IUnknown {
};
[
object,
uuid(E4121804-5350-4DDD-BE57-9C5B2A13EA29),
oleautomation,
dual,
nonextensible,
helpstring("IBrowserContext Interface"),
pointer_default(unique)
]
interface IBrowserContext : IUnknown {
HRESULT displayMessage([in, string] OLECHAR* message);
HRESULT navigate([in, string] OLECHAR* url, [in] boolean openNewTab);
};
[
object,
uuid(031DB015-B1BE-4D39-84D2-D7F96D2ACBFE),
oleautomation,
dual,
nonextensible,
helpstring("ICrossfireServer Interface"),
pointer_default(unique)
]
interface ICrossfireServer : IDispatch {
HRESULT contextCreated([in] DWORD processId, [in] DWORD threadId, [in, string] OLECHAR* url);
HRESULT contextDestroyed([in] DWORD processId);
HRESULT contextLoaded([in] DWORD processId);
HRESULT getPort([out] unsigned int* value);
HRESULT getState([out] int* value);
HRESULT registerBrowser([in] DWORD processId, [in] IBrowserContext* browser);
HRESULT removeBrowser([in] DWORD processId);
HRESULT setCurrentContext([in] DWORD processId);
HRESULT start([in] unsigned int port, [in] unsigned int debugPort);
HRESULT stop();
};
[
object,
uuid(F48260BB-C061-4410-9CE1-4C5C7602690E),
oleautomation,
dual,
nonextensible,
helpstring("ICrossfireServerClass Interface"),
pointer_default(unique)
]
interface ICrossfireServerClass : IDispatch {
// HRESULT GetServer([in] unsigned long windowHandle, [out, retval] ICrossfireServer** _value);
HRESULT GetServer([out, retval] ICrossfireServer** _value);
HRESULT RemoveServer([in] unsigned long windowHandle);
};
[
object,
uuid(72BA7A37-6D18-439D-8A42-5F6A4F2CD3C3),
dual,
nonextensible,
helpstring("IExplorerBar Interface"),
pointer_default(unique)
]
interface IExplorerBar : IDispatch {
};
[
uuid(A8FFC284-CE2C-40B5-98D1-D3112811E9D9),
version(1.0),
helpstring("IECrossfireExtension 1.0 Type Library")
]
library IECrossfireExtensionLib
{
importlib("stdole2.tlb");
[
uuid(E8779887-5AF1-4071-B4D4-6135157F142C),
helpstring("IECrossfireBHO Class")
]
coclass IECrossfireBHO
{
[default] interface IIECrossfireBHO;
};
[
uuid(34EF57F8-9295-483E-B656-4EE154B0B3A5),
helpstring("ExplorerBar Class")
]
coclass ExplorerBar
{
[default] interface IExplorerBar;
interface IBrowserContext;
};
[
uuid(47836AF4-3E0C-4995-8029-FF931C5A43FC),
helpstring("CrossfireServer Class")
]
coclass CrossfireServer
{
[default] interface ICrossfireServer;
};
[
uuid(7C3C5D7A-AF4D-4F32-A3C9-462BFBAFDC25),
helpstring("CrossfireServerClass Class")
]
coclass CrossfireServerClass
{
[default] interface ICrossfireServerClass;
};
[
uuid(2FA65B09-5063-45FA-91F9-50EB7F4AF2C6),
helpstring("BrowserContext Class")
]
coclass BrowserContext
{
[default] interface IBrowserContext;
};
};