From 376bf00ad4af9af815760d72cb8ae72e9951a2b5 Mon Sep 17 00:00:00 2001 From: Dennis Postma Date: Thu, 3 Apr 2025 04:38:23 +0200 Subject: [PATCH] Tooltips, donation, new help window --- src/App.vue | 5 +- src/components/AppHeader.vue | 13 ++- src/components/HelpButton.vue | 17 ++- src/components/HelpModal.vue | 150 +++++++++++++++++++++++++ src/components/Navigation.vue | 56 ++++----- src/components/Tooltip.vue | 68 +++++++++++ src/composables/useSpritesheetStore.ts | 2 + 7 files changed, 279 insertions(+), 32 deletions(-) create mode 100644 src/components/HelpModal.vue create mode 100644 src/components/Tooltip.vue diff --git a/src/App.vue b/src/App.vue index 66be64e..f8658ac 100644 --- a/src/App.vue +++ b/src/App.vue @@ -38,6 +38,7 @@ + @@ -51,6 +52,7 @@ import PreviewModal from './components/PreviewModal.vue'; import SettingsModal from './components/SettingsModal.vue'; import SpritesModal from './components/SpritesModal.vue'; + import HelpModal from './components/HelpModal.vue'; import Navigation from './components/Navigation.vue'; import Notification from './components/Notification.vue'; import HelpButton from './components/HelpButton.vue'; @@ -71,6 +73,7 @@ ); const showHelpModal = () => { - alert('Keyboard shortcuts:\n\n' + 'Shift + Drag: Fine-tune sprite position\n' + 'Space: Play/Pause animation\n' + 'Esc: Close preview modal\n' + 'Arrow Keys: Navigate frames when paused'); + // Open the help modal instead of showing an alert + store.isHelpModalOpen.value = true; }; diff --git a/src/components/AppHeader.vue b/src/components/AppHeader.vue index 25f0d74..d7424ab 100644 --- a/src/components/AppHeader.vue +++ b/src/components/AppHeader.vue @@ -23,9 +23,11 @@ - + + + @@ -33,6 +35,7 @@ diff --git a/src/components/HelpButton.vue b/src/components/HelpButton.vue index 5f63105..8af3bf6 100644 --- a/src/components/HelpButton.vue +++ b/src/components/HelpButton.vue @@ -1,11 +1,22 @@ diff --git a/src/components/HelpModal.vue b/src/components/HelpModal.vue new file mode 100644 index 0000000..e6316dd --- /dev/null +++ b/src/components/HelpModal.vue @@ -0,0 +1,150 @@ + + + diff --git a/src/components/Navigation.vue b/src/components/Navigation.vue index 01452af..78ad722 100644 --- a/src/components/Navigation.vue +++ b/src/components/Navigation.vue @@ -8,40 +8,44 @@
- + + + - + + + - + + + - + + +
- + + +
@@ -49,6 +53,7 @@ diff --git a/src/components/Tooltip.vue b/src/components/Tooltip.vue new file mode 100644 index 0000000..92ff8da --- /dev/null +++ b/src/components/Tooltip.vue @@ -0,0 +1,68 @@ + + + diff --git a/src/composables/useSpritesheetStore.ts b/src/composables/useSpritesheetStore.ts index 40e870b..ae0849d 100644 --- a/src/composables/useSpritesheetStore.ts +++ b/src/composables/useSpritesheetStore.ts @@ -39,6 +39,7 @@ const isShiftPressed = ref(false); const isModalOpen = ref(false); const isSettingsModalOpen = ref(false); const isSpritesModalOpen = ref(false); +const isHelpModalOpen = ref(false); const zoomLevel = ref(1); // Default zoom level (1 = 100%) // Preview border settings @@ -543,6 +544,7 @@ export function useSpritesheetStore() { isModalOpen, isSettingsModalOpen, isSpritesModalOpen, + isHelpModalOpen, animation, notification, zoomLevel,