From 2a692c51577547d350bfe96a006949f185ebdd77 Mon Sep 17 00:00:00 2001 From: Matthias Konitzny <konitzny@ibr.cs.tu-bs.de> Date: Fri, 25 Mar 2022 11:49:54 +0100 Subject: [PATCH] The editor tools now correctly import image assets. --- src/editor/js/interactions.js | 2 +- src/editor/js/toolbar.js | 5 ----- src/editor/js/tools/addnodetool.js | 5 +++-- src/editor/js/tools/collecttool.js | 3 ++- src/editor/js/tools/connecttool.js | 3 ++- src/editor/js/tools/deletetool.js | 6 ++++-- src/editor/js/tools/redotool.js | 9 +++++---- src/editor/js/tools/savetool.js | 5 +++-- src/editor/js/tools/selecttool.js | 3 ++- src/editor/js/tools/settingstool.js | 5 +++-- src/editor/js/tools/undotool.js | 3 ++- 11 files changed, 27 insertions(+), 22 deletions(-) diff --git a/src/editor/js/interactions.js b/src/editor/js/interactions.js index 4809612..1f7f1bf 100644 --- a/src/editor/js/interactions.js +++ b/src/editor/js/interactions.js @@ -1,6 +1,6 @@ import jQuery from "jquery"; import { state } from "./editor"; -import { listAllSpaces, saveGraphJson } from "../../../datasets/datasets"; +import { listAllSpaces, saveGraphJson } from "../../datasets"; import { SPACE } from "../../config"; /** diff --git a/src/editor/js/toolbar.js b/src/editor/js/toolbar.js index 658553f..ab6cd8a 100644 --- a/src/editor/js/toolbar.js +++ b/src/editor/js/toolbar.js @@ -1,12 +1,9 @@ import jQuery from "jquery"; -import { PLUGIN_PATH } from "../../config"; import { state } from "./editor"; const ID_TOOLBAR = "#toolbar"; const SAVE_BUTTON_ID = "div#ks-editor #toolbar-save"; -const TOOL_ICON_SRC = PLUGIN_PATH + "editor/images/tools/"; -const TOOL_ICON_FORMAT = ".png"; const TOOL_SELECTED_CLASS = "selected"; export default class Toolbar { @@ -55,9 +52,7 @@ export default class Toolbar { '" title="' + tool.getName() + '"><img src="' + - TOOL_ICON_SRC + tool.getIcon() + - TOOL_ICON_FORMAT + '"></button>' ); } diff --git a/src/editor/js/tools/addnodetool.js b/src/editor/js/tools/addnodetool.js index 52a74c9..0984deb 100644 --- a/src/editor/js/tools/addnodetool.js +++ b/src/editor/js/tools/addnodetool.js @@ -1,9 +1,10 @@ import Tool from "./tool"; import { graph, state } from "../editor"; +import AddNodeIcon from "../../images/tools/addnode.png"; export default class AddNodeTool extends Tool { constructor(key) { - super("Add node", "addnode", key); + super("Add node", AddNodeIcon, key); } onBackgroundClick(event, positions) { @@ -22,4 +23,4 @@ export default class AddNodeTool extends Tool { state.setSelectedItem(node); } -} \ No newline at end of file +} diff --git a/src/editor/js/tools/collecttool.js b/src/editor/js/tools/collecttool.js index ffd3f71..727e3a9 100644 --- a/src/editor/js/tools/collecttool.js +++ b/src/editor/js/tools/collecttool.js @@ -2,10 +2,11 @@ import Tool from "./tool"; import { state } from "../editor"; import { CONTEXT } from "../state"; import { CollectMenu, COLLECTION_KEY } from "./menus/collectmenu"; +import CollectIcon from "../../images/tools/collect.png"; export default class CollectTool extends Tool { constructor(key) { - super("Collect", "collect", key, new CollectMenu()); + super("Collect", CollectIcon, key, new CollectMenu()); } onNodeClick(node) { diff --git a/src/editor/js/tools/connecttool.js b/src/editor/js/tools/connecttool.js index 610e51d..95bf551 100644 --- a/src/editor/js/tools/connecttool.js +++ b/src/editor/js/tools/connecttool.js @@ -1,12 +1,13 @@ import Tool from "./tool"; import { graph, state } from "../editor"; import * as Graph from "../graph"; +import ConnectIcon from "../../images/tools/connect.png"; const KEEP_SOURCE_KEY_ID = 17; export default class ConnectTool extends Tool { constructor(key) { - super("Connect two nodes", "connect", key); + super("Connect two nodes", ConnectIcon, key); this.keepSource = false; } diff --git a/src/editor/js/tools/deletetool.js b/src/editor/js/tools/deletetool.js index ae34756..44e193c 100644 --- a/src/editor/js/tools/deletetool.js +++ b/src/editor/js/tools/deletetool.js @@ -3,6 +3,7 @@ import { graph, state, renderer } from "../editor"; import * as Graph from "../graph"; import jquery from "jquery"; import ToolMenu from "./menus/toolmenu"; +import DeleteIcon from "../../images/tools/delete.png"; const BOX_SELECT_LAYER_ID = "#box-select-layer"; const BOX_SELECT_ID_WH = "box-select"; @@ -14,7 +15,7 @@ const SELECT_BOX_SELECTOR = BOX_SELECT_LAYER_ID + " #" + BOX_SELECT_ID_WH; var deleteToolInstance = undefined; // Used for box delete export default class DeleteTool extends Tool { constructor(key) { - super("Delete", "delete", key, new ToolMenu()); + super("Delete", DeleteIcon, key, new ToolMenu()); this.setupBoxSelect(); this.isActive = false; @@ -48,7 +49,8 @@ export default class DeleteTool extends Tool { var nodeNames = selectedNodes.map((n) => n[Graph.NODE_LABEL]); //! Problem: If browser is not actually showing the alerts, it always returns false! var shouldDelete = confirm( - "Are you sure you want to delete all these nodes?\n\n" + nodeNames.join("\n") + "Are you sure you want to delete all these nodes?\n\n" + + nodeNames.join("\n") ); // Delete if confirmed diff --git a/src/editor/js/tools/redotool.js b/src/editor/js/tools/redotool.js index 1334b04..d8938f0 100644 --- a/src/editor/js/tools/redotool.js +++ b/src/editor/js/tools/redotool.js @@ -1,13 +1,14 @@ import Tool from "./tool"; import { graph, state } from "../editor"; +import RedoIcon from "../../images/tools/delete.png"; export default class RedoTool extends Tool { constructor(key) { - super("Redo", "redo", key); + super("Redo", RedoIcon, key); } - + onToolActivate() { graph.redo(); - state.setTool(state.previousTool) + state.setTool(state.previousTool); } -} \ No newline at end of file +} diff --git a/src/editor/js/tools/savetool.js b/src/editor/js/tools/savetool.js index efb5707..fa1c1ee 100644 --- a/src/editor/js/tools/savetool.js +++ b/src/editor/js/tools/savetool.js @@ -1,11 +1,12 @@ import Tool from "./tool"; -import { saveGraphJson } from "../../../../datasets/datasets"; +import { saveGraphJson } from "../../../datasets"; import { state, graph } from "../editor"; import { SPACE } from "../../../config"; +import SaveIcon from "../../images/tools/save.png"; export default class SaveTool extends Tool { constructor(key) { - super("Save", "save", key); + super("Save", SaveIcon, key); } onToolActivate() { diff --git a/src/editor/js/tools/selecttool.js b/src/editor/js/tools/selecttool.js index 8af8262..7d46a92 100644 --- a/src/editor/js/tools/selecttool.js +++ b/src/editor/js/tools/selecttool.js @@ -1,10 +1,11 @@ import Tool from "./tool"; import { graph, state } from "../editor"; import * as SelectMenu from "./menus/selectmenu"; +import SelectIcon from "../../images/tools/select.png"; export default class SelectTool extends Tool { constructor(key) { - super("Select", "select", key, new SelectMenu.SelectMenu()); + super("Select", SelectIcon, key, new SelectMenu.SelectMenu()); } onNodeClick(node) { diff --git a/src/editor/js/tools/settingstool.js b/src/editor/js/tools/settingstool.js index ca217e5..8b97ec4 100644 --- a/src/editor/js/tools/settingstool.js +++ b/src/editor/js/tools/settingstool.js @@ -6,10 +6,11 @@ import { PHYSICS_DELAY_KEY, } from "./menus/settingsmenu"; import Tool from "./tool"; +import SettingsIcon from "../../images/tools/settings.png"; export default class SettingsTool extends Tool { constructor(key) { - super("Settings", "settings", key, new SettingsMenu(), true); + super("Settings", SettingsIcon, key, new SettingsMenu(), true); } onMenuChange(key, value) { @@ -18,7 +19,7 @@ export default class SettingsTool extends Tool { } else if (key === RESIMULATE_KEY) { graph.restartSimulation(); } else if (key === PHYSICS_DELAY_KEY) { - graph.physicsDelay = Number(value) * 1000; // Convert seconds to ms + graph.physicsDelay = Number(value) * 1000; // Convert seconds to ms } } } diff --git a/src/editor/js/tools/undotool.js b/src/editor/js/tools/undotool.js index f1a48df..0034cce 100644 --- a/src/editor/js/tools/undotool.js +++ b/src/editor/js/tools/undotool.js @@ -1,9 +1,10 @@ import Tool from "./tool"; import { graph, state } from "../editor"; +import UndoIcon from "../../images/tools/undo.png"; export default class UndoTool extends Tool { constructor(key) { - super("Undo", "undo", key); + super("Undo", UndoIcon, key); } onToolActivate() { -- GitLab