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

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

#ifndef ahmtclipboardHPP
#define ahmtclipboardHPP

#pragma delphiheader begin
#pragma option push -w-
#pragma option push -Vx
#include <ahmstandardconst.hpp>	// Pascal unit
#include <ahmstdclass.hpp>	// Pascal unit
#include <Menus.hpp>	// Pascal unit
#include <ExtCtrls.hpp>	// Pascal unit
#include <StdCtrls.hpp>	// Pascal unit
#include <Forms.hpp>	// Pascal unit
#include <Clipbrd.hpp>	// Pascal unit
#include <Controls.hpp>	// Pascal unit
#include <Graphics.hpp>	// Pascal unit
#include <Classes.hpp>	// Pascal unit
#include <Messages.hpp>	// Pascal unit
#include <SysUtils.hpp>	// Pascal unit
#include <Windows.hpp>	// Pascal unit
#include <SysInit.hpp>	// Pascal unit
#include <System.hpp>	// Pascal unit

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

namespace Ahmtclipboard
{
//-- type declarations -------------------------------------------------------
#pragma option push -b-
enum TAHMClipFormat { fDefault, fEmpty, fUnknown, fText, fBitmap, fMetafile, fOemText, fPicture, fComponent, fIcon };
#pragma option pop

class DELPHICLASS TAHMClipboard;
class PASCALIMPLEMENTATION TAHMClipboard : public Forms::TScrollBox 
{
	typedef Forms::TScrollBox inherited;
	
private:
	HWND PrevHwnd;
	AnsiString FAboutStr;
	Classes::TComponent* FPaintControl;
	TAHMClipFormat FViewFormat;
	Classes::TNotifyEvent FOnChange;
	bool __fastcall IsEmptyClipboard(void);
	void __fastcall ForwardMessage(Messages::TMessage &Msg);
	HIDESBASE MESSAGE void __fastcall WMSize(Messages::TMessage &Msg);
	MESSAGE void __fastcall WMDestroyClipboard(Messages::TMessage &Msg);
	MESSAGE void __fastcall WMChangeCBChain(Messages::TWMChangeCBChain &Msg);
	MESSAGE void __fastcall WMDrawClipboard(Messages::TMessage &Msg);
	void __fastcall SetViewFormat(TAHMClipFormat Value);
	AnsiString __fastcall GetClipboardFormatNames(int Index);
	
protected:
	virtual void __fastcall CreateWnd(void);
	virtual void __fastcall DestroyWnd(void);
	DYNAMIC void __fastcall Change(void);
	virtual void __fastcall CreatePaintControl(void);
	virtual TAHMClipFormat __fastcall GetDrawFormat(void);
	DYNAMIC bool __fastcall ValidFormat(TAHMClipFormat Format);
	__property Classes::TNotifyEvent OnChange = {read=FOnChange, write=FOnChange};
	
public:
	__fastcall virtual TAHMClipboard(Classes::TComponent* AOwner);
	/*         class method */ static bool __fastcall CanDrawFormat(TMetaClass* vmt, Word ClipboardFormat);
	__property AnsiString ClipboardFormat[int Index] = {read=GetClipboardFormatNames};
	
__published:
	__property AnsiString About = {read=FAboutStr, write=FAboutStr};
	__property TAHMClipFormat ViewFormat = {read=FViewFormat, write=SetViewFormat, stored=false, nodefault};
	__property Color  = {default=-2147483643};
	__property ParentColor  = {default=0};
	__property OnStartDrag ;
public:
	#pragma option push -w-inl
	/* TScrollingWinControl.Destroy */ inline __fastcall virtual ~TAHMClipboard(void) { }
	#pragma option pop
	
public:
	#pragma option push -w-inl
	/* TWinControl.CreateParented */ inline __fastcall TAHMClipboard(HWND ParentWindow) : Forms::TScrollBox(ParentWindow) { }
	#pragma option pop
	
};


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

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

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