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

// (DO NOT EDIT: machine generated header) 'RVGrIn.pas' rev: 4.00

#ifndef RVGrInHPP
#define RVGrInHPP

#pragma delphiheader begin
#pragma option push -w-
#include <RVTypes.hpp>	// Pascal unit
#include <ImgList.hpp>	// Pascal unit
#include <Classes.hpp>	// Pascal unit
#include <Controls.hpp>	// Pascal unit
#include <Graphics.hpp>	// Pascal unit
#include <Windows.hpp>	// Pascal unit
#include <SysInit.hpp>	// Pascal unit
#include <System.hpp>	// Pascal unit

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

namespace Rvgrin
{
//-- type declarations -------------------------------------------------------
class DELPHICLASS TRVGraphicInterface;
#pragma pack(push, 4)
class PASCALIMPLEMENTATION TRVGraphicInterface : public System::TObject 
{
	typedef System::TObject inherited;
	
public:
	virtual void __fastcall TextOut_A(Graphics::TCanvas* Canvas, int X, int Y, char * Str, int Length) = 0 
		;
	virtual void __fastcall TextOut_W(Graphics::TCanvas* Canvas, int X, int Y, wchar_t * Str, int Length
		) = 0 ;
	virtual void __fastcall TextOut_(Graphics::TCanvas* Canvas, int X, int Y, char * Str, int Length) = 0 
		;
	virtual void __fastcall ExtTextOut_A(Graphics::TCanvas* Canvas, int X, int Y, int Options, Windows::PRect 
		Rect, char * Str, int Length, Windows::PInteger Dx) = 0 ;
	virtual void __fastcall ExtTextOut_W(Graphics::TCanvas* Canvas, int X, int Y, int Options, Windows::PRect 
		Rect, wchar_t * Str, int Length, Windows::PInteger Dx) = 0 ;
	virtual void __fastcall ExtTextOut_(Graphics::TCanvas* Canvas, int X, int Y, int Options, Windows::PRect 
		Rect, char * Str, int Length, Windows::PInteger Dx) = 0 ;
	virtual void __fastcall DrawText(Graphics::TCanvas* Canvas, char * Str, int Length, Windows::TRect 
		&R, Classes::TAlignment Alignment) = 0 ;
	virtual void __fastcall GetTextExtentPoint32_A(Graphics::TCanvas* Canvas, char * Str, int Length, tagSIZE 
		&Size) = 0 ;
	virtual void __fastcall GetTextExtentPoint32_W(Graphics::TCanvas* Canvas, wchar_t * Str, int Length
		, tagSIZE &Size) = 0 ;
	virtual void __fastcall GetTextExtentPoint32_(Graphics::TCanvas* Canvas, char * Str, int Length, tagSIZE 
		&Size) = 0 ;
	int __fastcall TextWidth(Graphics::TCanvas* Canvas, const AnsiString S);
	int __fastcall TextHeight(Graphics::TCanvas* Canvas, const AnsiString S);
	virtual void __fastcall GetTextExtentExPoint_A(Graphics::TCanvas* Canvas, char * Str, int Length, int 
		MaxExtent, Windows::PInteger PFit, Windows::PInteger PDX, tagSIZE &Size) = 0 ;
	virtual void __fastcall GetTextExtentExPoint_W(Graphics::TCanvas* Canvas, wchar_t * Str, int Length
		, int MaxExtent, Windows::PInteger PFit, Windows::PInteger PDX, tagSIZE &Size) = 0 ;
	virtual unsigned __fastcall GetCharacterPlacement_A(Graphics::TCanvas* Canvas, char * Str, int Length
		, tagGCP_RESULTSA &Results, bool Ligate) = 0 ;
	virtual unsigned __fastcall GetCharacterPlacement_W(Graphics::TCanvas* Canvas, wchar_t * Str, int Length
		, tagGCP_RESULTSA &Results, bool Ligate) = 0 ;
	virtual unsigned __fastcall GetOutlineTextMetrics(Graphics::TCanvas* Canvas, unsigned Size, Windows::POutlineTextmetricA 
		POTM) = 0 ;
	virtual bool __fastcall GetTextMetrics(Graphics::TCanvas* Canvas, tagTEXTMETRICA &TM) = 0 ;
	virtual bool __fastcall FontHasLigationGlyphs(Graphics::TCanvas* Canvas) = 0 ;
	virtual void __fastcall SetTextAlign(Graphics::TCanvas* Canvas, unsigned Flags) = 0 ;
	virtual unsigned __fastcall GetTextAlign(Graphics::TCanvas* Canvas) = 0 ;
	virtual int __fastcall GetTextCharacterExtra(Graphics::TCanvas* Canvas) = 0 ;
	virtual void __fastcall SetTextCharacterExtra(Graphics::TCanvas* Canvas, int CharExtra) = 0 ;
	virtual void __fastcall SetLogFont(Graphics::TCanvas* Canvas, const tagLOGFONTA &LogFont) = 0 ;
	virtual unsigned __fastcall GetFontHandle(Graphics::TCanvas* Canvas);
	virtual unsigned __fastcall SetFontHandle(Graphics::TCanvas* Canvas, const unsigned FontHandle) = 0 
		;
	virtual void __fastcall SetDiagonalBrush(Graphics::TCanvas* Canvas, Graphics::TColor BackColor, Graphics::TColor 
		ForeColor, int XOrg, int YOrg) = 0 ;
	virtual Graphics::TCanvas* __fastcall CreateScreenCanvas(void) = 0 ;
	virtual void __fastcall DestroyScreenCanvas(Graphics::TCanvas* Canvas) = 0 ;
	virtual Graphics::TCanvas* __fastcall CreateCompatibleCanvas(Graphics::TCanvas* Canvas) = 0 ;
	virtual void __fastcall DestroyCompatibleCanvas(Graphics::TCanvas* Canvas) = 0 ;
	virtual Graphics::TCanvas* __fastcall CreatePrinterCanvas(void) = 0 ;
	virtual void __fastcall GetViewportExtEx(Graphics::TCanvas* Canvas, tagSIZE &Size) = 0 ;
	virtual void __fastcall GetViewportOrgEx(Graphics::TCanvas* Canvas, Windows::TPoint &Point) = 0 ;
	virtual void __fastcall GetWindowExtEx(Graphics::TCanvas* Canvas, tagSIZE &Size) = 0 ;
	virtual void __fastcall GetWindowOrgEx(Graphics::TCanvas* Canvas, Windows::TPoint &Point) = 0 ;
	virtual void __fastcall SetViewportExtEx(Graphics::TCanvas* Canvas, int XExt, int YExt, Windows::PSize 
		Size) = 0 ;
	virtual void __fastcall SetViewportOrgEx(Graphics::TCanvas* Canvas, int X, int Y, Windows::PPoint Point
		) = 0 ;
	virtual void __fastcall SetWindowExtEx(Graphics::TCanvas* Canvas, int XExt, int YExt, Windows::PSize 
		Size) = 0 ;
	virtual void __fastcall SetWindowOrgEx(Graphics::TCanvas* Canvas, int X, int Y, Windows::PPoint Point
		) = 0 ;
	virtual int __fastcall GetMapMode(Graphics::TCanvas* Canvas) = 0 ;
	virtual int __fastcall SetMapMode(Graphics::TCanvas* Canvas, int Mode) = 0 ;
	virtual void __fastcall InvalidateRect(Controls::TWinControl* Control, Windows::PRect lpRect) = 0 ;
		
	virtual void __fastcall IntersectClipRect(Graphics::TCanvas* Canvas, int X1, int Y1, int X2, int Y2
		) = 0 ;
	virtual void __fastcall IntersectClipRectEx(Graphics::TCanvas* Canvas, int X1, int Y1, int X2, int 
		Y2, HRGN &Rgn, bool &RgnValid) = 0 ;
	virtual void __fastcall RestoreClipRgn(Graphics::TCanvas* Canvas, unsigned Rgn, bool RgnValid) = 0 
		;
	virtual int __fastcall SaveCanvasState(Graphics::TCanvas* Canvas) = 0 ;
	virtual void __fastcall RestoreCanvasState(Graphics::TCanvas* Canvas, int State) = 0 ;
	virtual void __fastcall FillRect(Graphics::TCanvas* Canvas, const Windows::TRect &R);
	virtual void __fastcall FillColorRect(Graphics::TCanvas* Canvas, const Windows::TRect &R, Graphics::TColor 
		Color) = 0 ;
	virtual void __fastcall Rectangle(Graphics::TCanvas* Canvas, int X1, int Y1, int X2, int Y2);
	virtual void __fastcall Polyline(Graphics::TCanvas* Canvas, void *Points, int Count) = 0 ;
	virtual void __fastcall Polygon(Graphics::TCanvas* Canvas, const Windows::TPoint * Points, const int 
		Points_Size);
	void __fastcall Ellipse(Graphics::TCanvas* Canvas, int X1, int Y1, int X2, int Y2);
	virtual void __fastcall DrawFocusRect(Graphics::TCanvas* Canvas, const Windows::TRect &Rect);
	virtual void __fastcall MoveTo(Graphics::TCanvas* Canvas, int X, int Y);
	virtual void __fastcall LineTo(Graphics::TCanvas* Canvas, int X, int Y);
	void __fastcall Line(Graphics::TCanvas* Canvas, int X1, int Y1, int X2, int Y2);
	void __fastcall LineDragDropCaret(Graphics::TCanvas* Canvas, int X, int Y1, int Y2);
	void __fastcall DrawTableResizeVLine(Graphics::TCanvas* Canvas, int X, int Y1, int Y2);
	void __fastcall DrawTableResizeHLine(Graphics::TCanvas* Canvas, int X1, int X2, int Y);
	virtual void __fastcall DrawBitmap(Graphics::TCanvas* Canvas, int X, int Y, Graphics::TBitmap* bmp)
		 = 0 ;
	virtual void __fastcall StretchDrawBitmap(Graphics::TCanvas* Canvas, const Windows::TRect &R, Graphics::TBitmap* 
		bmp) = 0 ;
	virtual void __fastcall DrawGraphic(Graphics::TCanvas* Canvas, int X, int Y, Graphics::TGraphic* Graphic
		);
	virtual void __fastcall StretchDrawGraphic(Graphics::TCanvas* Canvas, const Windows::TRect &R, Graphics::TGraphic* 
		Graphic);
	virtual void __fastcall PrintBitmap(Graphics::TCanvas* Canvas, const Windows::TRect &R, Graphics::TBitmap* 
		bmp);
	virtual void __fastcall CopyRect(Graphics::TCanvas* DestCanvas, const Windows::TRect &Dest, Graphics::TCanvas* 
		SourceCanvas, const Windows::TRect &Source);
	virtual void __fastcall DrawImageList(Graphics::TCanvas* Canvas, Imglist::TCustomImageList* ImageList
		, int Index, int X, int Y, Graphics::TColor BlendColor) = 0 ;
	virtual int __fastcall GetDeviceCaps(Graphics::TCanvas* Canvas, int Index) = 0 ;
public:
	#pragma option push -w-inl
	/* TObject.Create */ inline __fastcall TRVGraphicInterface(void) : System::TObject() { }
	#pragma option pop
	#pragma option push -w-inl
	/* TObject.Destroy */ inline __fastcall virtual ~TRVGraphicInterface(void) { }
	#pragma option pop
	
};

#pragma pack(pop)

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

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

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