editor: make sure that controls are always initialized in the same order
This commit is contained in:
parent
00193f7e11
commit
23a56a8126
1 changed files with 14 additions and 14 deletions
|
@ -32,10 +32,13 @@ editor = {
|
||||||
// packages
|
// packages
|
||||||
packages: {},
|
packages: {},
|
||||||
_shown_packages: [],
|
_shown_packages: [],
|
||||||
get_packages: function () {
|
_packages_control: null,
|
||||||
|
get_packages: function() {
|
||||||
|
editor._packages_control = L.control.layers().addTo(editor.map);
|
||||||
|
$(editor._packages_control._layersLink).text('Packages');
|
||||||
|
|
||||||
// load packages
|
// load packages
|
||||||
$.getJSON('/api/packages/', function (packages) {
|
$.getJSON('/api/packages/', function (packages) {
|
||||||
var layers = {};
|
|
||||||
var bounds = [[0, 0], [0, 0]];
|
var bounds = [[0, 0], [0, 0]];
|
||||||
var pkg, layer;
|
var pkg, layer;
|
||||||
for (var i = 0; i < packages.length; i++) {
|
for (var i = 0; i < packages.length; i++) {
|
||||||
|
@ -47,7 +50,7 @@ editor = {
|
||||||
layer.on('add', editor._add_package_layer);
|
layer.on('add', editor._add_package_layer);
|
||||||
layer.on('remove', editor._remove_package_layer);
|
layer.on('remove', editor._remove_package_layer);
|
||||||
layer.addTo(editor.map);
|
layer.addTo(editor.map);
|
||||||
layers[pkg.name] = layer;
|
editor._packages_control.addOverlay(layer, pkg.name);
|
||||||
editor._shown_packages.push(pkg.name);
|
editor._shown_packages.push(pkg.name);
|
||||||
|
|
||||||
if (pkg.bounds === null) continue;
|
if (pkg.bounds === null) continue;
|
||||||
|
@ -56,9 +59,6 @@ editor = {
|
||||||
}
|
}
|
||||||
editor.map.setMaxBounds(bounds);
|
editor.map.setMaxBounds(bounds);
|
||||||
editor.map.fitBounds(bounds, {padding: [30, 50]});
|
editor.map.fitBounds(bounds, {padding: [30, 50]});
|
||||||
|
|
||||||
var control = L.control.layers([], layers).addTo(editor.map);
|
|
||||||
$(control._layersLink).text('Packages');
|
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
_add_package_layer: function(e) {
|
_add_package_layer: function(e) {
|
||||||
|
@ -92,17 +92,17 @@ editor = {
|
||||||
sources: {},
|
sources: {},
|
||||||
get_sources: function () {
|
get_sources: function () {
|
||||||
// load sources
|
// load sources
|
||||||
|
editor._sources_control = L.control.layers().addTo(editor.map);
|
||||||
|
$(editor._sources_control._layersLink).text('Sources');
|
||||||
|
|
||||||
$.getJSON('/api/sources/', function (sources) {
|
$.getJSON('/api/sources/', function (sources) {
|
||||||
var layers = {};
|
|
||||||
var source;
|
var source;
|
||||||
for (var i = 0; i < sources.length; i++) {
|
for (var i = 0; i < sources.length; i++) {
|
||||||
source = sources[i];
|
source = sources[i];
|
||||||
editor.sources[source.name] = source;
|
editor.sources[source.name] = source;
|
||||||
source.layer = L.imageOverlay('/api/sources/' + source.name + '/image/', source.bounds);
|
source.layer = L.imageOverlay('/api/sources/' + source.name + '/image/', source.bounds);
|
||||||
layers[source.name] = source.layer;
|
editor._sources_control.addOverlay(source.layer, source.name);
|
||||||
}
|
}
|
||||||
var control = L.control.layers([], layers).addTo(editor.map);
|
|
||||||
$(control._layersLink).text('Sources');
|
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
|
@ -172,6 +172,7 @@ editor = {
|
||||||
_editing: null,
|
_editing: null,
|
||||||
_geometry_types: [],
|
_geometry_types: [],
|
||||||
_shown_geometry_types: {},
|
_shown_geometry_types: {},
|
||||||
|
_geometry_types_control: null,
|
||||||
init_geometries: function () {
|
init_geometries: function () {
|
||||||
// init geometries and edit listeners
|
// init geometries and edit listeners
|
||||||
editor._highlight_layer = L.layerGroup().addTo(editor.map);
|
editor._highlight_layer = L.layerGroup().addTo(editor.map);
|
||||||
|
@ -187,8 +188,9 @@ editor = {
|
||||||
editor._get_geometry_types();
|
editor._get_geometry_types();
|
||||||
},
|
},
|
||||||
_get_geometry_types: function() {
|
_get_geometry_types: function() {
|
||||||
|
editor._geometry_types_control = L.control.layers().addTo(editor.map);
|
||||||
|
$(editor._geometry_types_control._layersLink).text('Types');
|
||||||
$.getJSON('/api/geometrytypes/', function(geometrytypes) {
|
$.getJSON('/api/geometrytypes/', function(geometrytypes) {
|
||||||
var layers = {};
|
|
||||||
var geometrytype, layer;
|
var geometrytype, layer;
|
||||||
for (var i = 0; i < geometrytypes.length; i++) {
|
for (var i = 0; i < geometrytypes.length; i++) {
|
||||||
geometrytype = geometrytypes[i];
|
geometrytype = geometrytypes[i];
|
||||||
|
@ -197,12 +199,10 @@ editor = {
|
||||||
layer.on('add', editor._add_geometrytype_layer);
|
layer.on('add', editor._add_geometrytype_layer);
|
||||||
layer.on('remove', editor._remove_geometrytype_layer);
|
layer.on('remove', editor._remove_geometrytype_layer);
|
||||||
layer.addTo(editor.map);
|
layer.addTo(editor.map);
|
||||||
layers[geometrytype.title_plural] = layer;
|
editor._geometry_types_control.addOverlay(layer, geometrytype.title_plural);
|
||||||
editor._geometry_types.push(geometrytype.name)
|
editor._geometry_types.push(geometrytype.name)
|
||||||
editor._shown_geometry_types[geometrytype.name] = true;
|
editor._shown_geometry_types[geometrytype.name] = true;
|
||||||
}
|
}
|
||||||
var control = L.control.layers([], layers).addTo(editor.map);
|
|
||||||
$(control._layersLink).text('Types');
|
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
_add_geometrytype_layer: function(e) {
|
_add_geometrytype_layer: function(e) {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue