kopia lustrzana https://github.com/Tldraw/Tldraw
53 wiersze
1.6 KiB
TypeScript
53 wiersze
1.6 KiB
TypeScript
import { StateNode } from '../StateNode'
|
|
|
|
import { TLStyleType } from '@tldraw/tlschema'
|
|
import { Brushing } from './children/Brushing'
|
|
import { Crop } from './children/Crop/Crop'
|
|
import { Cropping } from './children/Cropping'
|
|
import { DraggingHandle } from './children/DraggingHandle'
|
|
import { EditingShape } from './children/EditingShape'
|
|
import { Idle } from './children/Idle'
|
|
import { PointingCanvas } from './children/PointingCanvas'
|
|
import { PointingCropHandle } from './children/PointingCropHandle'
|
|
import { PointingHandle } from './children/PointingHandle'
|
|
import { PointingResizeHandle } from './children/PointingResizeHandle'
|
|
import { PointingRotateHandle } from './children/PointingRotateHandle'
|
|
import { PointingSelection } from './children/PointingSelection'
|
|
import { PointingShape } from './children/PointingShape'
|
|
import { Resizing } from './children/Resizing'
|
|
import { Rotating } from './children/Rotating'
|
|
import { ScribbleBrushing } from './children/ScribbleBrushing'
|
|
import { Translating } from './children/Translating'
|
|
|
|
export class SelectTool extends StateNode {
|
|
static override id = 'select'
|
|
static initial = 'idle'
|
|
static children = () => [
|
|
Crop,
|
|
Cropping,
|
|
Idle,
|
|
PointingCanvas,
|
|
PointingShape,
|
|
Translating,
|
|
Brushing,
|
|
ScribbleBrushing,
|
|
PointingCropHandle,
|
|
PointingSelection,
|
|
PointingResizeHandle,
|
|
EditingShape,
|
|
Resizing,
|
|
Rotating,
|
|
PointingRotateHandle,
|
|
PointingHandle,
|
|
DraggingHandle,
|
|
]
|
|
|
|
styles = ['color', 'dash', 'fill', 'size'] as TLStyleType[]
|
|
|
|
onExit = () => {
|
|
if (this.editor.pageState.editingId) {
|
|
this.editor.setEditingId(null)
|
|
}
|
|
}
|
|
}
|