remember active overlays

This commit is contained in:
vcoppe
2024-05-06 15:52:11 +02:00
parent 281b20249d
commit 86d941b00d
5 changed files with 60 additions and 16 deletions

View File

@@ -43,6 +43,18 @@
let undoDisabled = derived(canUndo, ($canUndo) => !$canUndo);
let redoDisabled = derived(canRedo, ($canRedo) => !$canRedo);
function switchBasemaps() {
[$currentBasemap, $previousBasemap] = [$previousBasemap, $currentBasemap];
}
function toggleOverlays() {
if (anySelectedLayer($currentOverlays)) {
[$currentOverlays, $previousOverlays] = [defaultOverlays, $currentOverlays];
} else {
[$currentOverlays, $previousOverlays] = [$previousOverlays, defaultOverlays];
}
}
</script>
<div class="absolute top-2 left-0 right-0 z-20 flex flex-row justify-center pointer-events-none">
@@ -127,6 +139,17 @@
</Menubar.Item>
</Menubar.Content>
</Menubar.Menu>
<Menubar.Menu>
<Menubar.Trigger>{$_('menu.view')}</Menubar.Trigger>
<Menubar.Content class="border-none">
<Menubar.Item on:click={switchBasemaps}
>{$_('menu.switch_basemap')}<Shortcut key="F1" /></Menubar.Item
>
<Menubar.Item on:click={toggleOverlays}
>{$_('menu.toggle_overlays')}<Shortcut key="F2" /></Menubar.Item
>
</Menubar.Content>
</Menubar.Menu>
<Menubar.Menu>
<Menubar.Trigger>{$_('menu.settings')}</Menubar.Trigger>
<Menubar.Content class="border-none"
@@ -228,14 +251,10 @@
$selectFiles.selectAllFiles();
e.preventDefault();
} else if (e.key === 'F1') {
[$currentBasemap, $previousBasemap] = [$previousBasemap, $currentBasemap];
switchBasemaps();
e.preventDefault();
} else if (e.key === 'F2') {
if (anySelectedLayer($currentOverlays)) {
[$currentOverlays, $previousOverlays] = [defaultOverlays, $currentOverlays];
} else {
[$currentOverlays, $previousOverlays] = [$previousOverlays, defaultOverlays];
}
toggleOverlays();
e.preventDefault();
}
}}