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

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

#ifndef ahmtautostoresHPP
#define ahmtautostoresHPP

#pragma delphiheader begin
#pragma option push -w-
#pragma option push -Vx
#include <Controls.hpp>	// Pascal unit
#include <ahmstandardconst.hpp>	// Pascal unit
#include <Graphics.hpp>	// Pascal unit
#include <ComCtrls.hpp>	// Pascal unit
#include <StdCtrls.hpp>	// Pascal unit
#include <ahmstdclass.hpp>	// Pascal unit
#include <Registry.hpp>	// Pascal unit
#include <IniFiles.hpp>	// Pascal unit
#include <Dialogs.hpp>	// Pascal unit
#include <Classes.hpp>	// Pascal unit
#include <Messages.hpp>	// Pascal unit
#include <Windows.hpp>	// Pascal unit
#include <SysUtils.hpp>	// Pascal unit
#include <SysInit.hpp>	// Pascal unit
#include <System.hpp>	// Pascal unit

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

namespace Ahmtautostores
{
//-- type declarations -------------------------------------------------------
#pragma option push -b-
enum TAHMStdRootKey { hkeyClassesRoot, hkeyCurrentUser, hkeyLocalMachine, hkeyUsers, hkeyCurrentConfig, hkeyDynData };
#pragma option pop

#pragma option push -b-
enum TAHMStdDatatype { sRegistry, sIniFile };
#pragma option pop

class DELPHICLASS TAHMStdRegistry;
class PASCALIMPLEMENTATION TAHMStdRegistry : public Classes::TPersistent 
{
	typedef Classes::TPersistent inherited;
	
private:
	TAHMStdRootKey FRootKey;
	AnsiString FPath;
	void __fastcall SetPath(const AnsiString Value);
	
public:
	__fastcall TAHMStdRegistry(void);
	__fastcall virtual ~TAHMStdRegistry(void);
	
__published:
	__property TAHMStdRootKey Rootkey = {read=FRootKey, write=FRootKey, default=1};
	__property AnsiString Path = {read=FPath, write=SetPath};
};


class DELPHICLASS TAHMStdIniFile;
class PASCALIMPLEMENTATION TAHMStdIniFile : public Classes::TPersistent 
{
	typedef Classes::TPersistent inherited;
	
private:
	AnsiString FFilename;
	
public:
	__fastcall TAHMStdIniFile(void);
	__fastcall virtual ~TAHMStdIniFile(void);
	
__published:
	__property AnsiString IniFilename = {read=FFilename, write=FFilename};
};


class DELPHICLASS TAHMStdDataStore;
class PASCALIMPLEMENTATION TAHMStdDataStore : public Classes::TPersistent 
{
	typedef Classes::TPersistent inherited;
	
private:
	bool FEnabled;
	TAHMStdDatatype FDatatype;
	TAHMStdRegistry* FRegistry;
	TAHMStdIniFile* FIniFile;
	Classes::TNotifyEvent FOnError;
	AnsiString FSection;
	AnsiString FPassword;
	void __fastcall SetPassword(const AnsiString Value);
	
public:
	__fastcall TAHMStdDataStore(void);
	__fastcall virtual ~TAHMStdDataStore(void);
	
__published:
	__property Classes::TNotifyEvent OnError = {read=FOnError, write=FOnError};
	__property bool Enabled = {read=FEnabled, write=FEnabled, default=1};
	__property AnsiString Section = {read=FSection, write=FSection};
	__property AnsiString Password = {read=FPassword, write=SetPassword};
	__property TAHMStdDatatype Datatype = {read=FDatatype, write=FDatatype, default=0};
	__property TAHMStdRegistry* Registry = {read=FRegistry, write=FRegistry};
	__property TAHMStdIniFile* Inifile = {read=FIniFile, write=FIniFile};
};


class DELPHICLASS TAHMControlStore;
class PASCALIMPLEMENTATION TAHMControlStore : public Classes::TComponent 
{
	typedef Classes::TComponent inherited;
	
private:
	Classes::TNotifyEvent FOnError;
	TAHMStdDataStore* FDataStore;
	
public:
	__fastcall virtual TAHMControlStore(Classes::TComponent* AOwner);
	__fastcall virtual ~TAHMControlStore(void);
	AnsiString __fastcall ReadStr(AnsiString Key, AnsiString error);
	Variant __fastcall ReadVariant(AnsiString Key, const Variant &error);
	int __fastcall ReadInt(AnsiString Key, int error);
	bool __fastcall ReadBool(AnsiString Key, bool error);
	Graphics::TColor __fastcall ReadColor(AnsiString Key, Graphics::TColor error);
	System::TDateTime __fastcall ReadTime(AnsiString Key, System::TDateTime error);
	System::TDateTime __fastcall ReadDate(AnsiString Key, System::TDateTime error);
	System::TDateTime __fastcall ReadDateTime(AnsiString Key, System::TDateTime error);
	AnsiString __fastcall ReadCrypt(AnsiString Key, AnsiString error);
	void __fastcall WriteCrypt(AnsiString Key, AnsiString Value);
	void __fastcall ReadStrs(Classes::TStringList* &Values);
	void __fastcall WriteTime(AnsiString Key, System::TDateTime Value);
	void __fastcall WriteDate(AnsiString Key, System::TDateTime Value);
	void __fastcall WriteDateTime(AnsiString Key, System::TDateTime Value);
	void __fastcall WriteVariant(AnsiString Key, const Variant &Value);
	void __fastcall WriteStr(AnsiString Key, AnsiString Value);
	void __fastcall WriteInt(AnsiString Key, int Value);
	void __fastcall WriteColor(AnsiString Key, Graphics::TColor Value);
	void __fastcall WriteBool(AnsiString Key, bool Value);
	void __fastcall DeleteKey(AnsiString Key);
	void __fastcall Erase(void);
	
__published:
	__property Classes::TNotifyEvent OnError = {read=FOnError, write=FOnError};
	__property TAHMStdDataStore* DataStore = {read=FDataStore, write=FDataStore};
};


class DELPHICLASS TAHMStoreEdit;
class PASCALIMPLEMENTATION TAHMStoreEdit : public Stdctrls::TEdit 
{
	typedef Stdctrls::TEdit inherited;
	
private:
	AnsiString FStoreKey;
	AnsiString FValue;
	AnsiString FAboutStr;
	TAHMControlStore* FControlStore;
	
protected:
	virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation);
	void __fastcall SavetoStore(void);
	
public:
	virtual void __fastcall Loaded(void);
	__fastcall virtual ~TAHMStoreEdit(void);
	DYNAMIC void __fastcall Change(void);
	
__published:
	__property TAHMControlStore* Store = {read=FControlStore, write=FControlStore};
	__property AnsiString About = {read=FAboutStr, write=FAboutStr};
	__property AnsiString StoreKey = {read=FStoreKey, write=FStoreKey};
public:
	#pragma option push -w-inl
	/* TCustomEdit.Create */ inline __fastcall virtual TAHMStoreEdit(Classes::TComponent* AOwner) : Stdctrls::TEdit(AOwner) { }
	#pragma option pop
	
public:
	#pragma option push -w-inl
	/* TWinControl.CreateParented */ inline __fastcall TAHMStoreEdit(HWND ParentWindow) : Stdctrls::TEdit(ParentWindow) { }
	#pragma option pop
	
};


class DELPHICLASS TAHMStoreCheckbox;
class PASCALIMPLEMENTATION TAHMStoreCheckbox : public Stdctrls::TCheckBox 
{
	typedef Stdctrls::TCheckBox inherited;
	
private:
	AnsiString FStoreKey;
	bool FValue;
	AnsiString FAboutStr;
	TAHMControlStore* FControlStore;
	
protected:
	virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation);
	void __fastcall SavetoStore(void);
	
public:
	virtual void __fastcall Loaded(void);
	__fastcall virtual ~TAHMStoreCheckbox(void);
	DYNAMIC void __fastcall Click(void);
	
__published:
	__property TAHMControlStore* Store = {read=FControlStore, write=FControlStore};
	__property AnsiString About = {read=FAboutStr, write=FAboutStr};
	__property AnsiString StoreKey = {read=FStoreKey, write=FStoreKey};
public:
	#pragma option push -w-inl
	/* TCustomCheckBox.Create */ inline __fastcall virtual TAHMStoreCheckbox(Classes::TComponent* AOwner) : Stdctrls::TCheckBox(AOwner) { }
	#pragma option pop
	
public:
	#pragma option push -w-inl
	/* TWinControl.CreateParented */ inline __fastcall TAHMStoreCheckbox(HWND ParentWindow) : Stdctrls::TCheckBox(ParentWindow) { }
	#pragma option pop
	
};


class DELPHICLASS TAHMStoreRadioButton;
class PASCALIMPLEMENTATION TAHMStoreRadioButton : public Stdctrls::TRadioButton 
{
	typedef Stdctrls::TRadioButton inherited;
	
private:
	AnsiString FStoreKey;
	bool FValue;
	AnsiString FAboutStr;
	TAHMControlStore* FControlStore;
	
protected:
	virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation);
	void __fastcall SavetoStore(void);
	
public:
	virtual void __fastcall Loaded(void);
	__fastcall virtual ~TAHMStoreRadioButton(void);
	DYNAMIC void __fastcall Click(void);
	
__published:
	__property TAHMControlStore* Store = {read=FControlStore, write=FControlStore};
	__property AnsiString About = {read=FAboutStr, write=FAboutStr};
	__property AnsiString StoreKey = {read=FStoreKey, write=FStoreKey};
public:
	#pragma option push -w-inl
	/* TRadioButton.Create */ inline __fastcall virtual TAHMStoreRadioButton(Classes::TComponent* AOwner) : Stdctrls::TRadioButton(AOwner) { }
	#pragma option pop
	
public:
	#pragma option push -w-inl
	/* TWinControl.CreateParented */ inline __fastcall TAHMStoreRadioButton(HWND ParentWindow) : Stdctrls::TRadioButton(ParentWindow) { }
	#pragma option pop
	
};


class DELPHICLASS TAHMStoreCombobox;
class PASCALIMPLEMENTATION TAHMStoreCombobox : public Stdctrls::TComboBox 
{
	typedef Stdctrls::TComboBox inherited;
	
private:
	AnsiString FStoreKey;
	AnsiString FAboutStr;
	TAHMControlStore* FControlStore;
	
protected:
	virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation);
	void __fastcall SavetoStore(void);
	
public:
	virtual void __fastcall Loaded(void);
	DYNAMIC void __fastcall Change(void);
	
__published:
	__property AnsiString About = {read=FAboutStr, write=FAboutStr};
	__property TAHMControlStore* Store = {read=FControlStore, write=FControlStore};
	__property AnsiString StoreKey = {read=FStoreKey, write=FStoreKey};
public:
	#pragma option push -w-inl
	/* TCustomComboBox.Create */ inline __fastcall virtual TAHMStoreCombobox(Classes::TComponent* AOwner) : Stdctrls::TComboBox(AOwner) { }
	#pragma option pop
	#pragma option push -w-inl
	/* TCustomComboBox.Destroy */ inline __fastcall virtual ~TAHMStoreCombobox(void) { }
	#pragma option pop
	
public:
	#pragma option push -w-inl
	/* TWinControl.CreateParented */ inline __fastcall TAHMStoreCombobox(HWND ParentWindow) : Stdctrls::TComboBox(ParentWindow) { }
	#pragma option pop
	
};


class DELPHICLASS TAHMStoreMemo;
class PASCALIMPLEMENTATION TAHMStoreMemo : public Comctrls::TRichEdit 
{
	typedef Comctrls::TRichEdit inherited;
	
private:
	AnsiString FStoreKey;
	AnsiString FValue;
	TAHMControlStore* FControlStore;
	AnsiString FAboutStr;
	
protected:
	virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation);
	void __fastcall SavetoStore(void);
	
public:
	virtual void __fastcall Loaded(void);
	__fastcall virtual ~TAHMStoreMemo(void);
	DYNAMIC void __fastcall Change(void);
	
__published:
	__property AnsiString About = {read=FAboutStr, write=FAboutStr};
	__property TAHMControlStore* Store = {read=FControlStore, write=FControlStore};
	__property AnsiString StoreKey = {read=FStoreKey, write=FStoreKey};
public:
	#pragma option push -w-inl
	/* TCustomRichEdit.Create */ inline __fastcall virtual TAHMStoreMemo(Classes::TComponent* AOwner) : Comctrls::TRichEdit(AOwner) { }
	#pragma option pop
	
public:
	#pragma option push -w-inl
	/* TWinControl.CreateParented */ inline __fastcall TAHMStoreMemo(HWND ParentWindow) : Comctrls::TRichEdit(ParentWindow) { }
	#pragma option pop
	
};


//-- var, const, procedure ---------------------------------------------------
extern PACKAGE HKEY AHMStdHKeys[6];

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

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