From 6a76e81fecad60b8ea147f80cf5190c0f03b1761 Mon Sep 17 00:00:00 2001 From: Ni55aN Date: Sat, 13 Jul 2019 12:15:24 +0300 Subject: [PATCH] add multiselectnode event, v1.4.1-rc.1 --- package.json | 2 +- src/events.ts | 6 ++++++ src/view/node.ts | 7 +++++-- 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index 37b92022..dc912301 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "rete", - "version": "1.4.0", + "version": "1.4.1-rc.1", "description": "JavaScript framework", "main": "build/rete.common.js", "module": "build/rete.esm.js", diff --git a/src/events.ts b/src/events.ts index b7e93857..27e869b7 100644 --- a/src/events.ts +++ b/src/events.ts @@ -27,6 +27,7 @@ export class EditorEvents extends Events { nodetranslated: [], nodedraged: [], selectnode: [], + multiselectnode: [], nodeselect: [], nodeselected: [], rendernode: [], @@ -68,6 +69,11 @@ export interface EventsTypes extends DefaultEventsTypes { node: Node; accumulate: boolean; }; + multiselectnode: { + node: Node; + accumulate: boolean; + e: MouseEvent; + }; nodeselect: Node; nodeselected: Node; rendernode: { diff --git a/src/view/node.ts b/src/view/node.ts index d82de947..3459ffef 100644 --- a/src/view/node.ts +++ b/src/view/node.ts @@ -70,9 +70,12 @@ export class NodeView extends Emitter { return socket.getPosition(this.node); } - onSelect(e: MouseEvent) { + onSelect(e: MouseEvent) { + const payload = { node: this.node, accumulate: e.ctrlKey, e }; + this.onStart(); - this.trigger('selectnode', { node: this.node, accumulate: e.ctrlKey }); + this.trigger('multiselectnode', payload); + this.trigger('selectnode', payload); } onStart() {