// Borland C++ Builder
// Copyright (c) 1995, 1999 by Borland International
// All rights reserved

// (DO NOT EDIT: machine generated header) 'AHMTDisplayManager.pas' rev: 4.00

#ifndef AHMTDisplayManagerHPP
#define AHMTDisplayManagerHPP

#pragma delphiheader begin
#pragma option push -w-
#include <AHMSystemClass.hpp>	// Pascal unit
#include <AHMSystemConst.hpp>	// Pascal unit
#include <Dialogs.hpp>	// Pascal unit
#include <Forms.hpp>	// Pascal unit
#include <Controls.hpp>	// Pascal unit
#include <Graphics.hpp>	// Pascal unit
#include <Classes.hpp>	// Pascal unit
#include <SysUtils.hpp>	// Pascal unit
#include <Messages.hpp>	// Pascal unit
#include <Windows.hpp>	// Pascal unit
#include <SysInit.hpp>	// Pascal unit
#include <System.hpp>	// Pascal unit

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

namespace Ahmtdisplaymanager
{
//-- type declarations -------------------------------------------------------
typedef void __fastcall (__closure *TAHMRestartRequest)(System::TObject* Sender, bool &RebootNow);

typedef void __fastcall (__closure *TAHMDisplayAfterChange)(System::TObject* Sender, AnsiString NewMode
	);

class DELPHICLASS TAHMDisplayManager;
#pragma pack(push, 4)
class PASCALIMPLEMENTATION TAHMDisplayManager : public Ahmsystemclass::TAHMSystemsComponent 
{
	typedef Ahmsystemclass::TAHMSystemsComponent inherited;
	
private:
	Classes::TStrings* FModes;
	AnsiString FMode;
	TAHMRestartRequest FRestartRequest;
	Classes::TNotifyEvent FBeforeRestart;
	Classes::TNotifyEvent FModeActive;
	Classes::TNotifyEvent FOnSuccess;
	Classes::TNotifyEvent FOnFailed;
	Classes::TNotifyEvent FOnNoStore;
	Classes::TNotifyEvent FOnRebootFail;
	TAHMDisplayAfterChange FAfterChange;
	void __fastcall SetMode(const AnsiString Value);
	AnsiString __fastcall GetCurrentMode();
	void __fastcall SetCurrentMode(const AnsiString Value);
	
public:
	__fastcall virtual TAHMDisplayManager(Classes::TComponent* AOwner);
	virtual void __fastcall Loaded(void);
	__fastcall virtual ~TAHMDisplayManager(void);
	virtual void __fastcall Update(void);
	__property Classes::TStrings* Modes = {read=FModes};
	bool __fastcall Execute(void);
	
__published:
	__property AnsiString Mode = {read=FMode, write=SetMode, stored=false};
	__property AnsiString CurrentMode = {read=GetCurrentMode, write=SetCurrentMode, stored=false};
	__property TAHMRestartRequest RestartRequest = {read=FRestartRequest, write=FRestartRequest};
	__property Classes::TNotifyEvent BeforeRestart = {read=FBeforeRestart, write=FBeforeRestart};
	__property Classes::TNotifyEvent OnAlreadyActive = {read=FModeActive, write=FModeActive};
	__property Classes::TNotifyEvent OnSuccess = {read=FOnSuccess, write=FOnSuccess};
	__property Classes::TNotifyEvent OnFailed = {read=FOnFailed, write=FOnFailed};
	__property Classes::TNotifyEvent OnNoStore = {read=FOnNoStore, write=FOnNoStore};
	__property Classes::TNotifyEvent OnRebootFail = {read=FOnRebootFail, write=FOnRebootFail};
	__property TAHMDisplayAfterChange AfterChange = {read=FAfterChange, write=FAfterChange};
};

#pragma pack(pop)

//-- var, const, procedure ---------------------------------------------------

}	/* namespace Ahmtdisplaymanager */
#if !defined(NO_IMPLICIT_NAMESPACE_USE)
using namespace Ahmtdisplaymanager;
#endif
#pragma option pop	// -w-

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