// DisplayXMLFiles.idl : IDL source for DisplayXMLFiles.dll
//

// This file will be processed by the MIDL tool to
// produce the type library (DisplayXMLFiles.tlb) and marshalling code.

import "oaidl.idl";
import "ocidl.idl";
	[
		object,
		uuid(47E6B958-C17A-4024-9BE1-68DCC92DD46E),
		dual,
		helpstring("IWinMergeScript Interface"),
		pointer_default(unique)
	]
	interface IWinMergeScript : IDispatch
	{
		[propget, id(1), helpstring("property PluginEvent")] HRESULT PluginEvent([out, retval] BSTR *pVal);
		[propget, id(2), helpstring("property PluginDescription")] HRESULT PluginDescription([out, retval] BSTR *pVal);
		[propget, id(3), helpstring("property PluginFileFilters")] HRESULT PluginFileFilters([out, retval] BSTR *pVal);
		[propget, id(4), helpstring("property PluginIsAutomatic")] HRESULT PluginIsAutomatic([out, retval] VARIANT_BOOL *pVal);
		[id(5), helpstring("method UnpackBufferA")] HRESULT UnpackBufferA([in] SAFEARRAY(unsigned char) * pBuffer, [in] INT * pSize, [in] VARIANT_BOOL * pbChanged, [in] INT * pSubcode, [out, retval] VARIANT_BOOL * pbSuccess);
		[id(6), helpstring("method PackBufferA")] HRESULT PackBufferA([in] SAFEARRAY(unsigned char) * pBuffer, [in] INT * pSize, [in] VARIANT_BOOL * pbChanged, [in] INT subcode, [out, retval] VARIANT_BOOL * pbSuccess);
		[id(7), helpstring("method UnpackFile")] HRESULT UnpackFile([in] BSTR fileSrc, [in] BSTR fileDst, VARIANT_BOOL * pbChanged, INT * pSubcode, [out, retval] VARIANT_BOOL * pbSuccess);
		[id(8), helpstring("method PackFile")] HRESULT PackFile([in] BSTR fileSrc, [in] BSTR fileDst, VARIANT_BOOL * pbChanged, INT pSubcode, [out, retval] VARIANT_BOOL * pbSuccess);
		[id(9), helpstring("method ShowSettingsDialog")] HRESULT ShowSettingsDialog([out, retval] VARIANT_BOOL * pbHandled);
	};

[
	uuid(73CA3032-1401-40BB-A73D-F719CD135EB2),
	version(1.0),
	helpstring("DisplayXMLFiles 1.0 Type Library")
]
library DisplayXMLFilesLib
{
	importlib("stdole32.tlb");
	importlib("stdole2.tlb");

	[
		uuid(E408AD39-EC2E-4615-B474-F98FDDF2ED93),
		helpstring("WinMergeScript Class")
	]
	coclass WinMergeScript
	{
		[default] interface IWinMergeScript;
	};
};
