Files
old-krovovi-kalkulator/helix/javascript/array_summary/overlay_control.js
2017-11-07 09:23:57 +01:00

44 lines
1.2 KiB
JavaScript

import $ from "jquery";
class OverlayControl {
constructor(arrayVisualization) {
this.visualization = arrayVisualization;
}
init(overlaySelector, legendSelector) {
let self = this;
this.setOverlay("ANCHOR", overlaySelector, legendSelector);
overlaySelector.find("#anchor_overlay").click(function () {
self.setOverlay("ANCHOR", overlaySelector, legendSelector);
});
overlaySelector.find("#all_overlay").click(function () {
self.setOverlay("ALL", overlaySelector, legendSelector);
});
}
setOverlay(overlay, overlaySelector, legendSelector) {
let selectedButton;
let selectedLegend;
if (overlay == "ANCHOR") {
selectedButton = overlaySelector.find("#anchor_overlay");
selectedLegend = legendSelector.find("img.anchors_mode");
} else if (overlay == "ALL") {
selectedButton = overlaySelector.find("#all_overlay");
selectedLegend = legendSelector.find("img.all_mode");
}
this.visualization.setOverlay(overlay);
overlaySelector.find('.overlay_toggle').removeClass("overlay_active");
selectedButton.addClass("overlay_active");
legendSelector.find('.legend').hide();
selectedLegend.show();
}
}
export default OverlayControl;