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

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

#ifndef AHMTLookupEditHPP
#define AHMTLookupEditHPP
#include <StdCtrls.hpp>
#include <Buttons.hpp>
#include <Graphics.hpp>
#include <AHMStdClass.hpp>
#include <Menus.hpp>
#include <Mask.hpp>
#include <Classes.hpp>
#include <Controls.hpp>
#include <SysUtils.hpp>
#include <Messages.hpp>
#include <Windows.hpp>
#include <SysInit.hpp>
#include <System.hpp>

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

namespace Ahmtlookupedit
{
//-- type declarations -------------------------------------------------------
class DELPHICLASS TAHMCustomLookupEdit;
class DELPHICLASS TAHMButtonClass;
class PASCALIMPLEMENTATION TAHMButtonClass : public Classes::TPersistent 
{
	typedef Classes::TPersistent inherited;
	
private:
	Buttons::TSpeedButton* FButton;
	Menus::TShortCut FShortCutKey;
	void __fastcall SetCaption(System::AnsiString value);
	void __fastcall SetVisible(bool value);
	void __fastcall SetEnabled(bool value);
	void __fastcall SetHint(System::AnsiString value);
	void __fastcall SetShowHint(bool value);
	void __fastcall SetNumGlyphs(int value);
	void __fastcall SetGlyph(Graphics::TBitmap* value);
	void __fastcall SetShortCutKey(Menus::TShortCut value);
	System::AnsiString __fastcall GetCaption(void);
	bool __fastcall GetVisible(void);
	bool __fastcall GetEnabled(void);
	System::AnsiString __fastcall GetHint(void);
	bool __fastcall GetShowHint(void);
	int __fastcall GetNumGlyphs(void);
	Graphics::TBitmap* __fastcall GetGlyph(void);
	
public:
	__fastcall TAHMButtonClass(Classes::TComponent* AOwner);
	
__published:
	__property System::AnsiString Caption = {read=GetCaption, write=SetCaption, stored=true};
	__property bool Visible = {read=GetVisible, write=SetVisible, stored=true, nodefault};
	__property bool Enabled = {read=GetEnabled, write=SetEnabled, stored=true, nodefault};
	__property System::AnsiString Hint = {read=GetHint, write=SetHint, stored=true};
	__property bool ShowHint = {read=GetShowHint, write=SetShowHint, stored=true, nodefault};
	__property int NumGlyphs = {read=GetNumGlyphs, write=SetNumGlyphs, stored=true, nodefault};
	__property Graphics::TBitmap* Glyph = {read=GetGlyph, write=SetGlyph, stored=true};
	__property Menus::TShortCut ShortCutKey = {read=FShortCutKey, write=SetShortCutKey, stored=true, nodefault
		};
public:
	/* TPersistent.Destroy */ __fastcall virtual ~TAHMButtonClass(void) { }
	
};

class PASCALIMPLEMENTATION TAHMCustomLookupEdit : public Mask::TCustomMaskEdit 
{
	typedef Mask::TCustomMaskEdit inherited;
	
private:
	Buttons::TSpeedButton* FEditButton2;
	Buttons::TSpeedButton* FEditButton1;
	TAHMButtonClass* FEditBClass2;
	TAHMButtonClass* FEditBClass1;
	Ahmstdclass::TAHMAboutSControlStr FAboutStr;
	Classes::TNotifyEvent FOnButton2Click;
	Classes::TNotifyEvent FOnButton1Click;
	TAlignment FAlignment;
	int __fastcall GetMinHeight(void);
	void __fastcall EditButton2Click(System::TObject* Sender);
	void __fastcall EditButton1Click(System::TObject* Sender);
	HIDESBASE MESSAGE void __fastcall WMSize(Messages::TWMSize &Message);
	HIDESBASE MESSAGE void __fastcall CMEnabledChanged(Messages::TMessage &Message);
	HIDESBASE MESSAGE void __fastcall CMEnter(Messages::TMessage &Message);
	void __fastcall SetAlignment(Classes::TAlignment Value);
	void __fastcall SetEditBClass2(TAHMButtonClass* value);
	void __fastcall SetEditBClass1(TAHMButtonClass* value);
	
protected:
	virtual void __fastcall CreateWnd(void);
	void __fastcall SetButtons(void);
	
public:
	void __fastcall SetEditRect(void);
	virtual void __fastcall CreateParams(Controls::TCreateParams &Params);
	__fastcall virtual TAHMCustomLookupEdit(Classes::TComponent* AOwner);
	__fastcall virtual ~TAHMCustomLookupEdit(void);
	virtual void __fastcall Loaded(void);
	DYNAMIC void __fastcall KeyDown(Word &Key, Classes::TShiftState Shift);
	DYNAMIC void __fastcall KeyPress(char &Key);
	__property TAHMButtonClass* EditButton2 = {read=FEditBClass2, write=SetEditBClass2, stored=true};
	__property TAHMButtonClass* EditButton1 = {read=FEditBClass1, write=SetEditBClass1, stored=true};
	__property Classes::TAlignment Alignment = {read=FAlignment, write=SetAlignment, default=0};
	__property Classes::TNotifyEvent OnButton2Click = {read=FOnButton2Click, write=FOnButton2Click};
	__property Classes::TNotifyEvent OnButton1Click = {read=FOnButton1Click, write=FOnButton1Click};
	
__published:
	__property Ahmstdclass::TAHMAboutSControlStr About = {read=FAboutStr, write=FAboutStr};
public:
	/* TWinControl.CreateParented */ __fastcall TAHMCustomLookupEdit(HWND ParentWindow) : Mask::TCustomMaskEdit(
		ParentWindow) { }
	
};

class DELPHICLASS TAHMLookupEdit;
class PASCALIMPLEMENTATION TAHMLookupEdit : public Ahmtlookupedit::TAHMCustomLookupEdit 
{
	typedef Ahmtlookupedit::TAHMCustomLookupEdit inherited;
	
public:
	__fastcall virtual TAHMLookupEdit(Classes::TComponent* AOwner);
	
__published:
	__property Alignment ;
	__property EditButton1 ;
	__property OnButton1Click ;
	__property EditButton2 ;
	__property OnButton2Click ;
	__property EditMask ;
	__property MaxLength ;
	__property Text ;
	__property AutoSize ;
	__property CharCase ;
	__property PasswordChar ;
	__property ReadOnly ;
	__property Font ;
	__property Enabled ;
	__property OnChange ;
	__property OnEnter ;
	__property OnExit ;
	__property OnKeyDown ;
	__property OnKeyPress ;
	__property OnKeyUp ;
	__property OnClick ;
	__property OnDblClick ;
	__property OnDragDrop ;
	__property OnDragOver ;
	__property OnEndDrag ;
	__property OnMouseDown ;
	__property OnMouseMove ;
	__property OnMouseUp ;
	__property OnStartDrag ;
public:
	/* TAHMCustomLookupEdit.Destroy */ __fastcall virtual ~TAHMLookupEdit(void) { }
	
public:
	/* TWinControl.CreateParented */ __fastcall TAHMLookupEdit(HWND ParentWindow) : Ahmtlookupedit::TAHMCustomLookupEdit(
		ParentWindow) { }
	
};

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

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