From a23e73e82a7a40ffa8927d7dcf2b653dc87ce098 Mon Sep 17 00:00:00 2001 From: vcoppe Date: Thu, 25 Apr 2024 13:56:07 +0200 Subject: [PATCH] avoid selecting other file when routing --- .../src/lib/components/gpx-layer/GPXMapLayers.ts | 5 ++++- website/src/lib/components/toolbar/Toolbar.svelte | 14 ++++++-------- website/src/lib/stores.ts | 4 ++++ 3 files changed, 14 insertions(+), 9 deletions(-) diff --git a/website/src/lib/components/gpx-layer/GPXMapLayers.ts b/website/src/lib/components/gpx-layer/GPXMapLayers.ts index 08c37ed1..fbd7a9c9 100644 --- a/website/src/lib/components/gpx-layer/GPXMapLayers.ts +++ b/website/src/lib/components/gpx-layer/GPXMapLayers.ts @@ -1,5 +1,5 @@ import type { GPXFile } from "gpx"; -import { map, selectFiles } from "$lib/stores"; +import { map, selectFiles, currentTool, Tool } from "$lib/stores"; import { get, type Writable } from "svelte/store"; import type mapboxgl from "mapbox-gl"; @@ -122,6 +122,9 @@ export class GPXMapLayer { } selectOnClick(e: any) { + if (get(currentTool) === Tool.ROUTING) { + return; + } if (e.originalEvent.shiftKey) { get(selectFiles).addSelect(get(this.file)); } else { diff --git a/website/src/lib/components/toolbar/Toolbar.svelte b/website/src/lib/components/toolbar/Toolbar.svelte index 58f59d97..61766336 100644 --- a/website/src/lib/components/toolbar/Toolbar.svelte +++ b/website/src/lib/components/toolbar/Toolbar.svelte @@ -1,5 +1,5 @@ @@ -33,7 +31,7 @@
- + {$_('toolbar.routing.tooltip')} @@ -74,7 +72,7 @@ {$_('toolbar.structure_tooltip')}
- {#if currentTool == 'routing'} + {#if $currentTool === Tool.ROUTING} {/if} diff --git a/website/src/lib/stores.ts b/website/src/lib/stores.ts index c400ca0e..2d43a9d8 100644 --- a/website/src/lib/stores.ts +++ b/website/src/lib/stores.ts @@ -13,6 +13,10 @@ export const settings = writable<{ [key: string]: any }>({ velocityUnits: 'speed', temperatureUnits: 'celsius', }); +export enum Tool { + ROUTING +} +export const currentTool = writable(null); export function getFileStore(file: GPXFile): Writable { return get(files).find(store => get(store) === file) ?? addFile(file);