From c5ba5b0456a711d157e317f220e9c739226e7f50 Mon Sep 17 00:00:00 2001 From: Joar Wandborg Date: Tue, 10 Jan 2012 01:54:37 +0100 Subject: Installed leaflet in extlib --- extlib/leaflet/src/control/Control.Attribution.js | 55 +++++++++++++++++++++++ extlib/leaflet/src/control/Control.Zoom.js | 36 +++++++++++++++ extlib/leaflet/src/control/Control.js | 9 ++++ 3 files changed, 100 insertions(+) create mode 100644 extlib/leaflet/src/control/Control.Attribution.js create mode 100644 extlib/leaflet/src/control/Control.Zoom.js create mode 100644 extlib/leaflet/src/control/Control.js (limited to 'extlib/leaflet/src/control') diff --git a/extlib/leaflet/src/control/Control.Attribution.js b/extlib/leaflet/src/control/Control.Attribution.js new file mode 100644 index 00000000..84b31f52 --- /dev/null +++ b/extlib/leaflet/src/control/Control.Attribution.js @@ -0,0 +1,55 @@ +L.Control.Attribution = L.Class.extend({ + onAdd: function(map) { + this._container = L.DomUtil.create('div', 'leaflet-control-attribution'); + this._map = map; + this._prefix = 'Powered by Leaflet'; + this._attributions = {}; + this._update(); + }, + + getPosition: function() { + return L.Control.Position.BOTTOM_RIGHT; + }, + + getContainer: function() { + return this._container; + }, + + setPrefix: function(prefix) { + this._prefix = prefix; + }, + + addAttribution: function(text) { + if (!text) return; + this._attributions[text] = true; + this._update(); + }, + + removeAttribution: function(text) { + if (!text) return; + delete this._attributions[text]; + this._update(); + }, + + _update: function() { + if (!this._map) return; + + var attribs = []; + + for (var i in this._attributions) { + if (this._attributions.hasOwnProperty(i)) { + attribs.push(i); + } + } + + var prefixAndAttribs = []; + if (this._prefix) { + prefixAndAttribs.push(this._prefix); + } + if (attribs.length) { + prefixAndAttribs.push(attribs.join(', ')); + } + + this._container.innerHTML = prefixAndAttribs.join(' — '); + } +}); \ No newline at end of file diff --git a/extlib/leaflet/src/control/Control.Zoom.js b/extlib/leaflet/src/control/Control.Zoom.js new file mode 100644 index 00000000..d6964fd6 --- /dev/null +++ b/extlib/leaflet/src/control/Control.Zoom.js @@ -0,0 +1,36 @@ + +L.Control.Zoom = L.Class.extend({ + onAdd: function(map) { + this._map = map; + this._container = L.DomUtil.create('div', 'leaflet-control-zoom'); + + this._zoomInButton = this._createButton( + 'Zoom in', 'leaflet-control-zoom-in', this._map.zoomIn, this._map); + this._zoomOutButton = this._createButton( + 'Zoom out', 'leaflet-control-zoom-out', this._map.zoomOut, this._map); + + this._container.appendChild(this._zoomInButton); + this._container.appendChild(this._zoomOutButton); + }, + + getContainer: function() { + return this._container; + }, + + getPosition: function() { + return L.Control.Position.TOP_LEFT; + }, + + _createButton: function(title, className, fn, context) { + var link = document.createElement('a'); + link.href = '#'; + link.title = title; + link.className = className; + + L.DomEvent.disableClickPropagation(link); + L.DomEvent.addListener(link, 'click', L.DomEvent.preventDefault); + L.DomEvent.addListener(link, 'click', fn, context); + + return link; + } +}); \ No newline at end of file diff --git a/extlib/leaflet/src/control/Control.js b/extlib/leaflet/src/control/Control.js new file mode 100644 index 00000000..a01c6807 --- /dev/null +++ b/extlib/leaflet/src/control/Control.js @@ -0,0 +1,9 @@ + +L.Control = {}; + +L.Control.Position = { + TOP_LEFT: 'topLeft', + TOP_RIGHT: 'topRight', + BOTTOM_LEFT: 'bottomLeft', + BOTTOM_RIGHT: 'bottomRight' +}; \ No newline at end of file -- cgit v1.2.3