UNPKG

@gorpacrate/core-graphics

Version:

A core library for creating shape-based graphic editors

36 lines 1.45 kB
"use strict"; exports.__esModule = true; var tslib_1 = require("tslib"); var React = require("react"); var declarations_1 = require("../declarations"); var grid_1 = require("../utils/grid"); var PointerRenderer = /** @class */ (function (_super) { tslib_1.__extends(PointerRenderer, _super); function PointerRenderer() { return _super !== null && _super.apply(this, arguments) || this; } PointerRenderer.prototype.needsRendering = function () { var _a = this.props, grid = _a.grid, mode = _a.mode, shapesDeclarations = _a.shapesDeclarations, mouse = _a.mouse; if (!grid.on) { return false; } if (!mouse.inside) { return false; } if (declarations_1.isDrawingShapeMode(mode) && !shapesDeclarations[mode.payload.shapeType].ignoreGrid) { return true; } return false; }; PointerRenderer.prototype.render = function () { if (!this.needsRendering()) { return null; } var _a = this.props, mouse = _a.mouse, grid = _a.grid; var _b = grid_1.snapCoordsIfNeeded(grid, mouse), x = _b.x, y = _b.y; return (React.createElement("circle", { cx: x + 0.5, cy: y + 0.5, r: '2', fill: 'rgba(0,0,0,0.2)', stroke: 'rgba(0,0,0,0.4)', strokeWidth: '1' })); }; return PointerRenderer; }(React.Component)); exports["default"] = PointerRenderer; //# sourceMappingURL=pointer-renderer.js.map