]> git.openstreetmap.org Git - rails.git/blob - app/assets/javascripts/leaflet.sidebar.js
8c4dee308ada2bb36068aaf2f7fe430a9501279c
[rails.git] / app / assets / javascripts / leaflet.sidebar.js
1 L.OSM.sidebar = function(selector) {
2   var control = {},
3     sidebar = $(selector),
4     current = $(),
5     map;
6
7   control.addTo = function (_) {
8     map = _;
9     return control;
10   };
11
12   control.addPane = function(pane) {
13     pane
14       .hide()
15       .appendTo(sidebar);
16   };
17
18   control.togglePane = function(pane) {
19     current
20       .hide()
21       .trigger('hide');
22
23     if (current === pane) {
24       $(sidebar).hide();
25       current = $();
26     } else {
27       $(sidebar).show();
28       current = pane;
29     }
30
31     map.invalidateSize({pan: false, animate: false});
32
33     current
34       .show()
35       .trigger('show');
36   };
37
38   return control;
39 };