@idraw/core
Advanced tools
Comparing version 0.4.0-beta.28 to 0.4.0-beta.29
@@ -12,4 +12,2 @@ export declare const key = "SELECT"; | ||
export declare const keySelectedElementPosition: unique symbol; | ||
export declare const keySelectedReferenceXLines: unique symbol; | ||
export declare const keySelectedReferenceYLines: unique symbol; | ||
export declare const keyGroupQueue: unique symbol; | ||
@@ -16,0 +14,0 @@ export declare const keyGroupQueueVertexesList: unique symbol; |
@@ -12,4 +12,2 @@ export const key = 'SELECT'; | ||
export const keySelectedElementPosition = Symbol(`${key}_selectedElementPosition`); | ||
export const keySelectedReferenceXLines = Symbol(`${key}_selectedReferenceXLines`); | ||
export const keySelectedReferenceYLines = Symbol(`${key}_selectedReferenceYLines`); | ||
export const keyGroupQueue = Symbol(`${key}_groupQueue`); | ||
@@ -16,0 +14,0 @@ export const keyGroupQueueVertexesList = Symbol(`${key}_groupQueueVertexesList`); |
@@ -5,3 +5,3 @@ import { is, calcElementsViewInfo, calcElementVertexesInGroup, calcElementQueueVertexesQueueInGroup, calcElementSizeController, calcElementCenterFromVertexes, rotatePointInGroup, getGroupQueueFromList, findElementsFromList, findElementsFromListByPositions, getElementPositionFromList, deepResizeGroupElement } from '@idraw/util'; | ||
import { getPointTarget, resizeElement, rotateElement, getSelectedListArea, calcSelectedElementsArea, isElementInGroup, isPointInViewActiveGroup, calcMoveInGroup } from './util'; | ||
import { middlewareEventSelect, middlewareEventSelectClear, middlewareEventSelectInGroup, middlewareEventSnapToGrid, keyActionType, keyResizeType, keyAreaStart, keyAreaEnd, keyGroupQueue, keyGroupQueueVertexesList, keyHoverElement, keyHoverElementVertexes, keySelectedElementList, keySelectedElementListVertexes, keySelectedElementController, keySelectedElementPosition, keySelectedReferenceXLines, keySelectedReferenceYLines, keyIsMoving, keyEnableSelectInGroup, keyEnableSnapToGrid, controllerSize } from './config'; | ||
import { middlewareEventSelect, middlewareEventSelectClear, middlewareEventSelectInGroup, middlewareEventSnapToGrid, keyActionType, keyResizeType, keyAreaStart, keyAreaEnd, keyGroupQueue, keyGroupQueueVertexesList, keyHoverElement, keyHoverElementVertexes, keySelectedElementList, keySelectedElementListVertexes, keySelectedElementController, keySelectedElementPosition, keyIsMoving, keyEnableSelectInGroup, keyEnableSnapToGrid, controllerSize } from './config'; | ||
import { calcReferenceInfo } from './reference'; | ||
@@ -100,4 +100,2 @@ import { middlewareEventTextEdit } from '../text-editor'; | ||
sharer.setSharedStorage(keySelectedElementPosition, []); | ||
sharer.setSharedStorage(keySelectedReferenceXLines, []); | ||
sharer.setSharedStorage(keySelectedReferenceYLines, []); | ||
sharer.setSharedStorage(keyIsMoving, null); | ||
@@ -317,4 +315,2 @@ sharer.setSharedStorage(keyEnableSelectInGroup, null); | ||
var _a, _b, _c; | ||
sharer.setSharedStorage(keySelectedReferenceXLines, []); | ||
sharer.setSharedStorage(keySelectedReferenceYLines, []); | ||
sharer.setSharedStorage(keyIsMoving, true); | ||
@@ -354,4 +350,2 @@ const data = sharer.getActiveStorage('data'); | ||
} | ||
sharer.setSharedStorage(keySelectedReferenceXLines, referenceInfo.xLines); | ||
sharer.setSharedStorage(keySelectedReferenceYLines, referenceInfo.yLines); | ||
} | ||
@@ -487,6 +481,6 @@ } | ||
inBusyMode = null; | ||
sharer.setSharedStorage(keySelectedReferenceXLines, []); | ||
sharer.setSharedStorage(keySelectedReferenceYLines, []); | ||
sharer.setSharedStorage(keyIsMoving, false); | ||
const data = sharer.getActiveStorage('data'); | ||
const selectedElements = sharer.getSharedStorage(keySelectedElementList); | ||
const hoverElement = sharer.getSharedStorage(keyHoverElement); | ||
const resizeType = sharer.getSharedStorage(keyResizeType); | ||
@@ -558,3 +552,3 @@ const actionType = sharer.getSharedStorage(keyActionType); | ||
} | ||
eventHub.trigger(eventChange, { data, type }); | ||
eventHub.trigger(eventChange, { data, type, selectedElements, hoverElement }); | ||
} | ||
@@ -643,9 +637,19 @@ viewer.drawFrame(); | ||
if (actionType === 'drag') { | ||
const xLines = sharer.getSharedStorage(keySelectedReferenceXLines); | ||
const yLines = sharer.getSharedStorage(keySelectedReferenceYLines); | ||
if (enableSnapToGrid === true) { | ||
drawReferenceLines(overlayContext, { | ||
xLines, | ||
yLines | ||
const referenceInfo = calcReferenceInfo(elem.uuid, { | ||
calculator, | ||
data: activeStore.data, | ||
groupQueue, | ||
viewScaleInfo, | ||
viewSizeInfo | ||
}); | ||
if (referenceInfo) { | ||
const { offsetX, offsetY, xLines, yLines } = referenceInfo; | ||
if (offsetX === 0 || offsetY === 0) { | ||
drawReferenceLines(overlayContext, { | ||
xLines, | ||
yLines | ||
}); | ||
} | ||
} | ||
} | ||
@@ -671,9 +675,19 @@ } | ||
if (actionType === 'drag') { | ||
const xLines = sharer.getSharedStorage(keySelectedReferenceXLines); | ||
const yLines = sharer.getSharedStorage(keySelectedReferenceYLines); | ||
if (enableSnapToGrid === true) { | ||
drawReferenceLines(overlayContext, { | ||
xLines, | ||
yLines | ||
const referenceInfo = calcReferenceInfo(elem.uuid, { | ||
calculator, | ||
data: activeStore.data, | ||
groupQueue, | ||
viewScaleInfo, | ||
viewSizeInfo | ||
}); | ||
if (referenceInfo) { | ||
const { offsetX, offsetY, xLines, yLines } = referenceInfo; | ||
if (offsetX === 0 || offsetY === 0) { | ||
drawReferenceLines(overlayContext, { | ||
xLines, | ||
yLines | ||
}); | ||
} | ||
} | ||
} | ||
@@ -680,0 +694,0 @@ } |
@@ -180,3 +180,2 @@ import { is } from '@idraw/util'; | ||
vLine.yList.push(newTargetBox.minY); | ||
vLine.yList.push(newTargetBox.midY); | ||
vLine.yList.push(newTargetBox.maxY); | ||
@@ -192,3 +191,2 @@ vLine.yList.push(...((hRefLineDotMap === null || hRefLineDotMap === void 0 ? void 0 : hRefLineDotMap[closestMinX]) || [])); | ||
vLine.yList.push(newTargetBox.minY); | ||
vLine.yList.push(newTargetBox.midY); | ||
vLine.yList.push(newTargetBox.maxY); | ||
@@ -204,3 +202,2 @@ vLine.yList.push(...((hRefLineDotMap === null || hRefLineDotMap === void 0 ? void 0 : hRefLineDotMap[closestMidX]) || [])); | ||
vLine.yList.push(newTargetBox.minY); | ||
vLine.yList.push(newTargetBox.midY); | ||
vLine.yList.push(newTargetBox.maxY); | ||
@@ -218,3 +215,2 @@ vLine.yList.push(...((hRefLineDotMap === null || hRefLineDotMap === void 0 ? void 0 : hRefLineDotMap[closestMaxX]) || [])); | ||
hLine.xList.push(newTargetBox.minX); | ||
hLine.xList.push(newTargetBox.midX); | ||
hLine.xList.push(newTargetBox.maxX); | ||
@@ -230,3 +226,2 @@ hLine.xList.push(...((vRefLineDotMap === null || vRefLineDotMap === void 0 ? void 0 : vRefLineDotMap[closestMinY]) || [])); | ||
hLine.xList.push(newTargetBox.minX); | ||
hLine.xList.push(newTargetBox.midX); | ||
hLine.xList.push(newTargetBox.maxX); | ||
@@ -242,3 +237,2 @@ hLine.xList.push(...((vRefLineDotMap === null || vRefLineDotMap === void 0 ? void 0 : vRefLineDotMap[closestMinY]) || [])); | ||
hLine.xList.push(newTargetBox.minX); | ||
hLine.xList.push(newTargetBox.midX); | ||
hLine.xList.push(newTargetBox.maxX); | ||
@@ -245,0 +239,0 @@ hLine.xList.push(...((vRefLineDotMap === null || vRefLineDotMap === void 0 ? void 0 : vRefLineDotMap[closestMaxY]) || [])); |
import { Data, ElementSize, ElementType, Element, ViewContext2D, Point, PointSize, ViewScaleInfo, ViewSizeInfo, ViewCalculator, PointWatcherEvent, BoardMiddleware, ViewRectVertexes, ElementSizeController, ElementPosition } from '@idraw/types'; | ||
import { keyActionType, keyResizeType, keyAreaStart, keyAreaEnd, keyGroupQueue, keyGroupQueueVertexesList, keyHoverElement, keyHoverElementVertexes, keySelectedElementList, keySelectedElementListVertexes, keySelectedElementController, keySelectedElementPosition, keySelectedReferenceXLines, keySelectedReferenceYLines, keyIsMoving, keyEnableSelectInGroup, keyEnableSnapToGrid, keyDebugElemCenter, keyDebugEnd0, keyDebugEndHorizontal, keyDebugEndVertical, keyDebugStartHorizontal, keyDebugStartVertical } from './config'; | ||
import { keyActionType, keyResizeType, keyAreaStart, keyAreaEnd, keyGroupQueue, keyGroupQueueVertexesList, keyHoverElement, keyHoverElementVertexes, keySelectedElementList, keySelectedElementListVertexes, keySelectedElementController, keySelectedElementPosition, keyIsMoving, keyEnableSelectInGroup, keyEnableSnapToGrid, keyDebugElemCenter, keyDebugEnd0, keyDebugEndHorizontal, keyDebugEndVertical, keyDebugStartHorizontal, keyDebugStartVertical } from './config'; | ||
export { Data, ElementType, Element, ElementSize, ViewContext2D, Point, PointSize, ViewScaleInfo, ViewSizeInfo, ViewCalculator, PointWatcherEvent, BoardMiddleware }; | ||
@@ -34,4 +34,2 @@ export type ControllerStyle = ElementSize & { | ||
[keySelectedElementPosition]: ElementPosition; | ||
[keySelectedReferenceXLines]: Array<PointSize[]>; | ||
[keySelectedReferenceYLines]: Array<PointSize[]>; | ||
[keyIsMoving]: boolean | null; | ||
@@ -38,0 +36,0 @@ [keyEnableSelectInGroup]: boolean | null; |
@@ -1,1 +0,1 @@ | ||
import { keyActionType, keyResizeType, keyAreaStart, keyAreaEnd, keyGroupQueue, keyGroupQueueVertexesList, keyHoverElement, keyHoverElementVertexes, keySelectedElementList, keySelectedElementListVertexes, keySelectedElementController, keySelectedElementPosition, keySelectedReferenceXLines, keySelectedReferenceYLines, keyIsMoving, keyEnableSelectInGroup, keyEnableSnapToGrid, keyDebugElemCenter, keyDebugEnd0, keyDebugEndHorizontal, keyDebugEndVertical, keyDebugStartHorizontal, keyDebugStartVertical } from './config'; | ||
import { keyActionType, keyResizeType, keyAreaStart, keyAreaEnd, keyGroupQueue, keyGroupQueueVertexesList, keyHoverElement, keyHoverElementVertexes, keySelectedElementList, keySelectedElementListVertexes, keySelectedElementController, keySelectedElementPosition, keyIsMoving, keyEnableSelectInGroup, keyEnableSnapToGrid, keyDebugElemCenter, keyDebugEnd0, keyDebugEndHorizontal, keyDebugEndVertical, keyDebugStartHorizontal, keyDebugStartVertical } from './config'; |
{ | ||
"name": "@idraw/core", | ||
"version": "0.4.0-beta.28", | ||
"version": "0.4.0-beta.29", | ||
"description": "", | ||
@@ -24,9 +24,9 @@ "main": "dist/esm/index.js", | ||
"devDependencies": { | ||
"@idraw/types": "^0.4.0-beta.28" | ||
"@idraw/types": "^0.4.0-beta.29" | ||
}, | ||
"dependencies": {}, | ||
"peerDependencies": { | ||
"@idraw/board": "^0.4.0-beta.28", | ||
"@idraw/renderer": "^0.4.0-beta.28", | ||
"@idraw/util": "^0.4.0-beta.28" | ||
"@idraw/board": "^0.4.0-beta.29", | ||
"@idraw/renderer": "^0.4.0-beta.29", | ||
"@idraw/util": "^0.4.0-beta.29" | ||
}, | ||
@@ -33,0 +33,0 @@ "publishConfig": { |
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
737183
12597