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

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

#ifndef AHMTMsgBoxesHPP
#define AHMTMsgBoxesHPP
#include <AHMSystemClass.hpp>
#include <Dialogs.hpp>
#include <Forms.hpp>
#include <Controls.hpp>
#include <Graphics.hpp>
#include <Classes.hpp>
#include <SysUtils.hpp>
#include <Messages.hpp>
#include <Windows.hpp>
#include <SysInit.hpp>
#include <System.hpp>

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

namespace Ahmtmsgboxes
{
//-- type declarations -------------------------------------------------------
typedef void __fastcall (__closure *TAHMMessageEvent)(System::TObject* Sender, System::AnsiString &Message
	);

class DELPHICLASS TAHMMessage;
class DELPHICLASS TAHMMsgBoxes;
class DELPHICLASS TAHMMessages;
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:
		
	/* TCollection.Destroy */ __fastcall virtual ~TAHMMessages(void) { }
	
};

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};
};

class PASCALIMPLEMENTATION TAHMMessage : public Classes::TCollectionItem 
{
	typedef Classes::TCollectionItem inherited;
	
private:
	System::AnsiString MsgText;
	TAHMMsgBoxes* FAHMMsgBoxes;
	int FXPosition;
	int FYPosition;
	int FHelpcontext;
	Dialogs::TMsgDlgButtons FButtons;
	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;
	System::AnsiString FCaption;
	TAHMBeeptype FBeepType;
	Word FReturn;
	TAHMMessageEvent FBeforePopup;
	void __fastcall SetCaption(const System::AnsiString Value);
	void __fastcall SetXPosition(const int Value);
	void __fastcall SetYPosition(const int Value);
	
protected:
	virtual System::AnsiString __fastcall GetDisplayName(void);
	
public:
	__fastcall virtual TAHMMessage(Classes::TCollection* Collection);
	virtual void __fastcall Assign(Classes::TPersistent* Source);
	__property TAHMMsgBoxes* Owner = {read=FAHMMsgBoxes};
	__property System::AnsiString DisplayName = {read=GetDisplayName};
	Forms::TModalResult __fastcall Execute(void);
	__property Word Return = {read=FReturn, nodefault};
	
__published:
	__property System::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:
	/* TCollectionItem.Destroy */ __fastcall virtual ~TAHMMessage(void) { }
	
};

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

}	/* namespace Ahmtmsgboxes */
#if !defined(NO_IMPLICIT_NAMESPACE_USE)
using namespace Ahmtmsgboxes;
#endif
//-- end unit ----------------------------------------------------------------
#endif	// AHMTMsgBoxes
