// Borland C++ Builder
// Copyright (c) 1995, 2002 by Borland Software Corporation
// All rights reserved

// (DO NOT EDIT: machine generated header) 'RControl.pas' rev: 6.00

#ifndef RControlHPP
#define RControlHPP

#pragma delphiheader begin
#pragma option push -w-
#pragma option push -Vx
#include <Classes.hpp>	// Pascal unit
#include <SysInit.hpp>	// Pascal unit
#include <System.hpp>	// Pascal unit

//-- user supplied -----------------------------------------------------------

namespace Rcontrol
{
//-- type declarations -------------------------------------------------------
#pragma option push -b-
enum TRCButtonState { rc_On, rc_Off, rc_Repeat };
#pragma option pop

#pragma option push -b-
enum TRCButtonId { rc_None, rc_A, rc_B, rc_Power, rc_TV, rc_DVD, rc_Web, rc_Book, rc_Hand, rc_MouseUp, rc_MouseDown, rc_MouseLeft, rc_MouseRight, rc_MouseLeftUp, rc_MouseRightUp, rc_MouseLeftDown, rc_MouseRightDown, rc_MouseLeftClick, rc_MouseRightClick, rc_LButtonDown, rc_LButtonUp, rc_RButtonDown, rc_RButtonUp, rc_LButtonDoubleClick, rc_RButtonDoubleClick, rc_VolumeDown, rc_VolumeUp, rc_Mute, rc_ChannelDown, rc_ChannelUp, rc_0, rc_1, rc_2, rc_3, rc_4, rc_5, rc_6, rc_7, rc_8, rc_9, rc_10, rc_11, rc_Menu, rc_Check, rc_C, rc_D, rc_Up, rc_Down, rc_Left, rc_Right, rc_Bookmark, rc_Ok, rc_Resize, rc_E, rc_F, rc_Rewind, rc_Play, rc_Forward, rc_Record, rc_Stop, rc_Pause };
#pragma option pop

typedef void __fastcall (__closure *TOnReceiveRemoteEvent)(System::TObject* Sender, int DeviceId, TRCButtonId ButtonId, AnsiString ButtonName, TRCButtonState ButtonState, int ButtonRepeatCount);

class DELPHICLASS TRemoteControl;
class PASCALIMPLEMENTATION TRemoteControl : public Classes::TComponent 
{
	typedef Classes::TComponent inherited;
	
private:
	void *Impl;
	TOnReceiveRemoteEvent FOnReceive;
	bool __fastcall GetAutoShutdownATIControl(void);
	void __fastcall SetAutoShutdownATIControl(bool Value);
	bool __fastcall GetEnabled(void);
	void __fastcall SetEnabled(bool Value);
	AnsiString __fastcall GetVersion();
	void __fastcall SetVersion(AnsiString Value);
	bool __fastcall GetDeviceInitialized(void);
	
public:
	__fastcall virtual TRemoteControl(Classes::TComponent* AOwner);
	__fastcall virtual ~TRemoteControl(void);
	__property bool DeviceInitialized = {read=GetDeviceInitialized, nodefault};
	
__published:
	__property bool AutoShutdownATIControl = {read=GetAutoShutdownATIControl, write=SetAutoShutdownATIControl, nodefault};
	__property bool Enabled = {read=GetEnabled, write=SetEnabled, nodefault};
	__property AnsiString Version = {read=GetVersion, write=SetVersion};
	__property TOnReceiveRemoteEvent OnReceive = {read=FOnReceive, write=FOnReceive};
};


//-- var, const, procedure ---------------------------------------------------
#define TRemoteControlVersion "v2.4 (build 2.4.2) - December 6, 2004"
extern PACKAGE void __fastcall Register(void);

}	/* namespace Rcontrol */
using namespace Rcontrol;
#pragma option pop	// -w-
#pragma option pop	// -Vx

#pragma delphiheader end.
//-- end unit ----------------------------------------------------------------
#endif	// RControl
