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

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

#ifndef AHMTFileDetailsHPP
#define AHMTFileDetailsHPP
#include <AHMSystemConst.hpp>
#include <AHMSystemClass.hpp>
#include <Classes.hpp>
#include <Windows.hpp>
#include <SysInit.hpp>
#include <System.hpp>

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

namespace Ahmtfiledetails
{
//-- type declarations -------------------------------------------------------
enum TAHMFileAttributeFlags { aArchive, aCompressed, aDirectory, aHidden, aNormal, aReadOnly, aSystem, 
	aTemp };

typedef Set<TAHMFileAttributeFlags, aArchive, aTemp>  TAHMFileAttributeSet;

enum TAHMBuildType { bDebug, bPreRelease, bPatched, bPrivateBuild, bInfoInferred, bSpecialBuild };

typedef Set<TAHMBuildType, bDebug, bSpecialBuild>  TAHMBuildTypeSet;

enum TAHMOSType { oUnknown, oDOS, oOS216, oOS232, oNT };

enum TAHMVerFileType { tUnknown, tApplication, tDLL, tDriver, tFont, tVXD, tStaticLibrary };

class DELPHICLASS TAHMFileDetails;
class PASCALIMPLEMENTATION TAHMFileDetails : public Ahmsystemclass::TAHMSystemsComponent 
{
	typedef Ahmsystemclass::TAHMSystemsComponent inherited;
	
private:
	System::AnsiString FFilename;
	Classes::TNotifyEvent FOnUpdate;
	int FFileSize;
	System::AnsiString FAttribShort;
	System::AnsiString FNameOnly;
	System::AnsiString FFileExt;
	System::AnsiString FFilePath;
	TAHMFileAttributeSet FFileAttributes;
	System::TDateTime FCreationTime;
	System::TDateTime FLastWriteTime;
	System::TDateTime FLastAccessTime;
	System::AnsiString FDosFileName;
	System::AnsiString FCompanyName;
	System::AnsiString FFileDescription;
	System::AnsiString FFileVersion;
	System::AnsiString FInternalName;
	System::AnsiString FLegalCopyright;
	System::AnsiString FOriginalFilename;
	System::AnsiString FProductName;
	System::AnsiString FProductVersion;
	System::AnsiString FFileSubType;
	TAHMVerFileType FFileType;
	TAHMBuildTypeSet FBuildTypeSet;
	TAHMOSType FOSType;
	System::AnsiString FComments;
	Classes::TNotifyEvent FOnError;
	void __fastcall SetDesign(const System::AnsiString DesignString);
	System::AnsiString __fastcall GetCompanyName(void);
	System::AnsiString __fastcall GetFileDescription(void);
	System::AnsiString __fastcall GetFileVersion(void);
	System::AnsiString __fastcall GetInternalName(void);
	System::AnsiString __fastcall GetLegalCopyright(void);
	System::AnsiString __fastcall GetOriginalFilename(void);
	System::AnsiString __fastcall GetProductName(void);
	System::AnsiString __fastcall GetProductVersion(void);
	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);
	System::AnsiString __fastcall GetFileSubType(void);
	System::AnsiString __fastcall GetComments(void);
	int __fastcall Get_FileSize(void);
	System::AnsiString __fastcall GetAttribShort(void);
	System::TDateTime __fastcall GetCreationTime(void);
	TAHMFileAttributeSet __fastcall GetFileAttributes(void);
	System::AnsiString __fastcall GetFileExt(void);
	System::AnsiString __fastcall GetFilePath(void);
	System::TDateTime __fastcall GetLastAccessTime(void);
	System::TDateTime __fastcall GetLastWriteTime(void);
	System::AnsiString __fastcall GetNameOnly(void);
	void __fastcall SetAttributes(const TAHMFileAttributeSet Value);
	void __fastcall SetDWord(const int Value);
	void __fastcall SetTDateTime(const System::TDateTime Value);
	System::AnsiString __fastcall GetDosFilename(void);
	
public:
	__fastcall virtual TAHMFileDetails(Classes::TComponent* AOwner);
	virtual void __fastcall Loaded(void);
	System::AnsiString __fastcall GetVersionValue(System::AnsiString Value);
	void __fastcall SetFilename(System::AnsiString NewFilename);
	
__published:
	__property System::AnsiString AboutFile = {read=FFilename, write=SetFilename, stored=false};
	__property System::AnsiString CompanyName = {read=GetCompanyName, write=SetDesign, stored=false};
	__property System::AnsiString FileDescription = {read=GetFileDescription, write=SetDesign, stored=false
		};
	__property System::AnsiString FileVersion = {read=GetFileVersion, write=SetDesign, stored=false};
	__property System::AnsiString Comments = {read=GetComments, write=SetDesign, stored=false};
	__property System::AnsiString InternalName = {read=GetInternalName, write=SetDesign, stored=false};
		
	__property System::AnsiString LegalCopyright = {read=GetLegalCopyright, write=SetDesign, stored=false
		};
	__property System::AnsiString OriginalFilename = {read=GetOriginalFilename, write=SetDesign, stored=false
		};
	__property System::AnsiString ProductName = {read=GetProductName, write=SetDesign, stored=false};
	__property System::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 System::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 int FileSize = {read=Get_FileSize, write=SetDWord, stored=false, nodefault};
	__property System::AnsiString FilePath = {read=GetFilePath, write=SetDesign, stored=false};
	__property System::AnsiString FileExt = {read=GetFileExt, write=SetDesign, stored=false};
	__property System::AnsiString AttribShort = {read=GetAttribShort, write=SetDesign, stored=false};
	__property System::AnsiString NameandExt = {read=GetNameOnly, write=SetDesign, stored=false};
	__property System::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:
	/* TComponent.Destroy */ __fastcall virtual ~TAHMFileDetails(void) { }
	
};

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

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