// CodeGear C++Builder
// Copyright (c) 1995, 2010 by Embarcadero Technologies, Inc.
// All rights reserved

// (DO NOT EDIT: machine generated header) 'ReportObj.pas' rev: 22.00

#ifndef ReportobjHPP
#define ReportobjHPP

#pragma delphiheader begin
#pragma option push
#pragma option -w-      // All warnings off
#pragma option -Vx      // Zero-length empty class member functions
#pragma pack(push,8)
#include <System.hpp>	// Pascal unit
#include <SysInit.hpp>	// Pascal unit
#include <Windows.hpp>	// Pascal unit
#include <Printers.hpp>	// Pascal unit
#include <Classes.hpp>	// Pascal unit
#include <SysUtils.hpp>	// Pascal unit
#include <Forms.hpp>	// Pascal unit
#include <Graphics.hpp>	// Pascal unit
#include <Controls.hpp>	// Pascal unit
#include <StdCtrls.hpp>	// Pascal unit
#include <Dialogs.hpp>	// Pascal unit

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

namespace Reportobj
{
//-- type declarations -------------------------------------------------------
__interface IMarginsAdapter;
typedef System::DelphiInterface<IMarginsAdapter> _di_IMarginsAdapter;
class DELPHICLASS TPageMargins;
__interface  INTERFACE_UUID("{1A0D63A4-74B4-4F05-A816-7B887990BFC5}") IMarginsAdapter  : public System::IInterface 
{
	
public:
	virtual void __fastcall ReferenceMargins(TPageMargins* Margins) = 0 ;
	virtual void __fastcall ReleaseMargins(void) = 0 ;
};

class PASCALIMPLEMENTATION TPageMargins : public Classes::TPersistent
{
	typedef Classes::TPersistent inherited;
	
private:
	int FLeft;
	int FTop;
	int FRight;
	int FBottom;
	_di_IMarginsAdapter FMarginsAdapter;
	void __fastcall SetMarginsAdapter(const _di_IMarginsAdapter Value);
	
public:
	__fastcall TPageMargins(void);
	virtual void __fastcall Assign(Classes::TPersistent* Source);
	__property _di_IMarginsAdapter MarginsAdapter = {read=FMarginsAdapter, write=SetMarginsAdapter};
	
__published:
	__property int Left = {read=FLeft, write=FLeft, default=15};
	__property int Top = {read=FTop, write=FTop, default=15};
	__property int Right = {read=FRight, write=FRight, default=15};
	__property int Bottom = {read=FBottom, write=FBottom, default=15};
public:
	/* TPersistent.Destroy */ inline __fastcall virtual ~TPageMargins(void) { }
	
};


__interface ISectionParams;
typedef System::DelphiInterface<ISectionParams> _di_ISectionParams;
class DELPHICLASS TSectionParams;
__interface  INTERFACE_UUID("{27965A75-23E3-4869-A2C4-44EF487193A3}") ISectionParams  : public System::IInterface 
{
	
public:
	virtual void __fastcall ReferenceParams(TSectionParams* Params) = 0 ;
	virtual void __fastcall ReleaseParams(void) = 0 ;
};

class PASCALIMPLEMENTATION TSectionParams : public Classes::TPersistent
{
	typedef Classes::TPersistent inherited;
	
private:
	Graphics::TFont* FFont;
	Graphics::TColor FColor;
	_di_ISectionParams FParamsAdapter;
	void __fastcall SetFont(Graphics::TFont* Value);
	void __fastcall SetParamsAdapter(const _di_ISectionParams Value);
	
public:
	__fastcall virtual TSectionParams(void);
	__fastcall virtual ~TSectionParams(void);
	virtual void __fastcall Assign(Classes::TPersistent* Source);
	virtual void __fastcall SaveToStream(Classes::TStream* Stream);
	virtual void __fastcall LoadFromStream(Classes::TStream* Stream);
	__property _di_ISectionParams ParamsAdapter = {read=FParamsAdapter, write=SetParamsAdapter};
	
__published:
	__property Graphics::TFont* Font = {read=FFont, write=SetFont};
	__property Graphics::TColor Color = {read=FColor, write=FColor, default=16777215};
};


class DELPHICLASS TTitleParams;
class PASCALIMPLEMENTATION TTitleParams : public TSectionParams
{
	typedef TSectionParams inherited;
	
private:
	Classes::TAlignment FAlign;
	System::WideString FText;
	
public:
	__fastcall virtual TTitleParams(void);
	virtual void __fastcall Assign(Classes::TPersistent* Source);
	virtual void __fastcall SaveToStream(Classes::TStream* Stream);
	virtual void __fastcall LoadFromStream(Classes::TStream* Stream);
	
__published:
	__property Classes::TAlignment Align = {read=FAlign, write=FAlign, default=2};
	__property System::WideString Text = {read=FText, write=FText};
public:
	/* TSectionParams.Destroy */ inline __fastcall virtual ~TTitleParams(void) { }
	
};


class DELPHICLASS TPageHeaderParams;
class PASCALIMPLEMENTATION TPageHeaderParams : public TTitleParams
{
	typedef TTitleParams inherited;
	
private:
	Graphics::TFont* FDetailFont;
	System::WideString FRightText;
	System::WideString FLeftText;
	System::WideString FMiddleText;
	void __fastcall SetDetailFont(const Graphics::TFont* Value);
	
public:
	__fastcall virtual TPageHeaderParams(void);
	__fastcall virtual ~TPageHeaderParams(void);
	virtual void __fastcall Assign(Classes::TPersistent* Source);
	virtual void __fastcall SaveToStream(Classes::TStream* Stream);
	virtual void __fastcall LoadFromStream(Classes::TStream* Stream);
	
__published:
	__property System::WideString LeftText = {read=FLeftText, write=FLeftText};
	__property System::WideString MiddleText = {read=FMiddleText, write=FMiddleText};
	__property System::WideString RightText = {read=FRightText, write=FRightText};
	__property Graphics::TFont* DetailFont = {read=FDetailFont, write=SetDetailFont};
};


class DELPHICLASS TFooterParams;
class PASCALIMPLEMENTATION TFooterParams : public TSectionParams
{
	typedef TSectionParams inherited;
	
private:
	System::WideString FRightText;
	System::WideString FLeftText;
	System::WideString FMiddleText;
	
public:
	virtual void __fastcall Assign(Classes::TPersistent* Source);
	virtual void __fastcall SaveToStream(Classes::TStream* Stream);
	virtual void __fastcall LoadFromStream(Classes::TStream* Stream);
	
__published:
	__property System::WideString LeftText = {read=FLeftText, write=FLeftText};
	__property System::WideString MiddleText = {read=FMiddleText, write=FMiddleText};
	__property System::WideString RightText = {read=FRightText, write=FRightText};
public:
	/* TSectionParams.Create */ inline __fastcall virtual TFooterParams(void) : TSectionParams() { }
	/* TSectionParams.Destroy */ inline __fastcall virtual ~TFooterParams(void) { }
	
};


//-- var, const, procedure ---------------------------------------------------
extern PACKAGE int DataVersion;

}	/* namespace Reportobj */
#if !defined(DELPHIHEADER_NO_IMPLICIT_NAMESPACE_USE)
using namespace Reportobj;
#endif
#pragma pack(pop)
#pragma option pop

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