#include <olectl.h>
// DfrgUI.idl : IDL source for DfrgUI.dll
//

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

//		original:
//		[propput, id(DISPID_ENABLED)] HRESULT Enabled([in]VARIANT_BOOL Enabled);
//		[propget, id(DISPID_ENABLED)] HRESULT Enabled([out, retval]VARIANT_BOOL* pEnabled);
//		generated by wizard when I added them:
//		[propput, id(9), helpstring("property Enabled")] HRESULT Enabled([in] BOOL newVal);
//		[propget, id(9), helpstring("property Enabled")] HRESULT Enabled([out, retval] BOOL *pVal);



import "oaidl.idl";
import "ocidl.idl";

	

	[
		object,
		uuid(202D3AEE-2F0E-11D1-A1F6-0080C88593A5),
		dual,
		helpstring("IDfrgCtl Interface"),
		pointer_default(unique)
	]
	interface IDfrgCtl : IDispatch
	{
        [propput, id(DISPID_BORDERSTYLE)] HRESULT BorderStyle([in]long nBorderStyle);
		[propget, id(DISPID_BORDERSTYLE)] HRESULT BorderStyle([out, retval]long* pnBorderStyle);
        [propput, id(DISPID_APPEARANCE)] HRESULT Appearance([in]long nAppearance);
		[propget, id(DISPID_APPEARANCE)] HRESULT Appearance([out, retval]long* pnAppearance);
		[propput, id(DISPID_ENABLED)] HRESULT Enabled([in] BOOL newVal);
		[propget, id(DISPID_ENABLED)] HRESULT Enabled([out, retval] BOOL *pVal);
        [propput, id(DISPID_FILLCOLOR)] HRESULT FillColor([in]OLE_COLOR clr);
		[propget, id(DISPID_FILLCOLOR)] HRESULT FillColor([out, retval]OLE_COLOR* pclr);
		[propget, id(1), helpstring("property Command")] HRESULT Command([out, retval] short *pVal);
		[propput, id(1), helpstring("property Command")] HRESULT Command([in] short newVal);
		[propget, id(2), helpstring("property EngineState")] HRESULT EngineState([out, retval] short *pVal);
		[propget, id(3), helpstring("property ReportStatus")] HRESULT ReportStatus([out, retval] BOOL *pVal);
		[propget, id(4), helpstring("property IsEnginePaused")] HRESULT IsEnginePaused([out, retval] BOOL *pVal);
		[propget, id(5), helpstring("property IsEngineRunning")] HRESULT IsEngineRunning([out, retval] BOOL *pVal);
		[propget, id(6), helpstring("property IsDefragInProcess")] HRESULT IsDefragInProcess([out, retval] BOOL *pVal);
		[propget, id(7), helpstring("property IsVolListLocked")] HRESULT IsVolListLocked([out, retval] BOOL *pVal);
		[propget, id(8), helpstring("property IsOkToRun")] HRESULT IsOkToRun([out, retval] BOOL *pVal);
	};
	[
		object,
		uuid(8B43CF5D-56ED-11D1-8857-0060975EC077),
		dual,
		helpstring("IGraphicsWindow Interface"),
		pointer_default(unique)
	]
	interface IGraphicsWindow : IDispatch
	{
	};

	[
		object,
		uuid(57BC50BF-780B-11d1-8C44-0060083E866C),
		helpstring("Dfrg Control Events"),
		pointer_default(unique)
	]
	interface IDfrgEvents : IUnknown
	{
		[id(1), helpstring("method StatusChanged")] HRESULT StatusChanged( [in] BSTR bszStatus );
		[id(2), helpstring("method IsOKToRun")] HRESULT IsOKToRun( [in] BOOL bOK );
	};

[
	uuid(202D3AE0-2F0E-11D1-A1F6-0080C88593A5),
	version(1.0),
	helpstring("DfrgUI 1.0 Type Library")
]
library DFRGUILib
{
	importlib("stdole2.tlb");

	[
		uuid(202D3AEF-2F0E-11D1-A1F6-0080C88593A5),
		helpstring("DfrgCtl Class")
	]
	coclass DfrgCtl
	{
		[default] interface IDfrgCtl;
		[default,source] interface IDfrgEvents;
	};
	[
		uuid(8B43CF5E-56ED-11D1-8857-0060975EC077),
		helpstring("GraphicsWindow Class")
	]
	coclass GraphicsWindow
	{
		[default] interface IGraphicsWindow;
	};
};
