drawer.js 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. import { drawerManager as DrawerManager } from "./drawer-manager";
  2. import { app as App } from "../../app";
  3. import { selector as Selector } from "../application/selector";
  4. import { Action } from "../models/application/actions/action";
  5. export class Drawer {
  6. constructor() {
  7. this.component;
  8. this.drawerManager = DrawerManager;
  9. this.drawing = false;
  10. this.states = [];
  11. this.state = undefined;
  12. this.konvaObject;
  13. this.elementClass = undefined;
  14. }
  15. onDragMove() {}
  16. setElementClass(elementClass) {
  17. this.elementClass = elementClass;
  18. }
  19. setState(state) {
  20. this.state = state;
  21. }
  22. clearState() {
  23. this.state = undefined;
  24. }
  25. setStatus(status) {
  26. App.setStatus(status);
  27. }
  28. clear() {
  29. this.reset();
  30. App.clearSelectedTool();
  31. }
  32. reset() {
  33. this.clearState();
  34. this.setStatus("");
  35. Selector.clear();
  36. }
  37. addAggregator(aggregator) {
  38. this.addAction(new Action(aggregator.genericObject));
  39. DrawerManager.addAggregator(aggregator);
  40. }
  41. draw(object) {
  42. Drawer.drawObject(object);
  43. }
  44. batchDraw() {
  45. Drawer.stageBatchDraw();
  46. }
  47. update(aggregator, event) {
  48. throw "Not implemented exception";
  49. }
  50. setKonvaObject(konvaObject) {
  51. this.konvaObject = konvaObject;
  52. }
  53. addAction(action) {
  54. this.drawerManager.addAction(action);
  55. }
  56. static setMaxIndex(object) {
  57. object.zIndex(Number.MAX_SAFE_INTEGER);
  58. Drawer.stageBatchDraw();
  59. }
  60. static drawObject(object) {
  61. DrawerManager.draw(object);
  62. }
  63. static getKonvaGroup(draggable) {
  64. if (draggable == undefined) draggable = true;
  65. const group = new Konva.Group({
  66. draggable: draggable,
  67. resizeEnabled: draggable
  68. });
  69. return group;
  70. }
  71. static stageBatchDraw() {
  72. DrawerManager.batchDraw();
  73. }
  74. }