Skip to content
This repository was archived by the owner on Jun 15, 2023. It is now read-only.

Commit 0c76236

Browse files
authored
Merge pull request #10 from cryogenian/off-set
getCenterOffset signature is fixed, off function is added
2 parents 59fb204 + 9538f33 commit 0c76236

File tree

7 files changed

+30
-13
lines changed

7 files changed

+30
-13
lines changed

src/Leaflet/Core/Event.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ exports.eventCenter_ = function(Nothing, Just, Tuple, e) {
33
if (e.center === undefined) {
44
return Nothing;
55
} else {
6-
return Just(Tuple(e.center.x)(e.center.y));
6+
return Just(e.center);
77
}
88
};
99
};

src/Leaflet/Core/Event.purs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ foreign import eventZoom_
2424
e a. Fn3 (Maybe a) (a Maybe a) Event (Eff (dom DOM|e) (Maybe Zoom))
2525

2626
foreign import eventCenter_
27-
e a. Fn4 (Maybe a) (a Maybe a) (a a a × a) Event (Eff (dom DOM|e) (Maybe Point))
27+
e a. Fn4 (Maybe a) (a Maybe a) (a a a × a) Event (Eff (dom DOM|e) (Maybe LatLng))
2828

2929
foreign import eventContainerPoint_
3030
e a. Fn4 (Maybe a) (a Maybe a) (a a a × a) Event (Eff (dom DOM|e) (Maybe Point))
@@ -36,7 +36,7 @@ eventCenter
3636
m e
3737
. MonadEff (dom DOM|e) m
3838
Event
39-
m (Maybe Point)
39+
m (Maybe LatLng)
4040
eventCenter e =
4141
liftEff $ runFn4 eventCenter_ Nothing Just Tuple e
4242

src/Leaflet/Core/Layer.js

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -186,6 +186,11 @@ exports.once_ = function(e, cb, l) {
186186
};
187187
};
188188

189+
exports.off_ = function(e, l) {
190+
return function() {
191+
l.off(e);
192+
};
193+
};
189194

190195
exports.addLayer_ = function(layer, leaflet) {
191196
return function() {

src/Leaflet/Core/Layer.purs

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ module Leaflet.Core.Layer
2121
, addLayer
2222
, removeLayer
2323
, layerGroup
24+
, off
2425
) where
2526

2627
import Prelude
@@ -91,6 +92,9 @@ foreign import rectangle_
9192
foreign import on_
9293
e. Fn3 String (T.Event Eff (dom DOM|e) Unit) T.Evented (Eff (dom DOM|e) Unit)
9394

95+
foreign import off_
96+
e. Fn2 String T.Evented (Eff (dom DOM|e) Unit)
97+
9498
foreign import once_
9599
e. Fn3 String (T.Event Eff (dom DOM|e) Unit) T.Evented (Eff (dom DOM|e) Unit)
96100

@@ -269,6 +273,15 @@ once
269273
once e fn l =
270274
liftEff $ runFn3 once_ e fn l
271275

276+
off
277+
e m
278+
. MonadEff (dom DOM|e) m
279+
String
280+
T.Evented
281+
m Unit
282+
off e l =
283+
liftEff $ runFn2 off_ e l
284+
272285
setIcon
273286
m e
274287
. MonadEff (dom DOM|e) m

src/Leaflet/Core/Map.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -69,10 +69,10 @@ exports.getMapPanePos_ = function(Tuple, leaflet) {
6969
};
7070
};
7171

72-
exports.getCenterOffset_ = function(Tuple, point, leaflet) {
73-
return function() {
74-
var res = leaflet._getCenterOffset({x: point[0], y: point[1]});
75-
return Tuple (res.x) (res.y);
72+
exports.getCenterOffset_ = function(mkPoint, latLng, leaflet) {
73+
return function() {
74+
var res = leaflet._getCenterOffset(latLng);
75+
return mkPoint (res.x) (res.y);
7676
};
7777
};
7878

src/Leaflet/Core/Map.purs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ foreign import getMapPanePos_
6363
e. Fn2 (Int Int T.Point) T.Leaflet (Eff (dom DOM|e) T.Point)
6464

6565
foreign import getCenterOffset_
66-
e. Fn3 (Int Int T.Point) (Array Int) T.Leaflet (Eff (dom DOM|e) T.Point)
66+
e. Fn3 (Int Int T.Point) T.LatLng T.Leaflet (Eff (dom DOM|e) T.Point)
6767

6868
foreign import getMaxZoom_
6969
e. T.Leaflet Eff (dom DOM|e) T.Zoom
@@ -162,11 +162,11 @@ getMapPanePos l =
162162
getCenterOffset
163163
e m
164164
. MonadEff (dom DOM|e) m
165-
T.Point
165+
T.LatLng
166166
T.Leaflet
167167
m T.Point
168-
getCenterOffset (a × b) l =
169-
liftEff $ runFn3 getCenterOffset_ Tuple [a, b] l
168+
getCenterOffset a b =
169+
liftEff $ runFn3 getCenterOffset_ Tuple a b
170170

171171
getMaxZoom
172172
e m

src/Leaflet/Plugin/Heatmap.purs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -100,10 +100,9 @@ onAdd opts items lay leaf = do
100100
offset ← LC.getCenterOffset center leaf
101101
panePos ← LC.getMapPanePos leaf
102102
let coord = offset `LC.scalePoint` (-scale) # flip LC.subtractPoint panePos
103-
LC.setTransform canvasEl offset scale
103+
LC.setTransform canvasEl coord scale
104104

105105
when (threeD && isZoom) $ LC.mapToEvented leaf # LC.on "zoomanim" zoomAnim
106-
107106
LC.mapToEvented leaf # LC.on "moveend" reset
108107

109108
redraw canvas items opts leaf

0 commit comments

Comments
 (0)