mirror of
https://github.com/FoggedLens/iD.git
synced 2026-02-27 16:03:52 +00:00
45 lines
1.1 KiB
JavaScript
45 lines
1.1 KiB
JavaScript
export function lanes(field, context) {
|
|
var dispatch = d3.dispatch('change'),
|
|
wayID,
|
|
laneData;
|
|
|
|
function lanes(selection) {
|
|
// if form field is hidden or has detached from dom, clean up.
|
|
if (!d3.select('.inspector-wrap.inspector-hidden').empty() || !selection.node().parentNode) {
|
|
selection.call(lanes.off);
|
|
return;
|
|
}
|
|
|
|
laneData = context.entity(wayID).lanes();
|
|
|
|
var wrap = selection.selectAll('.preset-input-wrap')
|
|
.data([0]);
|
|
|
|
var enter = wrap.enter()
|
|
.append('div')
|
|
.attr('class', 'preset-input-wrap');
|
|
|
|
enter
|
|
.append('div')
|
|
.attr('class', 'lane-count')
|
|
.append('span');
|
|
|
|
selection.selectAll('.lane-count')
|
|
.text(laneData.tagged.lanes.count || laneData.defaults.lanes.count);
|
|
|
|
}
|
|
|
|
|
|
lanes.entity = function(_) {
|
|
if (!wayID || wayID !== _.id) {
|
|
wayID = _.id;
|
|
}
|
|
};
|
|
|
|
lanes.tags = function() {};
|
|
lanes.focus = function() {};
|
|
lanes.off = function() {};
|
|
|
|
return d3.rebind(lanes, dispatch, 'on');
|
|
}
|