diff options
| author | Alon Levy <alon@pobox.com> | 2015-05-18 18:17:46 +0300 |
|---|---|---|
| committer | Alon Levy <alon@pobox.com> | 2015-05-18 18:19:48 +0300 |
| commit | cef746aafccc93db66afe881e0063eb0c8534ef3 (patch) | |
| tree | fb67539661124368916a533ac3bddf8a8248abab /src/client | |
| parent | 59057625951087536fe7ad1a66518a2a575f6aa9 (diff) | |
client/view/selection: use shortest paths for plural selection
Diffstat (limited to 'src/client')
| -rw-r--r-- | src/client/view/selection.js | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/client/view/selection.js b/src/client/view/selection.js index 5455c7c0..ae3be8b2 100644 --- a/src/client/view/selection.js +++ b/src/client/view/selection.js @@ -183,6 +183,13 @@ function mutual_neighbours(nodes) { return _select_nodes_helper(nodes, connected); } +function shortest_paths(nodes) { + var ret = get_main_graph().shortest_paths(nodes); + + ret.nodes = get_main_graph().find_nodes__by_id(_.pluck(ret.nodes, "node_id")); + return ret; +} + /** * neighbours(nodes) * @@ -270,7 +277,7 @@ var select_nodes = function(nodes, keep_selected_links) var select_both = function(new_nodes, new_links) { - var related = new_nodes.length == 1 ? neighbours(new_nodes) : mutual_neighbours(new_nodes); + var related = new_nodes.length == 1 ? neighbours(new_nodes) : shortest_paths(new_nodes); inner_select(new_nodes, related.nodes, new_links, related.links); } |
