class SystemSelectController {
constructor() {
this.div = document.getElementById('systemSelectDiv');
this.initHtml();
this.expanded = false;
}
initHtml () {
this.div.style.display = 'grid';
this.div.style.gridTemplateColumns = 'auto auto';
this.div.style.gridTemplateRows = 'auto auto auto';
this.headerDiv = document.createElement('div');
this.headerDiv.innerHTML = 'System Select ';
this.headerDiv.style.display = 'grid';
this.headerDiv.style.gridColumn = '1 / span 2';
this.div.appendChild(this.headerDiv);
this.div.style.gap = '5px';
for (const system in systemsMap) {
systemsMap[system]['div'] = document.createElement('div');
let systemColor = '#11FF11';
if (!systemsMap[system]['enabled']) {
systemColor = '#FF1111';
}
systemsMap[system]['div'].innerHTML = '' + system + '';
this.div.appendChild(systemsMap[system]['div']);
}
this.buttonDiv = document.createElement('div');
this.buttonDiv.style.display = 'none';
this.buttonDiv.style.gridColumn = '1 / span 2';
this.buttonDiv.innerHTML += ' All ';
this.buttonDiv.innerHTML += ' None ';
this.div.appendChild(this.buttonDiv);
}
selectAll () {
for (const system in systemsMap) {
systemsMap[system]['enabled'] = true;
}
ssc.updateHtml();
saveSettings();
}
deselectAll () {
for (const system in systemsMap) {
systemsMap[system]['enabled'] = false;
}
ssc.updateHtml();
saveSettings();
}
updateHtml () {
for (const system in systemsMap) {
let systemColor = '#11FF11';
if (!systemsMap[system]['enabled']) {
systemColor = '#FF1111';
}
document.getElementById('systemSelectSpan-' + system).style.color = systemColor;
}
abc.update();
}
toggleExpand () {
if (this.expanded) {
this.collapse();
this.expanded = false;
} else {
this.expand();
this.expanded = true;
}
}
expand () {
for (const system in systemsMap) {
document.getElementById('systemSelectSpan-' + system).style.display = 'block'
}
this.buttonDiv.style.display = 'block';
}
collapse () {
for (const system in systemsMap) {
document.getElementById('systemSelectSpan-' + system).style.display = 'none'
}
this.buttonDiv.style.display = 'none';
}
toggleSystem (system) {
if (ctrlPressedDuringLastClick) {
for (const s in systemsMap) {
if (s != system) {systemsMap[s]['enabled'] = false }
else {systemsMap[s]['enabled'] = true}
}
} else {
systemsMap[system]['enabled'] = !systemsMap[system]['enabled'];
}
this.updateHtml();
saveSettings();
}
}