summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/client/view/graph_view.js8
-rw-r--r--src/client/view/selection.js10
2 files changed, 12 insertions, 6 deletions
diff --git a/src/client/view/graph_view.js b/src/client/view/graph_view.js
index 8f43d9ea..082338ca 100644
--- a/src/client/view/graph_view.js
+++ b/src/client/view/graph_view.js
@@ -233,12 +233,12 @@ function GraphView(spec) {
link.attr("class", function(d, i){
var temp_and = (d.name && d.name.replace(/ /g,"")=="and" && temporary) ? "temp_and" : "";
- return ["graph link", temp_and, selection.selected_class(d)].join(' ');
+ return ["graph link", temp_and, selection.selected_class__link(d)].join(' ');
});
link.selectAll('path.link')
.attr('class', function(d) {
- return [d.state || "perm", selection.selected_class(d), "link graph"].join(' ');
+ return [d.state || "perm", selection.selected_class__link(d), "link graph"].join(' ');
});
link.exit().remove();
@@ -255,7 +255,7 @@ function GraphView(spec) {
.append("text")
.attr('id', function(d){ return d.id; }) // append link id to enable data->visual mapping
.attr("class", function(d) {
- return ["linklabel graph", selection.selected_class(d)].join(' ');
+ return ["linklabel graph", selection.selected_class__link(d)].join(' ');
})
.attr("text-anchor", "middle")
.on("click", function(d, i) {
@@ -306,7 +306,7 @@ function GraphView(spec) {
if (selection.node_selected(d)) {
ontop.push(this);
}
- return ['node', selection.selected_class(d)].join(' ');
+ return ['node', selection.selected_class__node(d)].join(' ');
});
function reparent(new_parent, element) {
if (element.parentNode == new_parent) {
diff --git a/src/client/view/selection.js b/src/client/view/selection.js
index 386e22da..7ce70d3f 100644
--- a/src/client/view/selection.js
+++ b/src/client/view/selection.js
@@ -111,10 +111,15 @@ var node_selected = function(node) {
return selected_nodes__by_id[node.id] !== undefined;
}
-var selected_class = function(node) {
+var selected_class__node = function(node) {
return selected_nodes.length > 0 ? (node_selected(node) ? "selected" : "notselected") : "";
}
+var selected_class__link = function(link) {
+ return selected_nodes.length > 0 ? (node_selected(link.__src) || node_selected(link.__dst) ?
+ "selected" : "notselected") : "";
+}
+
var clear = function() {
updateSelectedNodesBus([]);
get_rz_core().main_graph.setRegularState();
@@ -146,7 +151,8 @@ return {
connectedComponent: connectedComponent,
clear: clear,
update: update,
- selected_class: selected_class,
+ selected_class__node: selected_class__node,
+ selected_class__link: selected_class__link,
node_selected: node_selected,
selectionChangedBus: selectionChangedBus,
};