hit Ctrl+A a second time to select all synapses, too (#968)
This commit is contained in:
parent
d51e3f3b52
commit
6129a27ecf
1 changed files with 19 additions and 5 deletions
|
@ -2,6 +2,7 @@
|
||||||
|
|
||||||
import Active from './Active'
|
import Active from './Active'
|
||||||
import Control from './Control'
|
import Control from './Control'
|
||||||
|
import DataModel from './DataModel'
|
||||||
import JIT from './JIT'
|
import JIT from './JIT'
|
||||||
import Mobile from './Mobile'
|
import Mobile from './Mobile'
|
||||||
import Realtime from './Realtime'
|
import Realtime from './Realtime'
|
||||||
|
@ -31,14 +32,27 @@ const Listeners = {
|
||||||
break
|
break
|
||||||
case 65: // if a or A is pressed
|
case 65: // if a or A is pressed
|
||||||
if ((e.ctrlKey || e.metaKey) && onCanvas) {
|
if ((e.ctrlKey || e.metaKey) && onCanvas) {
|
||||||
Control.deselectAllNodes()
|
const nodesCount = Object.keys(Visualize.mGraph.graph.nodes).length
|
||||||
Control.deselectAllEdges()
|
const selectedNodesCount = Selected.Nodes.length
|
||||||
|
|
||||||
e.preventDefault()
|
e.preventDefault()
|
||||||
Visualize.mGraph.graph.eachNode(function(n) {
|
|
||||||
Control.selectNode(n, e)
|
// Hit Ctrl+A once to select all nodes
|
||||||
|
Control.deselectAllNodes()
|
||||||
|
Visualize.mGraph.graph.eachNode(node => {
|
||||||
|
Control.selectNode(node, e)
|
||||||
})
|
})
|
||||||
|
|
||||||
|
// Hitting Ctrl+A a second time will select all edges too
|
||||||
|
Control.deselectAllEdges()
|
||||||
|
if (nodesCount === selectedNodesCount) {
|
||||||
|
DataModel.Synapses.models.forEach(synapse => {
|
||||||
|
const topic1id = synapse.get('topic1_id')
|
||||||
|
const topic2id = synapse.get('topic2_id')
|
||||||
|
const edge = Visualize.mGraph.graph.edges[topic1id][topic2id]
|
||||||
|
Control.selectEdge(edge, e)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
Visualize.mGraph.plot()
|
Visualize.mGraph.plot()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue