Author: kono
Date: 2012-06-28 15:15:54 -0700 (Thu, 28 Jun 2012)
New Revision: 29720
Modified:
core3/impl/trunk/webservice-psicquic-client-impl/src/main/java/org/cytoscape/webservice/psicquic/mapper/MergedNetworkBuilder.java
core3/impl/trunk/webservice-psicquic-client-impl/src/main/java/org/cytoscape/webservice/psicquic/task/ExpandFromSelectedSourcesTask.java
Log:
fixes #1164 Expand function correctly connects existing nodes.
Modified:
core3/impl/trunk/webservice-psicquic-client-impl/src/main/java/org/cytoscape/webservice/psicquic/mapper/MergedNetworkBuilder.java
===================================================================
---
core3/impl/trunk/webservice-psicquic-client-impl/src/main/java/org/cytoscape/webservice/psicquic/mapper/MergedNetworkBuilder.java
2012-06-28 20:59:16 UTC (rev 29719)
+++
core3/impl/trunk/webservice-psicquic-client-impl/src/main/java/org/cytoscape/webservice/psicquic/mapper/MergedNetworkBuilder.java
2012-06-28 22:15:54 UTC (rev 29720)
@@ -10,10 +10,13 @@
import java.util.Map;
import org.cytoscape.model.CyEdge;
+import org.cytoscape.model.CyIdentifiable;
import org.cytoscape.model.CyNetwork;
import org.cytoscape.model.CyNetworkFactory;
import org.cytoscape.model.CyNode;
import org.cytoscape.model.CyTable;
+import org.cytoscape.view.model.CyNetworkView;
+import org.cytoscape.view.model.View;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -44,16 +47,27 @@
public CyNetwork buildNetwork(final InteractionCluster iC) throws
IOException {
CyNetwork network = networkFactory.createNetwork();
- process(iC, network);
+ process(iC, network, null, null);
return network;
}
- public Map<String, CyNode> addToNetwork(final InteractionCluster iC,
CyNetwork network) {
- return process(iC, network);
+ public Map<String, CyNode> addToNetwork(final InteractionCluster iC,
CyNetworkView networkView, final View<CyNode> hubNode) {
+ return process(iC, networkView.getModel(), networkView,
hubNode);
}
- private final Map<String, CyNode> process(final InteractionCluster iC,
CyNetwork network) {
+ private final Map<String, CyNode> process(final InteractionCluster iC,
CyNetwork network, CyNetworkView netView, final View<CyNode> hubNode) {
nodeMap = new HashMap<String, CyNode>();
+ if(hubNode != null) {
+
nodeMap.put(network.getRow(hubNode.getModel()).get(CyNetwork.NAME,
String.class), hubNode.getModel());
+ if(netView != null)
+
network.getRow(hubNode.getModel()).set(CyNetwork.SELECTED, true);
+ }
+
+ if(network.getNodeCount() != 0) {
+ for(CyNode existingNode: network.getNodeList())
+
nodeMap.put(network.getRow(existingNode).get(CyNetwork.NAME, String.class),
existingNode);
+ }
+
Map<Integer, EncoreInteraction> interactions =
iC.getInteractionMapping();
Map<String, List<Integer>> interactorMapping =
iC.getInteractorMapping();
Map<String, String> interactorSynonyms = iC.getSynonymMapping();
@@ -73,6 +87,8 @@
if (sourceNode == null) {
sourceNode = network.addNode();
network.getRow(sourceNode).set(CyNetwork.NAME,
source);
+ if(netView != null)
+
network.getRow(sourceNode).set(CyNetwork.SELECTED, true);
nodeMap.put(source, sourceNode);
}
final String target = interaction.getInteractorB();
@@ -80,6 +96,8 @@
if (targetNode == null) {
targetNode = network.addNode();
network.getRow(targetNode).set(CyNetwork.NAME,
target);
+ if(netView != null)
+
network.getRow(targetNode).set(CyNetwork.SELECTED, true);
nodeMap.put(target, targetNode);
}
mapper.mapNodeColumn(interaction,
network.getRow(sourceNode), network.getRow(targetNode));
Modified:
core3/impl/trunk/webservice-psicquic-client-impl/src/main/java/org/cytoscape/webservice/psicquic/task/ExpandFromSelectedSourcesTask.java
===================================================================
---
core3/impl/trunk/webservice-psicquic-client-impl/src/main/java/org/cytoscape/webservice/psicquic/task/ExpandFromSelectedSourcesTask.java
2012-06-28 20:59:16 UTC (rev 29719)
+++
core3/impl/trunk/webservice-psicquic-client-impl/src/main/java/org/cytoscape/webservice/psicquic/task/ExpandFromSelectedSourcesTask.java
2012-06-28 22:15:54 UTC (rev 29720)
@@ -2,7 +2,6 @@
import java.util.ArrayList;
import java.util.Collection;
-import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
@@ -28,7 +27,6 @@
import org.cytoscape.work.Tunable;
import org.cytoscape.work.util.ListMultipleSelection;
-import uk.ac.ebi.enfin.mi.cluster.EncoreInteraction;
import uk.ac.ebi.enfin.mi.cluster.InteractionCluster;
public class ExpandFromSelectedSourcesTask extends AbstractTask {
@@ -68,7 +66,7 @@
final List<String> sourceNames = new
ArrayList<String>(sourceMap.keySet());
services = new ListMultipleSelection<String>(sourceNames);
- services.setSelectedValues(sourceNames);
+ services.setSelectedValues(sourceNames);
}
@Override
@@ -110,24 +108,12 @@
}
private void expand(final InteractionCluster iC) {
- final CyNetwork parentNetwork = netView.getModel();
- final Map<String, CyNode> nodeMap = builder.addToNetwork(iC,
parentNetwork);
-
eh.flushPayloadEvents();
+ builder.addToNetwork(iC, netView, nodeView);
+ eh.flushPayloadEvents();
- for (CyNode n : nodeMap.values()) {
- final View<CyNode> nv = netView.getNodeView(n);
- nv.setVisualProperty(BasicVisualLexicon.NODE_X_LOCATION,
-
nodeView.getVisualProperty(BasicVisualLexicon.NODE_X_LOCATION));
- nv.setVisualProperty(BasicVisualLexicon.NODE_Y_LOCATION,
-
nodeView.getVisualProperty(BasicVisualLexicon.NODE_Y_LOCATION));
- nv.setVisualProperty(BasicVisualLexicon.NODE_SELECTED,
true);
-
parentNetwork.getRow(nv.getModel()).set(CyNetwork.SELECTED, true);
- }
-
// Apply visual style
- eh.flushPayloadEvents();
- VisualStyle vs = vmm.getVisualStyle(netView);
+ final VisualStyle vs = vmm.getVisualStyle(netView);
vs.apply(netView);
netView.updateView();
}
--
You received this message because you are subscribed to the Google Groups
"cytoscape-cvs" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/cytoscape-cvs?hl=en.