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

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

#ifndef AHMTMsgBoxesHPP
#define AHMTMsgBoxesHPP

#pragma delphiheader begin
#pragma option push -w-
#include <AHMSystemClass.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 Ahmtmsgboxes
{
//-- type declarations -------------------------------------------------------
typedef void __fastcall (__closure *TAHMMessageEvent)(System::TObject* Sender, AnsiString &Message);
	

class DELPHICLASS TAHMMessage;
class DELPHICLASS TAHMMsgBoxes;
class DELPHICLASS TAHMMessages;
#pragma pack(push, 4)
class PASCALIMPLEMENTATION TAHMMessages : public Classes::TCollection 
{
	typedef Classes::TCollection inherited;
	
private:
	TAHMMsgBoxes* FAHMMsgBoxes;
	TAHMMessage* __fastcall GetAHMMessage(int Index);
	void __fastcall SetAHMMessage(int Index, TAHMMessage* Value);
	
protected:
	DYNAMIC Classes::TPersistent* __fastcall GetOwner(void);
	
public:
	__fastcall TAHMMessages(TAHMMsgBoxes* AOwner);
	HIDESBASE TAHMMessage* __fastcall Add(void);
	bool __fastcall Delete(int Index);
	__property TAHMMsgBoxes* Owner = {read=FAHMMsgBoxes};
	__property TAHMMessage* Items[int Index] = {read=GetAHMMessage, write=SetAHMMessage/*, default*/};
public:
		
	#pragma option push -w-inl
	/* TCollection.Destroy */ inline __fastcall virtual ~TAHMMessages(void) { }
	#pragma option pop
	
};

#pragma pack(pop)

#pragma pack(push, 4)
class PASCALIMPLEMENTATION TAHMMsgBoxes : public Ahmsystemclass::TAHMSystemsComponent 
{
	typedef Ahmsystemclass::TAHMSystemsComponent inherited;
	
private:
	TAHMMessages* FAHMMessages;
	TAHMMessageEvent FBeforePopup;
	void __fastcall SetAHMMessages(TAHMMessages* Value);
	
public:
	__fastcall virtual TAHMMsgBoxes(Classes::TComponent* AOwner);
	__fastcall virtual ~TAHMMsgBoxes(void);
	Forms::TModalResult __fastcall Execute(int Index);
	
__published:
	__property TAHMMessages* Messages = {read=FAHMMessages, write=SetAHMMessages};
	__property TAHMMessageEvent BeforePopup = {read=FBeforePopup, write=FBeforePopup};
};

#pragma pack(pop)

#pragma pack(push, 4)
class PASCALIMPLEMENTATION TAHMMessage : public Classes::TCollectionItem 
{
	typedef Classes::TCollectionItem inherited;
	
private:
	AnsiString MsgText;
	TAHMMsgBoxes* FAHMMsgBoxes;
	int FXPosition;
	int FYPosition;
	int FHelpcontext;
	Dialogs::TMsgDlgButtons FButtons;
	Dialogs::TMsgDlgType FMsgType;
	Classes::TNotifyEvent FOnAbort;
	Classes::TNotifyEvent FOnRetry;
	Classes::TNotifyEvent FOnAll;
	Classes::TNotifyEvent FOnCancel;
	Classes::TNotifyEvent FOnIgnore;
	Classes::TNotifyEvent FOnNo;
	Classes::TNotifyEvent FOnYes;
	Classes::TNotifyEvent FOnOk;
	AnsiString FCaption;
	Ahmsystemclass::TAHMBeeptype FBeepType;
	Word FReturn;
	TAHMMessageEvent FBeforePopup;
	void __fastcall SetCaption(const AnsiString Value);
	void __fastcall SetXPosition(const int Value);
	void __fastcall SetYPosition(const int Value);
	
protected:
	virtual AnsiString __fastcall GetDisplayName(void);
	
public:
	__fastcall virtual TAHMMessage(Classes::TCollection* Collection);
	virtual void __fastcall Assign(Classes::TPersistent* Source);
	__property TAHMMsgBoxes* Owner = {read=FAHMMsgBoxes};
	__property AnsiString DisplayName = {read=GetDisplayName};
	Forms::TModalResult __fastcall Execute(void);
	__property Word Return = {read=FReturn, nodefault};
	
__published:
	__property AnsiString Caption = {read=FCaption, write=SetCaption};
	__property Ahmsystemclass::TAHMBeeptype Sound = {read=FBeepType, write=FBeepType, default=0};
	__property Dialogs::TMsgDlgType MsgType = {read=FMsgType, write=FMsgType, default=2};
	__property Dialogs::TMsgDlgButtons Buttons = {read=FButtons, write=FButtons, default=12};
	__property int HelpContext = {read=FHelpcontext, write=FHelpcontext, default=0};
	__property int XPosition = {read=FXPosition, write=SetXPosition, default=-1};
	__property int YPosition = {read=FYPosition, write=SetYPosition, default=-1};
	__property TAHMMessageEvent BeforePopup = {read=FBeforePopup, write=FBeforePopup};
	__property Classes::TNotifyEvent OnYes = {read=FOnYes, write=FOnYes};
	__property Classes::TNotifyEvent OnNo = {read=FOnNo, write=FOnNo};
	__property Classes::TNotifyEvent OnOk = {read=FOnOk, write=FOnOk};
	__property Classes::TNotifyEvent OnCancel = {read=FOnCancel, write=FOnCancel};
	__property Classes::TNotifyEvent OnAbort = {read=FOnAbort, write=FOnAbort};
	__property Classes::TNotifyEvent OnIgnore = {read=FOnIgnore, write=FOnIgnore};
	__property Classes::TNotifyEvent OnRetry = {read=FOnRetry, write=FOnRetry};
	__property Classes::TNotifyEvent OnAll = {read=FOnAll, write=FOnAll};
public:
	#pragma option push -w-inl
	/* TCollectionItem.Destroy */ inline __fastcall virtual ~TAHMMessage(void) { }
	#pragma option pop
	
};

#pragma pack(pop)

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

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

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