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

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

#ifndef ahmtiebuttonHPP
#define ahmtiebuttonHPP

#pragma delphiheader begin
#pragma option push -w-
#pragma option push -Vx
#include <ahmcontrols.hpp>	// Pascal unit
#include <ahmenhancedclass.hpp>	// Pascal unit
#include <ExtCtrls.hpp>	// Pascal unit
#include <Menus.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 Ahmtiebutton
{
//-- type declarations -------------------------------------------------------
#pragma option push -b-
enum TAHMButtonOption { opMonoDisplay, opMenuArrow, opTextonly, opBitmapOnly };
#pragma option pop

typedef Set<TAHMButtonOption, opMonoDisplay, opBitmapOnly>  TAHMButtonOptions;

#pragma option push -b-
enum TAHMButtonKind { bk97, bkNormal, bkDeep };
#pragma option pop

class DELPHICLASS TAHMIEButton;
class PASCALIMPLEMENTATION TAHMIEButton : public Ahmcontrols::TAHMGraphicControl 
{
	typedef Ahmcontrols::TAHMGraphicControl inherited;
	
private:
	bool Fdesframe;
	bool FAllowAllUp;
	Ahmenhancedclass::TAHMGlyph* FAHMGlyph;
	bool FDown;
	TAHMButtonKind fbevlooks;
	Menus::TPopupMenu* FDropDown;
	bool FEnabled;
	int FGroupIndex;
	Ahmenhancedclass::TAHMPosition FLayout;
	TAHMButtonOptions FOptions;
	bool Pushed;
	bool MouseIn;
	Classes::TNotifyEvent FOnRightMouseDown;
	Ahmenhancedclass::TAHMFont3D* f3ds;
	void __fastcall GlyphChange(System::TObject* Sender);
	
protected:
	void __fastcall Set3Ds(Ahmenhancedclass::TAHMFont3D* value);
	MESSAGE void __fastcall CMDialogChar(Messages::TWMKey &Message);
	void __fastcall DrawPopupMark(int x, int y);
	void __fastcall UpdateGroupIndex(void);
	virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation);
	virtual void __fastcall Paint(void);
	void __fastcall SetAllowAllUp(bool value);
	void __fastcall SetAHMGlyph(Ahmenhancedclass::TAHMGlyph* value);
	void __fastcall Setcaption(const AnsiString value);
	AnsiString __fastcall getcaption();
	void __fastcall SetBevelLooks(TAHMButtonKind value);
	void __fastcall SetDown(bool value);
	void __fastcall SetDropDown(Menus::TPopupMenu* value);
	void __fastcall Setdesframe(bool value);
	virtual void __fastcall SetEnabled(bool value);
	void __fastcall SetGroupIndex(int value);
	void __fastcall SetLayout(Ahmenhancedclass::TAHMPosition value);
	void __fastcall SetOptions(TAHMButtonOptions value);
	HIDESBASE MESSAGE void __fastcall WMRButtonUp(Messages::TWMMouse &msg);
	HIDESBASE MESSAGE void __fastcall WMLButtonDown(Messages::TWMMouse &msg);
	HIDESBASE MESSAGE void __fastcall WMRButtonDown(Messages::TWMMouse &msg);
	HIDESBASE MESSAGE void __fastcall WMLButtonUp(Messages::TWMMouse &msg);
	HIDESBASE MESSAGE void __fastcall WMMouseMove(Messages::TWMMouse &msg);
	
public:
	__fastcall virtual TAHMIEButton(Classes::TComponent* aOwner);
	__fastcall virtual ~TAHMIEButton(void);
	
__published:
	__property bool AllowAllUp = {read=FAllowAllUp, write=SetAllowAllUp, stored=true, default=0};
	__property Ahmenhancedclass::TAHMGlyph* Glyph = {read=FAHMGlyph, write=SetAHMGlyph, stored=true};
	__property bool DesignTimeFrame = {read=Fdesframe, write=Setdesframe, default=1};
	__property int GroupIndex = {read=FGroupIndex, write=SetGroupIndex, stored=true, default=0};
	__property bool Down = {read=FDown, write=SetDown, stored=true, default=0};
	__property Menus::TPopupMenu* DropDownMenu = {read=FDropDown, write=SetDropDown, stored=true};
	__property bool Enabled = {read=FEnabled, write=SetEnabled, default=1};
	__property Ahmenhancedclass::TAHMPosition Layout = {read=FLayout, write=SetLayout, stored=true, default=2};
	__property TAHMButtonOptions Options = {read=FOptions, write=SetOptions, stored=true, default=3};
	__property TAHMButtonKind BevelLooks = {read=fbevlooks, write=SetBevelLooks, default=0};
	__property Ahmenhancedclass::TAHMFont3D* Font3D = {read=f3ds, write=Set3Ds};
	__property AnsiString Caption = {read=getcaption, write=Setcaption};
	__property Font ;
	__property Hint ;
	__property OnClick ;
	__property OnMouseDown ;
	__property OnMouseUp ;
	__property Classes::TNotifyEvent OnRightMouseDown = {read=FOnRightMouseDown, write=FOnRightMouseDown};
	__property OnMouseMove ;
	__property ParentFont  = {default=1};
	__property ParentShowHint  = {default=1};
	__property ShowHint ;
	__property Visible  = {default=1};
	__property OnDblClick ;
	__property OnDragDrop ;
	__property OnDragOver ;
	__property OnEndDrag ;
	__property OnStartDrag ;
	__property OnResize ;
	__property OnStartDock ;
	__property OnCanResize ;
	__property OnConstrainedResize ;
	__property OnEndDock ;
	__property Anchors  = {default=3};
	__property BiDiMode ;
	__property Constraints ;
	__property DragCursor  = {default=-12};
	__property DragKind  = {default=0};
	__property DragMode  = {default=0};
	__property ParentBiDiMode  = {default=1};
};


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

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

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