Skip to content

Commit 0dd6252

Browse files
committed
Add label argument to setStyle
1 parent a11aa05 commit 0dd6252

File tree

4 files changed

+25
-9
lines changed

4 files changed

+25
-9
lines changed

R/methods.R

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,8 +48,8 @@ setView <- function(map, lng, lat, zoom, options = list()) {
4848
#' setStyle("zones", styles)
4949
#' }
5050
#' @export
51-
setStyle = function(map, group, styles) {
52-
invokeMethod(map, NULL, "setStyle", group, styles)
51+
setStyle = function(map, group, styles, label = NULL) {
52+
invokeMethod(map, NULL, "setStyle", group, styles, label)
5353
}
5454

5555
#' @describeIn map-methods Flys to a given location/zoom-level using smooth pan-zoom.

inst/htmlwidgets/leaflet.js

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1284,11 +1284,19 @@ exports.default = methods;
12841284

12851285
/** Much more performant way to style loaded geometry */
12861286

1287-
methods.setStyle = function (group, styles) {
1287+
methods.setStyle = function (group, styles, labels) {
12881288
window.map = this;
12891289
var layers = this.layerManager.getLayerGroup(group).getLayers();
1290-
for (var i = 0; i < styles.length; i++) {
1291-
layers[i].setStyle(styles[i]);
1290+
1291+
if (styles) {
1292+
for (var i = 0; i < styles.length; i++) {
1293+
layers[i].setStyle(styles[i]);
1294+
}
1295+
}
1296+
if (labels) {
1297+
for (var _i = 0; _i < styles.length; _i++) {
1298+
layers[_i].bindTooltip(labels[_i]);
1299+
}
12921300
}
12931301
};
12941302

javascript/src/methods.js

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,19 @@ let methods = {};
1414
export default methods;
1515

1616
/** Much more performant way to style loaded geometry */
17-
methods.setStyle = function(group, styles) {
17+
methods.setStyle = function(group, styles, labels) {
1818
window.map = this;
1919
let layers = this.layerManager.getLayerGroup(group).getLayers();
20-
for (let i = 0; i < styles.length; i++) {
21-
layers[i].setStyle(styles[i]);
20+
21+
if (styles) {
22+
for (let i = 0; i < styles.length; i++) {
23+
layers[i].setStyle(styles[i]);
24+
}
25+
}
26+
if (labels) {
27+
for (let i = 0; i < styles.length; i++) {
28+
layers[i].bindTooltip(labels[i]);
29+
}
2230
}
2331
};
2432

man/setStyle.Rd

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)