Skip to content

Commit 059c8e5

Browse files
committed
Filter task restores chart bypass on signature nodes. Fixes #395.
1 parent b7f483f commit 059c8e5

File tree

2 files changed

+17
-4
lines changed

2 files changed

+17
-4
lines changed

EnrichmentMapPlugin/src/main/java/org/baderlab/csplugins/enrichmentmap/task/FilterNodesEdgesTask.java

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22

33
import static org.baderlab.csplugins.enrichmentmap.style.EMStyleBuilder.FILTERED_OUT_EDGE_TRANSPARENCY;
44
import static org.baderlab.csplugins.enrichmentmap.style.EMStyleBuilder.FILTERED_OUT_NODE_TRANSPARENCY;
5+
import static org.baderlab.csplugins.enrichmentmap.style.EMStyleBuilder.Columns.NODE_GS_TYPE;
6+
import static org.baderlab.csplugins.enrichmentmap.style.EMStyleBuilder.Columns.NODE_GS_TYPE_SIGNATURE;
57
import static org.cytoscape.view.presentation.property.BasicVisualLexicon.EDGE_LABEL_TRANSPARENCY;
68
import static org.cytoscape.view.presentation.property.BasicVisualLexicon.EDGE_TRANSPARENCY;
79
import static org.cytoscape.view.presentation.property.BasicVisualLexicon.EDGE_VISIBLE;
@@ -13,10 +15,12 @@
1315
import java.util.List;
1416
import java.util.Set;
1517

18+
import org.baderlab.csplugins.enrichmentmap.model.EnrichmentMap;
1619
import org.baderlab.csplugins.enrichmentmap.style.NullCustomGraphics;
1720
import org.cytoscape.model.CyEdge;
1821
import org.cytoscape.model.CyNetwork;
1922
import org.cytoscape.model.CyNode;
23+
import org.cytoscape.model.CyRow;
2024
import org.cytoscape.view.model.CyNetworkView;
2125
import org.cytoscape.view.model.View;
2226
import org.cytoscape.view.model.VisualLexicon;
@@ -48,19 +52,21 @@ public String toString() {
4852

4953
@Inject private RenderingEngineManager renderingEngineManager;
5054

55+
private final EnrichmentMap map;
5156
private final CyNetworkView networkView;
5257
private final Set<CyNode> nodes;
5358
private final Set<CyEdge> edges;
5459
private final FilterMode filterMode;
5560

5661
public interface Factory {
57-
FilterNodesEdgesTask create(CyNetworkView networkView, Set<CyNode> nodes, Set<CyEdge> filteredEdges,
58-
FilterMode filterMode);
62+
FilterNodesEdgesTask create(EnrichmentMap map, CyNetworkView networkView,
63+
Set<CyNode> nodes, Set<CyEdge> filteredEdges, FilterMode filterMode);
5964
}
6065

6166
@Inject
62-
public FilterNodesEdgesTask(@Assisted CyNetworkView networkView, @Assisted Set<CyNode> nodes,
67+
public FilterNodesEdgesTask(@Assisted EnrichmentMap map, @Assisted CyNetworkView networkView, @Assisted Set<CyNode> nodes,
6368
@Assisted Set<CyEdge> edges, @Assisted FilterMode filterMode) {
69+
this.map = map;
6470
this.networkView = networkView;
6571
this.nodes = nodes;
6672
this.edges = edges;
@@ -126,6 +132,13 @@ private void filterNodes(Set<CyNode> nodes, TaskMonitor taskMonitor) {
126132
nv.setLockedValue(customGraphics1, NullCustomGraphics.getNullObject());
127133
break;
128134
}
135+
} else {
136+
// Signature (PA) nodes must have their chart-hiding bypass restored
137+
String prefix = map.getParams().getAttributePrefix();
138+
CyRow row = net.getRow(n);
139+
if(NODE_GS_TYPE_SIGNATURE.equals(NODE_GS_TYPE.get(row,prefix))) {
140+
nv.setLockedValue(customGraphics1, NullCustomGraphics.getNullObject());
141+
}
129142
}
130143
}
131144
}

EnrichmentMapPlugin/src/main/java/org/baderlab/csplugins/enrichmentmap/view/control/ControlPanelMediator.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1025,7 +1025,7 @@ public void actionPerformed(ActionEvent evt) {
10251025
return;
10261026

10271027
// Run Task
1028-
task = filterNodesEdgesTaskFactory.create(netView, filteredInNodes, filteredInEdges, filterMode);
1028+
task = filterNodesEdgesTaskFactory.create(map, netView, filteredInNodes, filteredInEdges, filterMode);
10291029
dialogTaskManager.execute(new TaskIterator(task), TaskUtil.allFinished(finishStatus -> {
10301030
task = null;
10311031
if (!cancelled)

0 commit comments

Comments
 (0)