You've already forked lazarus-ccr
LazMapViewer: Clean up. Consistent naming of drawing engine classes.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6927 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
@ -25,6 +25,7 @@ object MainForm: TMainForm
|
||||
DefaultTrackWidth = 3
|
||||
DownloadEngine = MapView.BuiltInDLE
|
||||
DrawingEngine = MapView.BuiltInDE
|
||||
Font.Color = clBlack
|
||||
InactiveColor = clWhite
|
||||
MapProvider = 'OpenStreetMap Mapnik'
|
||||
UseThreads = True
|
||||
|
@ -92,8 +92,8 @@ type
|
||||
procedure ZoomTrackBarChange(Sender: TObject);
|
||||
|
||||
private
|
||||
FLCLDrawingEngine: TLCLDrawingEngine;
|
||||
FRGBGraphicsDrawingEngine: TRGBGraphicsDrawingEngine;
|
||||
FLCLDrawingEngine: TMvLCLDrawingEngine;
|
||||
FRGBGraphicsDrawingEngine: TMvRGBGraphicsDrawingEngine;
|
||||
procedure ClearFoundLocations;
|
||||
procedure UpdateCoords(X, Y: Integer);
|
||||
procedure UpdateDropdownWidth(ACombobox: TCombobox);
|
||||
@ -241,12 +241,12 @@ begin
|
||||
case CbDrawingEngine.ItemIndex of
|
||||
0: MapView.DrawingEngine := nil;
|
||||
1: begin
|
||||
if FLCLDrawingEngine = nil then FLCLDrawingEngine := TLCLDrawingEngine.Create(self);
|
||||
if FLCLDrawingEngine = nil then FLCLDrawingEngine := TMvLCLDrawingEngine.Create(self);
|
||||
MapView.DrawingEngine := FLCLDrawingEngine;
|
||||
end;
|
||||
2: begin
|
||||
if FRGBGraphicsDrawingEngine = nil then
|
||||
FRGBGraphicsDrawingEngine := TRGBGraphicsDrawingEngine.Create(self);
|
||||
FRGBGraphicsDrawingEngine := TMvRGBGraphicsDrawingEngine.Create(self);
|
||||
MapView.DrawingEngine := FRGBGraphicsDrawingEngine;
|
||||
end;
|
||||
end;
|
||||
|
@ -10,7 +10,7 @@ uses
|
||||
mvDrawingEngine;
|
||||
|
||||
type
|
||||
TIntfGraphicsDrawingEngine = class(TMvCustomDrawingEngine)
|
||||
TMvIntfGraphicsDrawingEngine = class(TMvCustomDrawingEngine)
|
||||
private
|
||||
FBuffer: TLazIntfImage;
|
||||
FCanvas: TFPCustomCanvas;
|
||||
@ -112,21 +112,21 @@ end;
|
||||
{$IFEND}
|
||||
|
||||
|
||||
destructor TIntfGraphicsDrawingEngine.Destroy;
|
||||
destructor TMvIntfGraphicsDrawingEngine.Destroy;
|
||||
begin
|
||||
FCanvas.Free;
|
||||
FBuffer.Free;
|
||||
inherited;
|
||||
end;
|
||||
|
||||
procedure TIntfGraphicsDrawingEngine.CreateBuffer(AWidth, AHeight: Integer);
|
||||
procedure TMvIntfGraphicsDrawingEngine.CreateBuffer(AWidth, AHeight: Integer);
|
||||
begin
|
||||
FCanvas.Free;
|
||||
FBuffer.Free;
|
||||
CreateLazIntfImageAndCanvas(FBuffer, FCanvas, AWidth, AHeight);
|
||||
end;
|
||||
|
||||
procedure TIntfGraphicsDrawingEngine.CreateLazIntfImageAndCanvas(
|
||||
procedure TMvIntfGraphicsDrawingEngine.CreateLazIntfImageAndCanvas(
|
||||
out ABuffer: TLazIntfImage;
|
||||
out ACanvas: TFPCustomCanvas; AWidth, AHeight: Integer);
|
||||
var
|
||||
@ -145,7 +145,7 @@ begin
|
||||
ACanvas.FillRect(0, 0, AWidth, AHeight);
|
||||
end;
|
||||
|
||||
procedure TIntfGraphicsDrawingEngine.DrawLazIntfImage(X, Y: Integer;
|
||||
procedure TMvIntfGraphicsDrawingEngine.DrawLazIntfImage(X, Y: Integer;
|
||||
AImg: TLazIntfImage);
|
||||
begin
|
||||
{$IF Laz_FullVersion < 1090000}
|
||||
@ -156,19 +156,19 @@ begin
|
||||
{$IFEND}
|
||||
end;
|
||||
|
||||
procedure TIntfGraphicsDrawingEngine.Ellipse(X1, Y1, X2, Y2: Integer);
|
||||
procedure TMvIntfGraphicsDrawingEngine.Ellipse(X1, Y1, X2, Y2: Integer);
|
||||
begin
|
||||
if FCanvas <> nil then
|
||||
FCanvas.Ellipse(X1,Y1, X2, Y2);
|
||||
end;
|
||||
|
||||
procedure TIntfGraphicsDrawingEngine.FillRect(X1, Y1, X2, Y2: Integer);
|
||||
procedure TMvIntfGraphicsDrawingEngine.FillRect(X1, Y1, X2, Y2: Integer);
|
||||
begin
|
||||
if FCanvas <> nil then
|
||||
FCanvas.FillRect(X1,Y1, X2, Y2);
|
||||
end;
|
||||
|
||||
function TIntfGraphicsDrawingEngine.GetBrushColor: TColor;
|
||||
function TMvIntfGraphicsDrawingEngine.GetBrushColor: TColor;
|
||||
begin
|
||||
if FCanvas <> nil then
|
||||
Result := FPColorToTColor(FCanvas.Brush.FPColor)
|
||||
@ -176,7 +176,7 @@ begin
|
||||
Result := 0;
|
||||
end;
|
||||
|
||||
function TIntfGraphicsDrawingEngine.GetBrushStyle: TBrushStyle;
|
||||
function TMvIntfGraphicsDrawingEngine.GetBrushStyle: TBrushStyle;
|
||||
begin
|
||||
if FCanvas <> nil then
|
||||
Result := FCanvas.Brush.Style
|
||||
@ -184,27 +184,27 @@ begin
|
||||
Result := bsSolid;
|
||||
end;
|
||||
|
||||
function TIntfGraphicsDrawingEngine.GetFontColor: TColor;
|
||||
function TMvIntfGraphicsDrawingEngine.GetFontColor: TColor;
|
||||
begin
|
||||
Result := FFontColor
|
||||
end;
|
||||
|
||||
function TIntfGraphicsDrawingEngine.GetFontName: String;
|
||||
function TMvIntfGraphicsDrawingEngine.GetFontName: String;
|
||||
begin
|
||||
Result := FFontName;
|
||||
end;
|
||||
|
||||
function TIntfGraphicsDrawingEngine.GetFontSize: Integer;
|
||||
function TMvIntfGraphicsDrawingEngine.GetFontSize: Integer;
|
||||
begin
|
||||
Result := FFontSize;
|
||||
end;
|
||||
|
||||
function TIntfGraphicsDrawingEngine.GetFontStyle: TFontStyles;
|
||||
function TMvIntfGraphicsDrawingEngine.GetFontStyle: TFontStyles;
|
||||
begin
|
||||
Result := FFontStyle;
|
||||
end;
|
||||
|
||||
function TIntfGraphicsDrawingEngine.GetPenColor: TColor;
|
||||
function TMvIntfGraphicsDrawingEngine.GetPenColor: TColor;
|
||||
begin
|
||||
if FCanvas <> nil then
|
||||
Result := FPColorToTColor(FCanvas.Pen.FPColor)
|
||||
@ -212,7 +212,7 @@ begin
|
||||
Result := 0;
|
||||
end;
|
||||
|
||||
function TIntfGraphicsDrawingEngine.GetPenWidth: Integer;
|
||||
function TMvIntfGraphicsDrawingEngine.GetPenWidth: Integer;
|
||||
begin
|
||||
if FCanvas <> nil then
|
||||
Result := FCanvas.Pen.Width
|
||||
@ -220,13 +220,13 @@ begin
|
||||
Result := 0;
|
||||
end;
|
||||
|
||||
procedure TIntfGraphicsDrawingEngine.Line(X1, Y1, X2, Y2: Integer);
|
||||
procedure TMvIntfGraphicsDrawingEngine.Line(X1, Y1, X2, Y2: Integer);
|
||||
begin
|
||||
if FCanvas <> nil then
|
||||
FCanvas.Line(X1, Y1, X2, Y2);
|
||||
end;
|
||||
|
||||
procedure TIntfGraphicsDrawingEngine.PaintToCanvas(ACanvas: TCanvas);
|
||||
procedure TMvIntfGraphicsDrawingEngine.PaintToCanvas(ACanvas: TCanvas);
|
||||
var
|
||||
bmp: TBitmap;
|
||||
begin
|
||||
@ -243,13 +243,13 @@ begin
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TIntfGraphicsDrawingEngine.Rectangle(X1, Y1, X2, Y2: Integer);
|
||||
procedure TMvIntfGraphicsDrawingEngine.Rectangle(X1, Y1, X2, Y2: Integer);
|
||||
begin
|
||||
if FCanvas <> nil then
|
||||
FCanvas.Rectangle(X1,Y1, X2, Y2);
|
||||
end;
|
||||
|
||||
function TIntfGraphicsDrawingEngine.SaveToImage(AClass: TRasterImageClass): TRasterImage;
|
||||
function TMvIntfGraphicsDrawingEngine.SaveToImage(AClass: TRasterImageClass): TRasterImage;
|
||||
begin
|
||||
Result := AClass.Create;
|
||||
Result.Width := FBuffer.Width;
|
||||
@ -258,51 +258,51 @@ begin
|
||||
Result.LoadFromIntfImage(FBuffer);
|
||||
end;
|
||||
|
||||
procedure TIntfGraphicsDrawingEngine.SetBrushColor(AValue: TColor);
|
||||
procedure TMvIntfGraphicsDrawingEngine.SetBrushColor(AValue: TColor);
|
||||
begin
|
||||
if FCanvas <> nil then
|
||||
FCanvas.Brush.FPColor := TColorToFPColor(AValue);
|
||||
end;
|
||||
|
||||
procedure TIntfGraphicsDrawingEngine.SetBrushStyle(AValue: TBrushStyle);
|
||||
procedure TMvIntfGraphicsDrawingEngine.SetBrushStyle(AValue: TBrushStyle);
|
||||
begin
|
||||
if FCanvas <> nil then
|
||||
FCanvas.Brush.Style := AValue;
|
||||
end;
|
||||
|
||||
procedure TIntfGraphicsDrawingEngine.SetFontColor(AValue: TColor);
|
||||
procedure TMvIntfGraphicsDrawingEngine.SetFontColor(AValue: TColor);
|
||||
begin
|
||||
FFontColor := AValue;
|
||||
end;
|
||||
|
||||
procedure TIntfGraphicsDrawingEngine.SetFontName(AValue: String);
|
||||
procedure TMvIntfGraphicsDrawingEngine.SetFontName(AValue: String);
|
||||
begin
|
||||
FFontName := AValue;
|
||||
end;
|
||||
|
||||
procedure TIntfGraphicsDrawingEngine.SetFontSize(AValue: Integer);
|
||||
procedure TMvIntfGraphicsDrawingEngine.SetFontSize(AValue: Integer);
|
||||
begin
|
||||
FFontSize := AValue;
|
||||
end;
|
||||
|
||||
procedure TIntfGraphicsDrawingEngine.SetFontStyle(AValue: TFontStyles);
|
||||
procedure TMvIntfGraphicsDrawingEngine.SetFontStyle(AValue: TFontStyles);
|
||||
begin
|
||||
FFontStyle := AValue;
|
||||
end;
|
||||
|
||||
procedure TIntfGraphicsDrawingEngine.SetPenColor(AValue: TColor);
|
||||
procedure TMvIntfGraphicsDrawingEngine.SetPenColor(AValue: TColor);
|
||||
begin
|
||||
if FCanvas <> nil then
|
||||
FCanvas.Pen.FPColor := TColorToFPColor(AValue);
|
||||
end;
|
||||
|
||||
procedure TIntfGraphicsDrawingEngine.SetPenWidth(AValue: Integer);
|
||||
procedure TMvIntfGraphicsDrawingEngine.SetPenWidth(AValue: Integer);
|
||||
begin
|
||||
if FCanvas <> nil then
|
||||
FCanvas.Pen.Width := AValue;
|
||||
end;
|
||||
|
||||
function TIntfGraphicsDrawingEngine.TextExtent(const AText: String): TSize;
|
||||
function TMvIntfGraphicsDrawingEngine.TextExtent(const AText: String): TSize;
|
||||
var
|
||||
bmp: TBitmap;
|
||||
begin
|
||||
@ -318,7 +318,7 @@ begin
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TIntfGraphicsDrawingEngine.TextOut(X, Y: Integer; const AText: String);
|
||||
procedure TMvIntfGraphicsDrawingEngine.TextOut(X, Y: Integer; const AText: String);
|
||||
var
|
||||
bmp: TBitmap;
|
||||
ex: TSize;
|
||||
|
@ -9,7 +9,7 @@ uses
|
||||
mvDrawingEngine;
|
||||
|
||||
type
|
||||
TLCLDrawingEngine = class(TMvCustomDrawingEngine)
|
||||
TMvLCLDrawingEngine = class(TMvCustomDrawingEngine)
|
||||
private
|
||||
FBuffer: TBitmap;
|
||||
protected
|
||||
@ -45,13 +45,16 @@ type
|
||||
|
||||
implementation
|
||||
|
||||
destructor TLCLDrawingEngine.Destroy;
|
||||
uses
|
||||
LCLType;
|
||||
|
||||
destructor TMvLCLDrawingEngine.Destroy;
|
||||
begin
|
||||
FBuffer.Free;
|
||||
inherited;
|
||||
end;
|
||||
|
||||
procedure TLCLDrawingEngine.CreateBuffer(AWidth, AHeight: Integer);
|
||||
procedure TMvLCLDrawingEngine.CreateBuffer(AWidth, AHeight: Integer);
|
||||
begin
|
||||
FBuffer.Free;
|
||||
FBuffer := TBitmap.Create;
|
||||
@ -59,11 +62,11 @@ begin
|
||||
FBuffer.SetSize(AWidth, AHeight);
|
||||
end;
|
||||
|
||||
procedure TLCLDrawingEngine.DrawLazIntfImage(X, Y: Integer;
|
||||
procedure TMvLCLDrawingEngine.DrawLazIntfImage(X, Y: Integer;
|
||||
AImg: TLazIntfImage);
|
||||
var
|
||||
bmp: TBitmap;
|
||||
h, mh: THandle;
|
||||
h, mh: HBITMAP;
|
||||
begin
|
||||
bmp := TBitmap.Create;
|
||||
try
|
||||
@ -78,72 +81,72 @@ begin
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TLCLDrawingEngine.Ellipse(X1, Y1, X2, Y2: Integer);
|
||||
procedure TMvLCLDrawingEngine.Ellipse(X1, Y1, X2, Y2: Integer);
|
||||
begin
|
||||
FBuffer.Canvas.Ellipse(X1,Y1, X2, Y2);
|
||||
end;
|
||||
|
||||
procedure TLCLDrawingEngine.FillRect(X1, Y1, X2, Y2: Integer);
|
||||
procedure TMvLCLDrawingEngine.FillRect(X1, Y1, X2, Y2: Integer);
|
||||
begin
|
||||
FBuffer.Canvas.FillRect(X1,Y1, X2, Y2);
|
||||
end;
|
||||
|
||||
function TLCLDrawingEngine.GetBrushColor: TColor;
|
||||
function TMvLCLDrawingEngine.GetBrushColor: TColor;
|
||||
begin
|
||||
Result := FBuffer.Canvas.Brush.Color;
|
||||
end;
|
||||
|
||||
function TLCLDrawingEngine.GetBrushStyle: TBrushStyle;
|
||||
function TMvLCLDrawingEngine.GetBrushStyle: TBrushStyle;
|
||||
begin
|
||||
Result := FBuffer.Canvas.Brush.Style
|
||||
end;
|
||||
|
||||
function TLCLDrawingEngine.GetFontColor: TColor;
|
||||
function TMvLCLDrawingEngine.GetFontColor: TColor;
|
||||
begin
|
||||
Result := FBuffer.Canvas.Font.Color
|
||||
end;
|
||||
|
||||
function TLCLDrawingEngine.GetFontName: String;
|
||||
function TMvLCLDrawingEngine.GetFontName: String;
|
||||
begin
|
||||
Result := FBuffer.Canvas.Font.Name;
|
||||
end;
|
||||
|
||||
function TLCLDrawingEngine.GetFontSize: Integer;
|
||||
function TMvLCLDrawingEngine.GetFontSize: Integer;
|
||||
begin
|
||||
Result := FBuffer.Canvas.Font.Size;
|
||||
end;
|
||||
|
||||
function TLCLDrawingEngine.GetFontStyle: TFontStyles;
|
||||
function TMvLCLDrawingEngine.GetFontStyle: TFontStyles;
|
||||
begin
|
||||
Result := FBuffer.Canvas.Font.Style;
|
||||
end;
|
||||
|
||||
function TLCLDrawingEngine.GetPenColor: TColor;
|
||||
function TMvLCLDrawingEngine.GetPenColor: TColor;
|
||||
begin
|
||||
Result := FBuffer.Canvas.Pen.Color;
|
||||
end;
|
||||
|
||||
function TLCLDrawingEngine.GetPenWidth: Integer;
|
||||
function TMvLCLDrawingEngine.GetPenWidth: Integer;
|
||||
begin
|
||||
Result := FBuffer.Canvas.Pen.Width;
|
||||
end;
|
||||
|
||||
procedure TLCLDrawingEngine.Line(X1, Y1, X2, Y2: Integer);
|
||||
procedure TMvLCLDrawingEngine.Line(X1, Y1, X2, Y2: Integer);
|
||||
begin
|
||||
FBuffer.Canvas.Line(X1, Y1, X2, Y2);
|
||||
end;
|
||||
|
||||
procedure TLCLDrawingEngine.PaintToCanvas(ACanvas: TCanvas);
|
||||
procedure TMvLCLDrawingEngine.PaintToCanvas(ACanvas: TCanvas);
|
||||
begin
|
||||
ACanvas.Draw(0, 0, FBuffer);
|
||||
end;
|
||||
|
||||
procedure TLCLDrawingEngine.Rectangle(X1, Y1, X2, Y2: Integer);
|
||||
procedure TMvLCLDrawingEngine.Rectangle(X1, Y1, X2, Y2: Integer);
|
||||
begin
|
||||
FBuffer.Canvas.Rectangle(X1,Y1, X2, Y2);
|
||||
end;
|
||||
|
||||
function TLCLDrawingEngine.SaveToImage(AClass: TRasterImageClass): TRasterImage;
|
||||
function TMvLCLDrawingEngine.SaveToImage(AClass: TRasterImageClass): TRasterImage;
|
||||
begin
|
||||
Result := AClass.Create;
|
||||
Result.Width := FBuffer.Width;
|
||||
@ -152,52 +155,52 @@ begin
|
||||
Result.Canvas.Draw(0, 0, FBuffer);
|
||||
end;
|
||||
|
||||
procedure TLCLDrawingEngine.SetBrushColor(AValue: TColor);
|
||||
procedure TMvLCLDrawingEngine.SetBrushColor(AValue: TColor);
|
||||
begin
|
||||
FBuffer.Canvas.Brush.Color := AValue;
|
||||
end;
|
||||
|
||||
procedure TLCLDrawingEngine.SetBrushStyle(AValue: TBrushStyle);
|
||||
procedure TMvLCLDrawingEngine.SetBrushStyle(AValue: TBrushStyle);
|
||||
begin
|
||||
FBuffer.Canvas.Brush.Style := AValue;
|
||||
end;
|
||||
|
||||
procedure TLCLDrawingEngine.SetFontColor(AValue: TColor);
|
||||
procedure TMvLCLDrawingEngine.SetFontColor(AValue: TColor);
|
||||
begin
|
||||
FBuffer.Canvas.Font.Color := AValue;
|
||||
end;
|
||||
|
||||
procedure TLCLDrawingEngine.SetFontName(AValue: String);
|
||||
procedure TMvLCLDrawingEngine.SetFontName(AValue: String);
|
||||
begin
|
||||
FBuffer.Canvas.Font.Name := AValue;
|
||||
end;
|
||||
|
||||
procedure TLCLDrawingEngine.SetFontSize(AValue: Integer);
|
||||
procedure TMvLCLDrawingEngine.SetFontSize(AValue: Integer);
|
||||
begin
|
||||
FBuffer.Canvas.Font.Size := AValue;
|
||||
end;
|
||||
|
||||
procedure TLCLDrawingEngine.SetFontStyle(AValue: TFontStyles);
|
||||
procedure TMvLCLDrawingEngine.SetFontStyle(AValue: TFontStyles);
|
||||
begin
|
||||
FBuffer.Canvas.Font.Style := AValue;
|
||||
end;
|
||||
|
||||
procedure TLCLDrawingEngine.SetPenColor(AValue: TColor);
|
||||
procedure TMvLCLDrawingEngine.SetPenColor(AValue: TColor);
|
||||
begin
|
||||
FBuffer.Canvas.Pen.Color := AValue;
|
||||
end;
|
||||
|
||||
procedure TLCLDrawingEngine.SetPenWidth(AValue: Integer);
|
||||
procedure TMvLCLDrawingEngine.SetPenWidth(AValue: Integer);
|
||||
begin
|
||||
FBuffer.Canvas.Pen.Width := AValue;
|
||||
end;
|
||||
|
||||
function TLCLDrawingEngine.TextExtent(const AText: String): TSize;
|
||||
function TMvLCLDrawingEngine.TextExtent(const AText: String): TSize;
|
||||
begin
|
||||
Result := FBuffer.Canvas.TextExtent(AText)
|
||||
end;
|
||||
|
||||
procedure TLCLDrawingEngine.TextOut(X, Y: Integer; const AText: String);
|
||||
procedure TMvLCLDrawingEngine.TextOut(X, Y: Integer; const AText: String);
|
||||
begin
|
||||
if (AText <> '') then
|
||||
FBuffer.Canvas.TextOut(X, Y, AText);
|
||||
|
@ -749,7 +749,6 @@ var
|
||||
stream: TFileStream;
|
||||
doc: TXMLDocument = nil;
|
||||
node, layerNode: TDOMNode;
|
||||
attr: TDOMNamedNodeMap;
|
||||
providerName: String;
|
||||
url: String;
|
||||
minZoom: Integer;
|
||||
|
@ -60,8 +60,6 @@ type
|
||||
PISOTimeRec = ^TISOTimeRec;
|
||||
const
|
||||
NUMBER: array['0'..'9'] of Integer = (0, 1, 2, 3, 4, 5, 6, 7, 8, 9);
|
||||
const
|
||||
ZERO = ord('0');
|
||||
var
|
||||
yr,mon,dy, hr,mn,sec,s1000: Integer;
|
||||
begin
|
||||
@ -160,7 +158,6 @@ procedure TGpxReader.LoadFromStream(AStream: TStream; AList: TGpsObjectList;
|
||||
out ABounds: TRealArea);
|
||||
var
|
||||
doc: TXMLDocument = nil;
|
||||
node: TDOMNode;
|
||||
begin
|
||||
try
|
||||
ID := random(MaxInt - 1000) + 1000;
|
||||
|
@ -41,15 +41,6 @@ Type
|
||||
FEngine: TMapViewerEngine;
|
||||
FBuiltinDrawingEngine: TMvCustomDrawingEngine;
|
||||
FDrawingEngine: TMvCustomDrawingEngine;
|
||||
(*
|
||||
{$IFDEF USE_RGBGRAPHICS}
|
||||
Buffer: TRGB32Bitmap;
|
||||
{$ENDIF}
|
||||
{$IFDEF USE_LAZINTFIMAGE}
|
||||
Buffer: TLazIntfImage;
|
||||
BufferCanvas: TFPCustomCanvas;
|
||||
{$ENDIF}
|
||||
*)
|
||||
FActive: boolean;
|
||||
FGPSItems: TGPSObjectList;
|
||||
FInactiveColor: TColor;
|
||||
@ -167,7 +158,7 @@ implementation
|
||||
uses
|
||||
GraphType, mvJobQueue, mvExtraData, mvDLEFpc, mvDE_IntfGraphics;
|
||||
|
||||
Type
|
||||
type
|
||||
|
||||
{ TDrawObjJob }
|
||||
|
||||
@ -496,47 +487,16 @@ begin
|
||||
inherited DoOnResize;
|
||||
//cancel all rendering threads
|
||||
Engine.CancelCurrentDrawing;
|
||||
(*
|
||||
FreeAndNil(Buffer);
|
||||
{$IFDEF USE_RGBGRAPHICS}
|
||||
Buffer := TRGB32Bitmap.Create(ClientWidth,ClientHeight);
|
||||
{$ENDIF}
|
||||
{$IFDEF USE_LAZINTFIMAGE}
|
||||
BufferCanvas.Free;
|
||||
CreateLazIntfImageAndCanvas(Buffer, BufferCanvas, ClientWidth, ClientHeight);
|
||||
{$ENDIF}
|
||||
*)
|
||||
DrawingEngine.CreateBuffer(ClientWidth, ClientHeight);
|
||||
if IsActive then
|
||||
Engine.SetSize(ClientWidth, ClientHeight);
|
||||
end;
|
||||
|
||||
procedure TMapView.Paint;
|
||||
var
|
||||
bmp: TBitmap;
|
||||
begin
|
||||
inherited Paint;
|
||||
if IsActive then
|
||||
DrawingEngine.PaintToCanvas(Canvas)
|
||||
(*
|
||||
if IsActive and Assigned(Buffer) then
|
||||
begin
|
||||
{$IFDEF USE_RGBGRAPHICS}
|
||||
Buffer.Canvas.DrawTo(Canvas,0,0);
|
||||
{$ENDIF}
|
||||
{$IFDEF USE_LAZINTFIMAGE}
|
||||
bmp := TBitmap.Create;
|
||||
try
|
||||
bmp.PixelFormat := pf32Bit;
|
||||
bmp.SetSize(Buffer.Width, Buffer.Height);
|
||||
bmp.LoadFromIntfImage(Buffer);
|
||||
Canvas.Draw(0, 0, bmp);
|
||||
finally
|
||||
bmp.Free;
|
||||
end;
|
||||
{$ENDIF}
|
||||
end
|
||||
*)
|
||||
else
|
||||
begin
|
||||
Canvas.Brush.Color := InactiveColor;
|
||||
@ -578,7 +538,7 @@ var
|
||||
trkColor: TColor;
|
||||
trkWidth: Integer;
|
||||
begin
|
||||
if trk.Points.Count>0 then
|
||||
if trk.Points.Count > 0 then
|
||||
begin
|
||||
trkColor := FDefaultTrackColor;
|
||||
trkWidth := FDefaultTrackWidth;
|
||||
@ -591,6 +551,8 @@ begin
|
||||
end;
|
||||
if trkWidth < 1 then trkWidth := 1;
|
||||
LastInside := false;
|
||||
DrawingEngine.PenColor := trkColor;
|
||||
DrawingEngine.PenWidth := trkWidth;
|
||||
for i:=0 to pred(trk.Points.Count) do
|
||||
begin
|
||||
aPt := trk.Points[i].RealPoint;
|
||||
@ -602,18 +564,6 @@ begin
|
||||
begin
|
||||
if not LastInside then
|
||||
Old := Engine.LonLatToScreen(trk.Points[pred(i)].RealPoint);
|
||||
(*
|
||||
{$IFDEF USE_RGBGRAPHICS}
|
||||
Buffer.Canvas.OutlineColor := trkColor;
|
||||
// --- no linewidth support in RGBGraphics ---
|
||||
Buffer.Canvas.Line(Old.X, Old.y, New.X, New.Y);
|
||||
{$ENDIF}
|
||||
{$IFDEF USE_LAZINTFIMAGE}
|
||||
BufferCanvas.Pen.FPColor := TColorToFPColor(trkColor);
|
||||
BufferCanvas.Pen.Width := trkWidth;
|
||||
BufferCanvas.Line(Old.X, Old.Y, New.X, New.Y);
|
||||
{$ENDIF}
|
||||
*)
|
||||
DrawingEngine.Line(Old.X, Old.Y, New.X, New.Y);
|
||||
end;
|
||||
Old := New;
|
||||
@ -630,14 +580,6 @@ var
|
||||
begin
|
||||
if Assigned(FOnDrawGpsPoint) then begin
|
||||
FOnDrawGpsPoint(Self, DrawingEngine, aPOI);
|
||||
(*
|
||||
{$IFDEF USE_RGBGRAPHICS}
|
||||
FOnDrawGpsPoint(Self, Buffer, aPOI);
|
||||
{$ENDIF}
|
||||
{$IFDEF USE_LAZINTFIMAGE}
|
||||
FOnDrawGpsPoint(Self, BufferCanvas, aPOI);
|
||||
{$ENDIF}
|
||||
*)
|
||||
exit;
|
||||
end;
|
||||
|
||||
@ -648,18 +590,6 @@ begin
|
||||
if aPOI.ExtraData.inheritsFrom(TDrawingExtraData) then
|
||||
PtColor := TDrawingExtraData(aPOI.ExtraData).Color;
|
||||
end;
|
||||
(*
|
||||
{$IFDEF USE_RGBGRAPHICS}
|
||||
Buffer.Canvas.OutlineColor := ptColor;
|
||||
Buffer.Canvas.Line(Pt.X, Pt.y-5, Pt.X, Pt.Y+5);
|
||||
Buffer.Canvas.Line(Pt.X-5, Pt.y, Pt.X+5, Pt.Y);
|
||||
{$ENDIF}
|
||||
{$IFDEF USE_LAZINTFIMAGE}
|
||||
BufferCanvas.Pen.FPColor := TColorToFPColor(ptColor);
|
||||
BufferCanvas.Line(Pt.X, Pt.Y-5, Pt.X, Pt.Y+5);
|
||||
BufferCanvas.Line(Pt.X-5, Pt.Y, Pt.X+5, Pt.Y);
|
||||
{$ENDIF}
|
||||
*)
|
||||
DrawingEngine.PenColor := ptColor;
|
||||
DrawingEngine.Line(Pt.X, Pt.Y - 5, Pt.X, Pt.Y + 5);
|
||||
DrawingEngine.Line(Pt.X - 5, Pt.Y, Pt.X + 5, Pt.Y);
|
||||
@ -712,77 +642,19 @@ end;
|
||||
|
||||
procedure TMapView.DoDrawTile(const TileId: TTileId; X, Y: integer;
|
||||
TileImg: TLazIntfImage);
|
||||
(*
|
||||
{$IFDEF USE_RGBGRAPHICS}
|
||||
var
|
||||
temp: TRGB32Bitmap;
|
||||
ri: TRawImage;
|
||||
BuffLaz: TLazIntfImage;
|
||||
{$ENDIF}
|
||||
*)
|
||||
begin
|
||||
{
|
||||
if Assigned(Buffer) then
|
||||
begin
|
||||
}
|
||||
if Assigned(TileImg) then
|
||||
begin
|
||||
(*
|
||||
{$IFDEF USE_RGBGRAPHICS}
|
||||
if (X >= 0) and (Y >= 0) then //http://mantis.freepascal.org/view.php?id=27144
|
||||
begin
|
||||
ri.Init;
|
||||
ri.Description.Init_BPP32_R8G8B8A8_BIO_TTB(Buffer.Width,Buffer.Height);
|
||||
ri.Data := Buffer.Pixels;
|
||||
BuffLaz := TLazIntfImage.Create(ri, false);
|
||||
try
|
||||
BuffLaz.CopyPixels(TileImg, X, Y);
|
||||
ri.Init;
|
||||
finally
|
||||
FreeandNil(BuffLaz);
|
||||
end;
|
||||
end
|
||||
else
|
||||
begin
|
||||
//i think it take more memory then the previous method but work in all case
|
||||
temp := TRGB32Bitmap.CreateFromLazIntfImage(TileImg);
|
||||
try
|
||||
Buffer.Draw(X, Y, temp);
|
||||
finally
|
||||
FreeAndNil(temp);
|
||||
end;
|
||||
end;
|
||||
{$ENDIF}
|
||||
{$IFDEF USE_LAZINTFIMAGE}
|
||||
{$IF LCL_FULLVERSION < 1090000}
|
||||
{ Workaround for //http://mantis.freepascal.org/view.php?id=27144 }
|
||||
CopyPixels(TileImg, Buffer, X, Y);
|
||||
{$ELSE}
|
||||
Buffer.CopyPixels(TileImg, X, Y);
|
||||
{$IFEND}
|
||||
{$ENDIF}
|
||||
*)
|
||||
DrawingEngine.DrawLazIntfImage(X, Y, TileImg);
|
||||
end
|
||||
else begin
|
||||
DrawingEngine.BrushColor := clWhite;
|
||||
DrawingEngine.BrushStyle := bsSolid;
|
||||
DrawingEngine.FillRect(X, Y, X + TILE_SIZE, Y + TILE_SIZE);
|
||||
(*
|
||||
{$IFDEF USE_RGBGRAPHICS}
|
||||
Buffer.Canvas.FillRect(X, Y, X + TILE_SIZE, Y + TILE_SIZE);
|
||||
{$ENDIF}
|
||||
{$IFDEF USE_LAZINTFIMAGE}
|
||||
begin
|
||||
BufferCanvas.Brush.FPColor := ColWhite;
|
||||
BufferCanvas.FillRect(X, Y, X + TILE_SIZE, Y + TILE_SIZE);
|
||||
end;
|
||||
{$ENDIF}
|
||||
*)
|
||||
end;
|
||||
// end;
|
||||
if Assigned(TileImg) then begin
|
||||
DrawingEngine.DrawLazIntfImage(X, Y, TileImg);
|
||||
end
|
||||
else begin
|
||||
DrawingEngine.BrushColor := clWhite;
|
||||
DrawingEngine.BrushStyle := bsSolid;
|
||||
DrawingEngine.FillRect(X, Y, X + TILE_SIZE, Y + TILE_SIZE);
|
||||
end;
|
||||
|
||||
if FDebugTiles then
|
||||
DoDrawTileInfo(TileID, X, Y);
|
||||
|
||||
DrawObjects(TileId, X, Y, X + TILE_SIZE, Y + TILE_SIZE);
|
||||
end;
|
||||
|
||||
@ -828,7 +700,7 @@ begin
|
||||
FEngine.DrawTitleInGuiThread := false;
|
||||
FEngine.DownloadEngine := FBuiltinDownloadEngine;
|
||||
|
||||
FBuiltinDrawingEngine := TIntfGraphicsDrawingEngine.Create(self);
|
||||
FBuiltinDrawingEngine := TMvIntfGraphicsDrawingEngine.Create(self);
|
||||
FBuiltinDrawingEngine.Name := 'BuiltInDE';
|
||||
FBuiltinDrawingEngine.CreateBuffer(Width, Height);
|
||||
|
||||
@ -862,18 +734,6 @@ end;
|
||||
function TMapView.SaveToImage(AClass: TRasterImageClass): TRasterImage;
|
||||
begin
|
||||
Result := DrawingEngine.SaveToImage(AClass);
|
||||
(*
|
||||
Result := AClass.Create;
|
||||
Result.Width := Width;
|
||||
Result.Height := Height;
|
||||
Result.Canvas.FillRect(0, 0, Width, Height);
|
||||
{$IFDEF USE_RGBGRAPHICS}
|
||||
Buffer.Canvas.DrawTo(Result.Canvas,0,0);
|
||||
{$ENDIF}
|
||||
{$IFDEF USE_LAZINTFIMAGE}
|
||||
Result.LoadFromIntfImage(Buffer);
|
||||
{$ENDIF}
|
||||
*)
|
||||
end;
|
||||
|
||||
procedure TMapView.SaveToStream(AClass: TRasterImageClass; AStream: TStream);
|
||||
@ -947,11 +807,6 @@ end;
|
||||
procedure TMapView.ClearBuffer;
|
||||
begin
|
||||
DrawingEngine.CreateBuffer(ClientWidth, ClientHeight); // ???
|
||||
(*
|
||||
{$IFDEF USE_LAZINTFIMAGE}
|
||||
CreateLazIntfImageAndCanvas(Buffer, BufferCanvas, ClientWidth, ClientHeight);
|
||||
{$ENDIF}
|
||||
*)
|
||||
end;
|
||||
|
||||
procedure TMapView.UpdateFont(Sender: TObject);
|
||||
|
Reference in New Issue
Block a user