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

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

#ifndef PJRichEditHPP
#define PJRichEditHPP

#pragma delphiheader begin
#pragma option push -w-
#pragma option push -Vx
#include <RichEdit.hpp>	// Pascal unit
#include <ComCtrls.hpp>	// Pascal unit
#include <Printers.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 Pjrichedit
{
//-- type declarations -------------------------------------------------------
class DELPHICLASS TPageRange;
class PASCALIMPLEMENTATION TPageRange : public System::TObject 
{
	typedef System::TObject inherited;
	
public:
	int StartChar;
	int EndChar;
	__fastcall TPageRange(int AStartChar, int AEndChar);
public:
	#pragma option push -w-inl
	/* TObject.Destroy */ inline __fastcall virtual ~TPageRange(void) { }
	#pragma option pop
	
};


class DELPHICLASS TCustomRichEditPrintJob;
class PASCALIMPLEMENTATION TCustomRichEditPrintJob : public Psjob::TCustomPrintJob 
{
	typedef Psjob::TCustomPrintJob inherited;
	
private:
	Classes::TList* FPages;
	Comctrls::TCustomRichEdit* FRichEdit;
	Psjob::TPSProgressEvent FOnUpdateProgress;
	void __fastcall SetRichEdit(const Comctrls::TCustomRichEdit* Value);
	void __fastcall ClearPages(void);
	
protected:
	__property Comctrls::TCustomRichEdit* RichEdit = {read=FRichEdit, write=SetRichEdit};
	__property Psjob::TPSProgressEvent OnUpdateProgress = {read=FOnUpdateProgress, write=FOnUpdateProgress
		};
	
public:
	__fastcall virtual TCustomRichEditPrintJob(Classes::TComponent* AOwner);
	__fastcall virtual ~TCustomRichEditPrintJob(void);
	virtual void __fastcall Update(void);
	virtual void __fastcall DrawArea(Graphics::TCanvas* TheCanvas, int PageIndex, const Windows::TRect 
		&Rect, Psjob::TDrawArea Area, Psjob::TDrawTarget Target);
};


class DELPHICLASS TRichEditPrintJob;
class PASCALIMPLEMENTATION TRichEditPrintJob : public TCustomRichEditPrintJob 
{
	typedef TCustomRichEditPrintJob inherited;
	
__published:
	__property RichEdit ;
	__property OnUpdateProgress ;
	__property Title ;
	__property Margins ;
	__property MarginsUnits ;
	__property Header ;
	__property HeaderUnits ;
	__property Footer ;
	__property FooterUnits ;
	__property PageMode ;
	__property PageWidth ;
	__property PageHeight ;
	__property PageUnits ;
	__property Orientation ;
	__property Options ;
	__property OnCreate ;
	__property OnDestroy ;
	__property OnDraw ;
	__property OnPrinterSetupChange ;
	__property OnStartPrint ;
	__property OnEndPrint ;
	__property OnPrintProgress ;
	__property OnStartPrintPage ;
	__property OnEndPrintPage ;
	__property OnUpdate ;
public:
	#pragma option push -w-inl
	/* TCustomRichEditPrintJob.Create */ inline __fastcall virtual TRichEditPrintJob(Classes::TComponent* 
		AOwner) : TCustomRichEditPrintJob(AOwner) { }
	#pragma option pop
	#pragma option push -w-inl
	/* TCustomRichEditPrintJob.Destroy */ inline __fastcall virtual ~TRichEditPrintJob(void) { }
	#pragma option pop
	
};


//-- var, const, procedure ---------------------------------------------------
extern PACKAGE void __fastcall Register(void);

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

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