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

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

#ifndef ahmtmailaccountHPP
#define ahmtmailaccountHPP

#pragma delphiheader begin
#pragma option push -w-
#pragma option push -Vx
#include <ahmmailclass.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 Ahmtmailaccount
{
//-- type declarations -------------------------------------------------------
class DELPHICLASS TAHMMailAccount;
class DELPHICLASS TAHMAccountHolder;
class DELPHICLASS TAHMMailAccounts;
class PASCALIMPLEMENTATION TAHMMailAccounts : public Ahmmailclass::TAHMMailCollection 
{
	typedef Ahmmailclass::TAHMMailCollection inherited;
	
public:
	TAHMMailAccount* operator[](int Index) { return Items[Index]; }
	
private:
	TAHMAccountHolder* FAHMAccountHolder;
	TAHMMailAccount* __fastcall GetAHMMailAccount(int Index);
	void __fastcall SetAHMMailAccount(int Index, TAHMMailAccount* Value);
	
protected:
	DYNAMIC Classes::TPersistent* __fastcall GetOwner(void);
	
public:
	__fastcall TAHMMailAccounts(TAHMAccountHolder* AOwner);
	HIDESBASE TAHMMailAccount* __fastcall Add(void);
	HIDESBASE bool __fastcall Delete(int Index);
	__property TAHMMailAccount* Items[int Index] = {read=GetAHMMailAccount, write=SetAHMMailAccount/*, default*/};
public:
	#pragma option push -w-inl
	/* TCollection.Destroy */ inline __fastcall virtual ~TAHMMailAccounts(void) { }
	#pragma option pop
	
};


class PASCALIMPLEMENTATION TAHMAccountHolder : public Ahmmailclass::TAHMMailsComponent 
{
	typedef Ahmmailclass::TAHMMailsComponent inherited;
	
private:
	TAHMMailAccounts* FAHMMailAccounts;
	void __fastcall SetAHMMailAccounts(TAHMMailAccounts* Value);
	
public:
	__fastcall virtual TAHMAccountHolder(Classes::TComponent* AOwner);
	__fastcall virtual ~TAHMAccountHolder(void);
	
__published:
	__property TAHMMailAccounts* Accounts = {read=FAHMMailAccounts, write=SetAHMMailAccounts};
};


class PASCALIMPLEMENTATION TAHMMailAccount : public Classes::TCollectionItem 
{
	typedef Classes::TCollectionItem inherited;
	
private:
	TAHMAccountHolder* FAHMAccountHolder;
	bool FInclude;
	int FTimeout;
	AnsiString FFullName;
	AnsiString FAccountName;
	AnsiString FOrganization;
	AnsiString FUserName;
	AnsiString FPassword;
	bool FHeaderOnly;
	int FPop3Port;
	AnsiString FPop3Server;
	int FSMTPPort;
	AnsiString FReplyMail;
	AnsiString FFromMail;
	AnsiString FSMTPServer;
	bool FDefault;
	int FProgressStep;
	bool FDeleteOffServer;
	void __fastcall SetTimeOut(const int Value);
	void __fastcall SetDefault(const bool Value);
	void __fastcall SetProgressStep(const int Value);
	
protected:
	virtual AnsiString __fastcall GetDisplayName();
	
public:
	__fastcall virtual TAHMMailAccount(Classes::TCollection* Collection);
	virtual void __fastcall Assign(Classes::TPersistent* Source);
	__property TAHMAccountHolder* Owner = {read=FAHMAccountHolder};
	__property AnsiString DisplayName = {read=GetDisplayName};
	
__published:
	__property int ProgressStep = {read=FProgressStep, write=SetProgressStep, nodefault};
	__property AnsiString Pop3Server = {read=FPop3Server, write=FPop3Server};
	__property AnsiString SMTPServer = {read=FSMTPServer, write=FSMTPServer};
	__property AnsiString Fullname = {read=FFullName, write=FFullName};
	__property AnsiString Organization = {read=FOrganization, write=FOrganization};
	__property AnsiString Username = {read=FUserName, write=FUserName};
	__property AnsiString Password = {read=FPassword, write=FPassword};
	__property int Pop3Port = {read=FPop3Port, write=FPop3Port, default=110};
	__property int SMTPPort = {read=FSMTPPort, write=FSMTPPort, default=25};
	__property int TimeOut = {read=FTimeout, write=SetTimeOut, default=60};
	__property AnsiString FromMail = {read=FFromMail, write=FFromMail};
	__property AnsiString ReplyMail = {read=FReplyMail, write=FReplyMail};
	__property AnsiString AccountName = {read=FAccountName, write=FAccountName};
	__property bool Include = {read=FInclude, write=FInclude, default=1};
	__property bool Default = {read=FDefault, write=SetDefault, default=1};
	__property bool HeaderOnly = {read=FHeaderOnly, write=FHeaderOnly, default=0};
	__property bool DeleteOffServer = {read=FDeleteOffServer, write=FDeleteOffServer, default=0};
public:
	#pragma option push -w-inl
	/* TCollectionItem.Destroy */ inline __fastcall virtual ~TAHMMailAccount(void) { }
	#pragma option pop
	
};


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

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

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