class CollectTool extends Tool { constructor(key) { super("Collect", "collect", key); } onNodeClick(node) { if (state.itemsContext !== CONTEXT.node) { state.clearSelectedItems(); state.itemsContext = CONTEXT.node; } if (state.selectedItems.has(node)) { state.removeSelectedItem(node); } else { state.addSelectedItem(node); } } onLinkClick(link) { if (state.itemsContext !== CONTEXT.link) { state.clearSelectedItems(); state.itemsContext = CONTEXT.link; } if (state.selectedItems.has(link)) { state.removeSelectedItem(link); } else { state.addSelectedItem(link); } } onKeyUp(key) { if (key.keyCode === 17) { state.setTool(state.previousTool); } } }