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

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

#ifndef ahmtbackgroundHPP
#define ahmtbackgroundHPP

#pragma delphiheader begin
#pragma option push -w-
#pragma option push -Vx
#include <Forms.hpp>	// Pascal unit
#include <ahmenhancedclass.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 Ahmtbackground
{
//-- type declarations -------------------------------------------------------
#pragma option push -b-
enum TAHMFillStyle { Circle, Horizontal, Vertical, LeftBottom, RoundMiddle, SquareMiddle, Spectral, DoppelFlash, Singleflash, MiddleHBar, MiddleVBar, VerticalDoppelBar, HorizontalDoppelBar };
#pragma option pop

#pragma option push -b-
enum TAHMImageStyle { isTile, isCenter, isStretched };
#pragma option pop

class DELPHICLASS TAHMGradient;
class PASCALIMPLEMENTATION TAHMGradient : public Graphics::TGraphicsObject 
{
	typedef Graphics::TGraphicsObject inherited;
	
private:
	TAHMFillStyle FFillstyle;
	Graphics::TColor FBeginColor;
	Graphics::TColor FEndcolor;
	int FColorCount;
	Classes::TStrings* FColorStrings;
	void __fastcall SetColorStrings(Classes::TStrings* value);
	void __fastcall SetStyle(TAHMFillStyle value);
	void __fastcall SetBeginColor(Graphics::TColor value);
	void __fastcall SetEndColor(Graphics::TColor value);
	void __fastcall SetColorCount(int Value);
	
public:
	__fastcall virtual TAHMGradient(void);
	__fastcall virtual ~TAHMGradient(void);
	void __fastcall MultiDraw(const HDC Cdc, int iWidth, int iHeight, Classes::TStrings* CStrings, Graphics::TColor NoGrad, bool Norm);
	
__published:
	__property Graphics::TColor BeginColor = {read=FBeginColor, write=SetBeginColor, default=-2147483632};
	__property Graphics::TColor EndColor = {read=FEndcolor, write=SetEndColor, default=-2147483628};
	__property TAHMFillStyle FillStyle = {read=FFillstyle, write=SetStyle, default=1};
	__property int ColorCount = {read=FColorCount, write=SetColorCount, default=32};
	__property Classes::TStrings* ColorsInBetween = {read=FColorStrings, write=SetColorStrings};
};


class DELPHICLASS TAHMTexture;
class PASCALIMPLEMENTATION TAHMTexture : public Graphics::TGraphicsObject 
{
	typedef Graphics::TGraphicsObject inherited;
	
private:
	Graphics::TBitmap* FImage;
	TAHMImageStyle FImageStyle;
	Graphics::TColor FTransparentColor;
	Graphics::TColor FTransparentBackground;
	void __fastcall SetTransparentColor(Graphics::TColor Value);
	void __fastcall SetTransparentBackground(Graphics::TColor Value);
	void __fastcall SetImage(Graphics::TBitmap* Value);
	void __fastcall SetImageStyle(TAHMImageStyle value);
	
public:
	__fastcall virtual TAHMTexture(void);
	__fastcall virtual ~TAHMTexture(void);
	void __fastcall Draw(const HDC Cdc, int Width, int Height, Graphics::TColor Noimg);
	
__published:
	__property Graphics::TBitmap* Image = {read=FImage, write=SetImage};
	__property TAHMImageStyle ImageStyle = {read=FImageStyle, write=SetImageStyle, default=0};
	__property Graphics::TColor TransparentColor = {read=FTransparentColor, write=SetTransparentColor, default=536870911};
	__property Graphics::TColor TransparentBackground = {read=FTransparentBackground, write=SetTransparentBackground, default=-2147483633};
};


class DELPHICLASS TAHMBrushFill;
class PASCALIMPLEMENTATION TAHMBrushFill : public Graphics::TGraphicsObject 
{
	typedef Graphics::TGraphicsObject inherited;
	
private:
	Graphics::TBrushStyle FBrushStyle;
	Graphics::TColor FBrushColor;
	void __fastcall SetBrushStyle(Graphics::TBrushStyle value);
	void __fastcall SetBrushColor(Graphics::TColor value);
	
public:
	__fastcall virtual TAHMBrushFill(void);
	
__published:
	__property Graphics::TBrushStyle BrushStyle = {read=FBrushStyle, write=SetBrushStyle, default=0};
	__property Graphics::TColor BrushColor = {read=FBrushColor, write=SetBrushColor, default=-2147483633};
public:
	#pragma option push -w-inl
	/* TPersistent.Destroy */ inline __fastcall virtual ~TAHMBrushFill(void) { }
	#pragma option pop
	
};


#pragma option push -b-
enum TAHMBackStyle { bGradient, bTexture, bSolidcolor, bBrushFillUseCurrent, bBrushFillSolidColor };
#pragma option pop

class DELPHICLASS TAHMBackground;
class PASCALIMPLEMENTATION TAHMBackground : public Classes::TComponent 
{
	typedef Classes::TComponent inherited;
	
private:
	AnsiString FAboutStr;
	TAHMTexture* FTexture;
	TAHMBrushFill* FBrushFill;
	TAHMBackStyle FBackStyle;
	Classes::TNotifyEvent FOnchanged;
	Graphics::TColor FSolidColor;
	TAHMGradient* FGradient;
	Classes::TList* FList;
	void __fastcall SetSolidColor(Graphics::TColor value);
	void __fastcall SetTexture(TAHMTexture* value);
	void __fastcall SetGradient(TAHMGradient* value);
	void __fastcall SetBrushFill(TAHMBrushFill* value);
	void __fastcall SetBackStyle(TAHMBackStyle value);
	void __fastcall BackChange(System::TObject* Sender);
	
public:
	__property Classes::TList* OList = {read=FList, write=FList, stored=false};
	__fastcall virtual TAHMBackground(Classes::TComponent* AOwner);
	__fastcall virtual ~TAHMBackground(void);
	void __fastcall AddItem(System::TObject* value);
	void __fastcall Draw(HDC DC, int fWidth, int fHeight, bool Norm);
	void __fastcall DrawTrans(Graphics::TCanvas* Canvas, int Width, int Height, bool Norm, Graphics::TColor TRC);
	void __fastcall write(Ahmenhancedclass::TAHMFont3D* f3d, const Graphics::TFont* oFont, Graphics::TCanvas* Canvas, const Types::TRect &TXTRect, AnsiString Caption, int flags);
	
__published:
	__property AnsiString About = {read=FAboutStr, write=FAboutStr};
	__property TAHMTexture* Texture = {read=FTexture, write=SetTexture};
	__property TAHMGradient* Gradient = {read=FGradient, write=SetGradient};
	__property TAHMBrushFill* BrushFill = {read=FBrushFill, write=SetBrushFill};
	__property Classes::TNotifyEvent OnChanged = {read=FOnchanged, write=FOnchanged};
	__property Graphics::TColor SolidColor = {read=FSolidColor, write=SetSolidColor, default=-2147483633};
	__property TAHMBackStyle BackgroundStyle = {read=FBackStyle, write=SetBackStyle, default=0};
};


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

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

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