diff --git a/src/components/ScaleBuilder.vue b/src/components/ScaleBuilder.vue
index 83266f4b..267cbed8 100644
--- a/src/components/ScaleBuilder.vue
+++ b/src/components/ScaleBuilder.vue
@@ -12,6 +12,8 @@ import { importFile, type ImporterKey } from '@/importers'
import { mtof } from 'xen-dev-utils'
import type { Scale } from 'scale-workshop-core'
import { useStateStore } from '@/stores/state'
+import { useModalStore } from '@/stores/modal'
+import { useApproximateByRatiosStore } from '@/stores/approximate-by-ratios'
// Export
const KorgExportModal = defineAsyncComponent(
@@ -95,6 +97,8 @@ const TemperModal = defineAsyncComponent(
)
const state = useStateStore()
+const modal = useModalStore()
+const approx = useApproximateByRatiosStore()
const joinedLines = computed({
get() {
@@ -261,11 +265,21 @@ function clickInvert() {
scaleDataArea.value!.focus()
}
+function clickRotate() {
+ modal.initialize(state.scale.size)
+ showRotateModal.value = true
+}
+
function clickSubset() {
- subsetModal.value.initialize()
+ modal.initialize(state.scale.size)
showSubsetModal.value = true
}
+function clickApproximateByRatios() {
+ approx.initialize()
+ showApproximateByRatiosModal.value = true
+}
+
function clickShareUrl() {
showShareUrlModal.value = true
shareUrlModal.value.initialize()
@@ -345,13 +359,11 @@ function confirmPreset() {
Select scale degrees and apply rational replacements one by one.