refactor rect selection to make it work in shares
This commit is contained in:
@@ -1,6 +1,9 @@
|
||||
import type { SelectionMode } from '~/shared/types/selection';
|
||||
|
||||
export const useSelectionRect = defineStore('selection-rect', {
|
||||
state: () => ({
|
||||
enabled: false as boolean,
|
||||
dirty: false as boolean,
|
||||
a: {
|
||||
x: 0 as number,
|
||||
y: 0 as number,
|
||||
@@ -9,9 +12,14 @@ export const useSelectionRect = defineStore('selection-rect', {
|
||||
x: 0 as number,
|
||||
y: 0 as number,
|
||||
},
|
||||
mode: 'set' as SelectionMode,
|
||||
}),
|
||||
actions: {
|
||||
set(a: { x: number; y: number }, b: { x: number; y: number }) {
|
||||
set(
|
||||
a: { x: number; y: number },
|
||||
b: { x: number; y: number },
|
||||
mode: SelectionMode
|
||||
) {
|
||||
this.a.x = a.x;
|
||||
this.a.y = a.y;
|
||||
|
||||
@@ -19,6 +27,7 @@ export const useSelectionRect = defineStore('selection-rect', {
|
||||
this.b.y = b.y;
|
||||
|
||||
this.enabled = true;
|
||||
this.mode = mode;
|
||||
},
|
||||
updateB(x: number, y: number) {
|
||||
this.b.x = x;
|
||||
|
||||
Reference in New Issue
Block a user