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

// (DO NOT EDIT: machine generated header) 'PJTextGrid.pas' rev: 5.00

#ifndef PJTextGridHPP
#define PJTextGridHPP

#pragma delphiheader begin
#pragma option push -w-
#pragma option push -Vx
#include <PSCommon.hpp>	// Pascal unit
#include <Printers.hpp>	// Pascal unit
#include <PJGrid.hpp>	// Pascal unit
#include <PSJob.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 Pjtextgrid
{
//-- type declarations -------------------------------------------------------
#pragma option push -b-
enum TClipMode { cmNone, cmClip, cmEllipsis };
#pragma option pop

class DELPHICLASS TCustomTextGridPrintJob;
class PASCALIMPLEMENTATION TCustomTextGridPrintJob : public Pjgrid::TCustomGridPrintJob 
{
	typedef Pjgrid::TCustomGridPrintJob inherited;
	
private:
	Graphics::TFont* FHeaderFont;
	Graphics::TFont* FPageFont;
	Graphics::TFont* FFooterFont;
	TClipMode FClipMode;
	void __fastcall SetHeaderFont(const Graphics::TFont* Value);
	void __fastcall SetPageFont(const Graphics::TFont* Value);
	void __fastcall SetFooterFont(const Graphics::TFont* Value);
	void __fastcall SetClipMode(const TClipMode Value);
	
protected:
	__property Graphics::TFont* HeaderFont = {read=FHeaderFont, write=SetHeaderFont};
	__property Graphics::TFont* PageFont = {read=FPageFont, write=SetPageFont};
	__property Graphics::TFont* FooterFont = {read=FFooterFont, write=SetFooterFont};
	__property TClipMode ClipMode = {read=FClipMode, write=SetClipMode, nodefault};
	
public:
	__fastcall virtual TCustomTextGridPrintJob(Classes::TComponent* AOwner);
	__fastcall virtual ~TCustomTextGridPrintJob(void);
	virtual void __fastcall DrawCell(Graphics::TCanvas* TheCanvas, const Windows::TRect &Rect, int APageIndex
		, int ACol, int ARow, Psjob::TDrawTarget Target);
	virtual int __fastcall GetColWidth(Graphics::TCanvas* TheCanvas, int ACol);
	virtual AnsiString __fastcall GetCellText(int APageIndex, int ACol, int ARow);
	virtual Classes::TAlignment __fastcall GetCellAlignment(int ACol, int ARow);
};


class DELPHICLASS TSpecialTextGridPrintJob;
class PASCALIMPLEMENTATION TSpecialTextGridPrintJob : public TCustomTextGridPrintJob 
{
	typedef TCustomTextGridPrintJob inherited;
	
public:
	virtual void __fastcall DrawArea(Graphics::TCanvas* TheCanvas, int PageIndex, const Windows::TRect 
		&Rect, Psjob::TDrawArea Area, Psjob::TDrawTarget Target);
public:
	#pragma option push -w-inl
	/* TCustomTextGridPrintJob.Create */ inline __fastcall virtual TSpecialTextGridPrintJob(Classes::TComponent* 
		AOwner) : TCustomTextGridPrintJob(AOwner) { }
	#pragma option pop
	#pragma option push -w-inl
	/* TCustomTextGridPrintJob.Destroy */ inline __fastcall virtual ~TSpecialTextGridPrintJob(void) { }
		
	#pragma option pop
	
};


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

}	/* namespace Pjtextgrid */
#if !defined(NO_IMPLICIT_NAMESPACE_USE)
using namespace Pjtextgrid;
#endif
#pragma option pop	// -w-
#pragma option pop	// -Vx

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