rsemcs/dynmap/web/js/custommarker.js

45 lines
911 B
JavaScript
Raw Normal View History

2022-05-12 09:33:18 +00:00
L.CustomMarker = L.Marker.extend({
options: {
elementCreator: undefined,
shadowCreator: undefined,
clickable: true,
draggable: false
},
initialize: function(latlng, options) {
//Dynmap - Pass options to CustomIcon
options.icon = new L.CustomIcon(options);
L.Util.setOptions(this, options);
this._latlng = latlng;
},
});
L.CustomIcon = L.DivIcon.extend({
options: {
elementCreator: function() {
return document.createElement('div');
},
shadowCreator: function() { },
className: '', //Remove divIcon class
},
initialize: function(options) {
L.Util.setOptions(this, options);
},
createIcon() {
//Call elementCreator to create icon
var icon = this.options.elementCreator(),
className = icon.className;
icon.className += ' leaflet-marker-icon'; //Required for correct styling
return icon;
},
createShadow() {
return this.options.shadowCreator();
}
});