|
@@ -1,10 +1,16 @@
|
|
|
+// iGeom JS
|
|
|
+// LInE: "free software and private data"
|
|
|
+// http://www.matematica.br
|
|
|
+// http://www.usp.br/line
|
|
|
+
|
|
|
import { drawerManager as DrawerManager } from "./drawer-manager";
|
|
|
import { app as App } from "../../app";
|
|
|
import { selector as Selector } from "../application/selector";
|
|
|
import { Action } from "../models/application/actions/action";
|
|
|
|
|
|
export class Drawer {
|
|
|
- constructor() {
|
|
|
+
|
|
|
+ constructor () {
|
|
|
this.component;
|
|
|
this.drawerManager = DrawerManager;
|
|
|
this.drawing = false;
|
|
@@ -12,64 +18,82 @@ export class Drawer {
|
|
|
this.state = undefined;
|
|
|
this.konvaObject;
|
|
|
this.elementClass = undefined;
|
|
|
- }
|
|
|
- onDragMove() { }
|
|
|
+ }
|
|
|
+
|
|
|
+ onDragMove () { }
|
|
|
setElementClass(elementClass) {
|
|
|
this.elementClass = elementClass;
|
|
|
- }
|
|
|
- setState(state) {
|
|
|
+ }
|
|
|
+
|
|
|
+ setState (state) {
|
|
|
this.state = state;
|
|
|
- }
|
|
|
- clearState() {
|
|
|
+ }
|
|
|
+
|
|
|
+ clearState () {
|
|
|
this.state = undefined;
|
|
|
- }
|
|
|
- setStatus(status) {
|
|
|
+ }
|
|
|
+
|
|
|
+ setStatus (status) {
|
|
|
App.setStatus(status);
|
|
|
- }
|
|
|
- clear() {
|
|
|
+ }
|
|
|
+
|
|
|
+ clear () {
|
|
|
this.reset();
|
|
|
App.clearSelectedTool();
|
|
|
- }
|
|
|
- reset() {
|
|
|
+ }
|
|
|
+
|
|
|
+ reset () {
|
|
|
this.clearState();
|
|
|
this.setStatus("");
|
|
|
Selector.clear();
|
|
|
- }
|
|
|
- addAggregator(aggregator) {
|
|
|
+ }
|
|
|
+
|
|
|
+ addAggregator (aggregator) {
|
|
|
this.addAction(new Action(aggregator.genericObject));
|
|
|
DrawerManager.addAggregator(aggregator);
|
|
|
- }
|
|
|
- draw(object) {
|
|
|
+ }
|
|
|
+
|
|
|
+ draw (object) {
|
|
|
+ console.log("drawer.js!draw(object): object=" + JSON.stringify(object));
|
|
|
Drawer.drawObject(object);
|
|
|
- }
|
|
|
- batchDraw() {
|
|
|
+ }
|
|
|
+
|
|
|
+ batchDraw () {
|
|
|
Drawer.stageBatchDraw();
|
|
|
- }
|
|
|
- update(aggregator, event) {
|
|
|
+ }
|
|
|
+
|
|
|
+ update (aggregator, event) {
|
|
|
throw "Not implemented exception";
|
|
|
- }
|
|
|
- setKonvaObject(konvaObject) {
|
|
|
+ }
|
|
|
+
|
|
|
+ setKonvaObject (konvaObject) {
|
|
|
this.konvaObject = konvaObject;
|
|
|
- }
|
|
|
- addAction(action) {
|
|
|
+ }
|
|
|
+
|
|
|
+ addAction (action) {
|
|
|
this.drawerManager.addAction(action);
|
|
|
- }
|
|
|
- static setMaxIndex(object) {
|
|
|
+ }
|
|
|
+
|
|
|
+ static setMaxIndex (object) {
|
|
|
object.zIndex(Number.MAX_SAFE_INTEGER);
|
|
|
Drawer.stageBatchDraw();
|
|
|
- }
|
|
|
- static drawObject(object) {
|
|
|
+ }
|
|
|
+
|
|
|
+ static drawObject (object) {
|
|
|
DrawerManager.draw(object);
|
|
|
- }
|
|
|
- static getKonvaGroup(draggable) {
|
|
|
+ }
|
|
|
+
|
|
|
+ static getKonvaGroup (draggable) {
|
|
|
if (draggable == undefined) draggable = true;
|
|
|
const group = new Konva.Group({
|
|
|
draggable: draggable,
|
|
|
resizeEnabled: draggable
|
|
|
});
|
|
|
return group;
|
|
|
- }
|
|
|
- static stageBatchDraw() {
|
|
|
+ }
|
|
|
+
|
|
|
+ static stageBatchDraw () {
|
|
|
DrawerManager.batchDraw();
|
|
|
- }
|
|
|
-}
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|