forked from academiadocodigo/TBGWebCharts
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Maps.GMaps.Layer.pas
70 lines (56 loc) · 1.45 KB
/
Maps.GMaps.Layer.pas
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
unit Maps.GMaps.Layer;
interface
uses
Interfaces;
type
TModelMapsGMapsLayer = class(TInterfacedObject, iModelMapsLayer)
private
[weak]
FParent: iModelMapsGeneric;
FHeatMap: iModelMapsLayerHeatMap;
public
constructor Create(Parent : iModelMapsGeneric);
destructor Destroy; override;
class function New(Parent : iModelMapsGeneric) : iModelMapsLayer;
function HeatMap : iModelMapsLayerHeatMap;
function &End : iModelMapsGeneric;
function ResultScript : String;
end;
implementation
uses
Injection,
Maps.GMaps.Layer.HeatMap;
{ TModelMapsGMapsLayer }
constructor TModelMapsGMapsLayer.Create(Parent: iModelMapsGeneric);
begin
{$IF RTLVERSION > 27 }
TInjection.Weak(@FParent, Parent);
{$ELSE}
FParent := Parent;
{$IFEND}
end;
destructor TModelMapsGMapsLayer.Destroy;
begin
inherited;
end;
function TModelMapsGMapsLayer.&End: iModelMapsGeneric;
begin
Result := FParent;
end;
function TModelMapsGMapsLayer.HeatMap: iModelMapsLayerHeatMap;
begin
FHeatMap := TModelMapsGMapsLayerHeatMap.New(Self);
Result := FHeatMap;
end;
class function TModelMapsGMapsLayer.New(
Parent: iModelMapsGeneric): iModelMapsLayer;
begin
Result := Self.Create(Parent);
end;
function TModelMapsGMapsLayer.ResultScript: String;
begin
Result := '';
if Assigned(FHeatMap) then
Result := Result + FHeatMap.ResultScript(FParent.Name);
end;
end.