Skip to content
Snippets Groups Projects
deletetool.js 686 B
import Tool from "./tool";
import { graph, state } from "../editor";
import * as Graph from "../graph";

export default class DeleteTool extends Tool {
    constructor(key) {
        super("Delete", "delete", key);
    }

    onNodeClick(node) {
        graph.deleteNode(node[Graph.NODE_ID]);
        
        if (state.selectedItem == node) {
            state.setSelectedItem(undefined);
        }
    }

    onLinkClick(link) {
        graph.deleteLink(
            link[Graph.LINK_SOURCE][Graph.NODE_ID],
            link[Graph.LINK_TARGET][Graph.NODE_ID]
        );
        
        if (state.selectedItem == link) {
            state.setSelectedItem(undefined);
        }
    }
}