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

// (DO NOT EDIT: machine generated header) 'AHMTFileDetails.pas' rev: 5.00

#ifndef AHMTFileDetailsHPP
#define AHMTFileDetailsHPP

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

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

namespace Ahmtfiledetails
{
//-- type declarations -------------------------------------------------------
#pragma option push -b-
enum TAHMFileAttributeFlags { aArchive, aCompressed, aDirectory, aHidden, aNormal, aReadOnly, aSystem, 
	aTemp };
#pragma option pop

typedef Set<TAHMFileAttributeFlags, aArchive, aTemp>  TAHMFileAttributeSet;

#pragma option push -b-
enum TAHMBuildType { bDebug, bPreRelease, bPatched, bPrivateBuild, bInfoInferred, bSpecialBuild };
#pragma option pop

typedef Set<TAHMBuildType, bDebug, bSpecialBuild>  TAHMBuildTypeSet;

#pragma option push -b-
enum TAHMOSType { oUnknown, oDOS, oOS216, oOS232, oNT };
#pragma option pop

#pragma option push -b-
enum TAHMVerFileType { tUnknown, tApplication, tDLL, tDriver, tFont, tVXD, tStaticLibrary };
#pragma option pop

class DELPHICLASS TAHMFileDetails;
class PASCALIMPLEMENTATION TAHMFileDetails : public Ahmsystemclass::TAHMSystemsComponent 
{
	typedef Ahmsystemclass::TAHMSystemsComponent inherited;
	
private:
	AnsiString FFilename;
	Classes::TNotifyEvent FOnUpdate;
	unsigned FFileSize;
	AnsiString FAttribShort;
	AnsiString FNameOnly;
	AnsiString FFileExt;
	AnsiString FFilePath;
	TAHMFileAttributeSet FFileAttributes;
	System::TDateTime FCreationTime;
	System::TDateTime FLastWriteTime;
	System::TDateTime FLastAccessTime;
	AnsiString FDosFileName;
	AnsiString FCompanyName;
	AnsiString FFileDescription;
	AnsiString FFileVersion;
	AnsiString FInternalName;
	AnsiString FLegalCopyright;
	AnsiString FOriginalFilename;
	AnsiString FProductName;
	AnsiString FProductVersion;
	AnsiString FFileSubType;
	TAHMVerFileType FFileType;
	TAHMBuildTypeSet FBuildTypeSet;
	TAHMOSType FOSType;
	AnsiString FComments;
	Classes::TNotifyEvent FOnError;
	void __fastcall SetDesign(const AnsiString DesignString);
	AnsiString __fastcall GetCompanyName();
	AnsiString __fastcall GetFileDescription();
	AnsiString __fastcall GetFileVersion();
	AnsiString __fastcall GetInternalName();
	AnsiString __fastcall GetLegalCopyright();
	AnsiString __fastcall GetOriginalFilename();
	AnsiString __fastcall GetProductName();
	AnsiString __fastcall GetProductVersion();
	TAHMBuildTypeSet __fastcall GetBuildTypeSet(void);
	void __fastcall SetBuildTypeSet(const TAHMBuildTypeSet Value);
	TAHMOSType __fastcall GetOSType(void);
	void __fastcall SetOSType(const TAHMOSType Value);
	TAHMVerFileType __fastcall GetFileType(void);
	void __fastcall SetFileType(const TAHMVerFileType Value);
	AnsiString __fastcall GetFileSubType();
	AnsiString __fastcall GetComments();
	unsigned __fastcall Get_FileSize(void);
	AnsiString __fastcall GetAttribShort();
	System::TDateTime __fastcall GetCreationTime(void);
	TAHMFileAttributeSet __fastcall GetFileAttributes(void);
	AnsiString __fastcall GetFileExt();
	AnsiString __fastcall GetFilePath();
	System::TDateTime __fastcall GetLastAccessTime(void);
	System::TDateTime __fastcall GetLastWriteTime(void);
	AnsiString __fastcall GetNameOnly();
	void __fastcall SetAttributes(const TAHMFileAttributeSet Value);
	void __fastcall SetDWord(const unsigned Value);
	void __fastcall SetTDateTime(const System::TDateTime Value);
	AnsiString __fastcall GetDosFilename();
	
public:
	__fastcall virtual TAHMFileDetails(Classes::TComponent* AOwner);
	virtual void __fastcall Loaded(void);
	AnsiString __fastcall GetVersionValue(AnsiString Value);
	void __fastcall SetFilename(AnsiString NewFilename);
	
__published:
	__property AnsiString AboutFile = {read=FFilename, write=SetFilename, stored=false};
	__property AnsiString CompanyName = {read=GetCompanyName, write=SetDesign, stored=false};
	__property AnsiString FileDescription = {read=GetFileDescription, write=SetDesign, stored=false};
	__property AnsiString FileVersion = {read=GetFileVersion, write=SetDesign, stored=false};
	__property AnsiString Comments = {read=GetComments, write=SetDesign, stored=false};
	__property AnsiString InternalName = {read=GetInternalName, write=SetDesign, stored=false};
	__property AnsiString LegalCopyright = {read=GetLegalCopyright, write=SetDesign, stored=false};
	__property AnsiString OriginalFilename = {read=GetOriginalFilename, write=SetDesign, stored=false};
		
	__property AnsiString ProductName = {read=GetProductName, write=SetDesign, stored=false};
	__property AnsiString ProductVersion = {read=GetProductVersion, write=SetDesign, stored=false};
	__property TAHMBuildTypeSet BuildOptions = {read=GetBuildTypeSet, write=SetBuildTypeSet, stored=false
		, nodefault};
	__property TAHMOSType OSType = {read=GetOSType, write=SetOSType, stored=false, nodefault};
	__property TAHMVerFileType FileType = {read=GetFileType, write=SetFileType, stored=false, nodefault
		};
	__property AnsiString FileSubType = {read=GetFileSubType, write=SetDesign, stored=false};
	__property System::TDateTime CreationTime = {read=GetCreationTime, write=SetTDateTime, stored=false
		};
	__property System::TDateTime LastAccessTime = {read=GetLastAccessTime, write=SetTDateTime, stored=false
		};
	__property System::TDateTime LastWriteTime = {read=GetLastWriteTime, write=SetTDateTime, stored=false
		};
	__property TAHMFileAttributeSet Attributes = {read=GetFileAttributes, write=SetAttributes, stored=false
		, nodefault};
	__property unsigned FileSize = {read=Get_FileSize, write=SetDWord, stored=false, nodefault};
	__property AnsiString FilePath = {read=GetFilePath, write=SetDesign, stored=false};
	__property AnsiString FileExt = {read=GetFileExt, write=SetDesign, stored=false};
	__property AnsiString AttribShort = {read=GetAttribShort, write=SetDesign, stored=false};
	__property AnsiString NameandExt = {read=GetNameOnly, write=SetDesign, stored=false};
	__property AnsiString DosFileName = {read=GetDosFilename, write=SetDesign, stored=false};
	__property Classes::TNotifyEvent OnUpdate = {read=FOnUpdate, write=FOnUpdate};
	__property Classes::TNotifyEvent OnError = {read=FOnError, write=FOnError};
public:
	#pragma option push -w-inl
	/* TComponent.Destroy */ inline __fastcall virtual ~TAHMFileDetails(void) { }
	#pragma option pop
	
};


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

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

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