UNPKG

core-graphics

Version:

A core library for creating shape-based graphic editors

126 lines (124 loc) 3.65 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.isSelectMode = isSelectMode; exports.isRubberBandSelectionMode = isRubberBandSelectionMode; exports.isMovingViewportMode = isMovingViewportMode; exports.isSelectedMode = isSelectedMode; exports.isSubSelectedMode = isSubSelectedMode; exports.isMovingMode = isMovingMode; exports.isDrawingShapeMode = isDrawingShapeMode; exports.isResizingMode = isResizingMode; exports.modeSelect = modeSelect; exports.modeSelected = modeSelected; exports.modeMovingViewport = modeMovingViewport; exports.modeRubberbandSelection = modeRubberbandSelection; exports.modeSubSelected = modeSubSelected; exports.modeMoving = modeMoving; exports.modeResizing = modeResizing; exports.modeDrawShape = modeDrawShape; var ModeType = exports.ModeType = undefined; (function (ModeType) { ModeType[ModeType["Select"] = 0] = "Select"; ModeType[ModeType["Selected"] = 1] = "Selected"; ModeType[ModeType["MovingViewport"] = 2] = "MovingViewport"; ModeType[ModeType["SubSelected"] = 3] = "SubSelected"; ModeType[ModeType["Moving"] = 4] = "Moving"; ModeType[ModeType["DrawingShape"] = 5] = "DrawingShape"; ModeType[ModeType["Resizing"] = 6] = "Resizing"; ModeType[ModeType["RubberbandSelection"] = 7] = "RubberbandSelection"; })(ModeType || (exports.ModeType = ModeType = {})); function isSelectMode(base) { return base.type === ModeType.Select; } function isRubberBandSelectionMode(base) { return base.type === ModeType.RubberbandSelection; } function isMovingViewportMode(base) { return base.type === ModeType.MovingViewport; } function isSelectedMode(base) { return base.type === ModeType.Selected; } function isSubSelectedMode(base) { return base.type === ModeType.SubSelected; } function isMovingMode(base) { return base.type === ModeType.Moving; } function isDrawingShapeMode(base) { return base.type === ModeType.DrawingShape; } function isResizingMode(base) { return base.type === ModeType.Resizing; } function modeSelect() { return { type: ModeType.Select, displayName: 'Select' }; } function modeSelected(ids) { return { type: ModeType.Selected, displayName: 'Selected', payload: { ids: ids } }; } function modeMovingViewport(payload) { if (!payload) { return { type: ModeType.MovingViewport, displayName: 'Moving viewport', payload: { moving: false, dx: 0, dy: 0 } }; } return { type: ModeType.MovingViewport, displayName: 'Moving viewport', payload: payload }; } function modeRubberbandSelection(payload) { return { type: ModeType.RubberbandSelection, displayName: 'Rubberband selection', payload: payload }; } function modeSubSelected(id) { return { type: ModeType.SubSelected, displayName: 'Sub-selected', payload: { id: id } }; } function modeMoving(payload) { return { type: ModeType.Moving, displayName: 'Moving', payload: payload }; } function modeResizing(payload) { return { type: ModeType.Resizing, displayName: 'Resizing', payload: payload }; } function modeDrawShape(shapeDeclaration) { var displayName = shapeDeclaration.displayName; var type = shapeDeclaration.type; return { type: ModeType.DrawingShape, displayName: "Draw " + displayName, payload: { shapeType: type, // drawingGenerator: null, drawnKeyPoints: [], drawing: false } }; }