Author: pwang
Date: 2011-10-28 18:04:54 -0700 (Fri, 28 Oct 2011)
New Revision: 27336

Modified:
   
csplugins/trunk/ucsd/ruschein/PanGIA-impl/src/main/java/org/idekerlab/PanGIAPlugin/DetailedNetworkCreator.java
   
csplugins/trunk/ucsd/ruschein/PanGIA-impl/src/main/java/org/idekerlab/PanGIAPlugin/NestedNetworkCreator.java
   
csplugins/trunk/ucsd/ruschein/PanGIA-impl/src/main/java/org/idekerlab/PanGIAPlugin/PanGIAEdgeContextMenuListener.java
   
csplugins/trunk/ucsd/ruschein/PanGIA-impl/src/main/java/org/idekerlab/PanGIAPlugin/PanGIANodeContextMenuListener.java
Log:
work in progress

Modified: 
csplugins/trunk/ucsd/ruschein/PanGIA-impl/src/main/java/org/idekerlab/PanGIAPlugin/DetailedNetworkCreator.java
===================================================================
--- 
csplugins/trunk/ucsd/ruschein/PanGIA-impl/src/main/java/org/idekerlab/PanGIAPlugin/DetailedNetworkCreator.java
      2011-10-29 01:04:05 UTC (rev 27335)
+++ 
csplugins/trunk/ucsd/ruschein/PanGIA-impl/src/main/java/org/idekerlab/PanGIAPlugin/DetailedNetworkCreator.java
      2011-10-29 01:04:54 UTC (rev 27336)
@@ -5,31 +5,39 @@
 
 import org.idekerlab.PanGIAPlugin.networks.SFNetwork;
 
-import giny.model.GraphPerspective;
-import giny.model.Node;
-import cytoscape.data.CyAttributes;
-import cytoscape.layout.CyLayoutAlgorithm;
-import cytoscape.view.*;
-import cytoscape.visual.VisualStyle;
-import cytoscape.*;
+import org.cytoscape.model.CyNetwork;
+import org.cytoscape.model.CyNode;
+import org.cytoscape.model.CyEdge;
+import org.cytoscape.model.CyTable;
+import org.cytoscape.model.CyTableUtil;
+import org.cytoscape.view.model.CyNetworkView;
 
+import org.cytoscape.view.vizmap.VisualStyle;
+import java.util.Set;
+import org.cytoscape.view.layout.CyLayoutAlgorithm;
+
+
 public class DetailedNetworkCreator
 {
        @SuppressWarnings("unchecked")
        public static void createDetailedView(CyNetworkView view)
     {
-               if (view.getSelectedNodeIndices().length==0) return;
+    
+               List<CyNode> nodes_selected = 
CyTableUtil.getNodesInState(view.getModel(), CyNetwork.SELECTED, true);
                
-               if (view.getSelectedNodeIndices().length==1)
+               if (nodes_selected.size()==0) return;
+               
+               if (nodes_selected.size()==1)
                {
-                       
goToNestedNetwork(Cytoscape.getRootGraph().getNode(view.getSelectedNodeIndices()[0]));
+                       
//goToNestedNetwork(Cytoscape.getRootGraph().getNode(view.getSelectedNodeIndices()[0]));
+                       goToNestedNetwork(nodes_selected.get(0));
                        System.out.println("Going to nested network.");
                        return;
                }
                
                VisualStyleObserver.setOverviewView(view);
                
-               String netID = view.getNetwork().getIdentifier();
+               String netID = view.getModel().getCyRow().get("name", 
String.class);
                
                PanGIAOutput output = PanGIAPlugin.output.get(netID);
                
@@ -42,51 +50,65 @@
                
                String title = "Detailed View";
                
-               int[] selected = view.getSelectedNodeIndices();
+               //int[] selected = view.getSelectedNodeIndices();
+               List<CyNode> nodes_selected2 = 
CyTableUtil.getNodesInState(view.getModel(), CyNetwork.SELECTED, true);
                
-               if (selected.length<=3)
+               if (nodes_selected2.size()<=3)
                {
                        
-                       title = 
Cytoscape.getRootGraph().getNode(selected[0]).getIdentifier();
+                       title = nodes_selected2.get(0).getCyRow().get("name", 
String.class); //Cytoscape.getRootGraph().getNode(selected[0]).getIdentifier();
                        
-                       for (int ni=1;ni<selected.length;ni++)
-                               title+=" | 
"+Cytoscape.getRootGraph().getNode(selected[ni]).getIdentifier();
+                       for (int ni=1;ni<nodes_selected2.size();ni++)
+                               title+=" | 
"+nodes_selected2.get(ni).getCyRow().get("name",String.class); 
//getIdentifier();
                }
                
                String name = findNextAvailableNetworkName(title);
                
-               CyNetwork detailedNetwork = Cytoscape.createNetwork(name,       
/* create_view = */false);
-               CyAttributes networkAttr = Cytoscape.getNetworkAttributes();
-               networkAttr.setAttribute(detailedNetwork.getIdentifier(), 
VisualStyleObserver.NETWORK_TYPE_ATTRIBUTE_NAME, NetworkType.DETAILED.name());
-               
networkAttr.setUserVisible(VisualStyleObserver.NETWORK_TYPE_ATTRIBUTE_NAME, 
false);
-               
networkAttr.setUserEditable(VisualStyleObserver.NETWORK_TYPE_ATTRIBUTE_NAME, 
false);
+               //CyNetwork detailedNetwork = Cytoscape.createNetwork(name,     
/* create_view = */false);
+               CyNetwork detailedNetwork = 
ServicesUtil.cyNetworkFactoryServiceRef.getInstance();
+               
+               CyTable networkAttr = detailedNetwork.getDefaultNetworkTable(); 
//Cytoscape.getNetworkAttributes();
+               //networkAttr.setAttribute(detailedNetwork.getIdentifier(), 
VisualStyleObserver.NETWORK_TYPE_ATTRIBUTE_NAME, NetworkType.DETAILED.name());
+               
detailedNetwork.getCyRow().set(VisualStyleObserver.NETWORK_TYPE_ATTRIBUTE_NAME, 
NetworkType.DETAILED.name());
+               
//networkAttr.createColumn(VisualStyleObserver.NETWORK_TYPE_ATTRIBUTE_NAME, 
String.class, false);
                
+               
//networkAttr.setUserVisible(VisualStyleObserver.NETWORK_TYPE_ATTRIBUTE_NAME, 
false);
+               
//networkAttr.setUserEditable(VisualStyleObserver.NETWORK_TYPE_ATTRIBUTE_NAME, 
false);
+               
                //Populate network
                //Nodes
-               for (int ni : selected)
+               //for (int ni : selected)
+               for (CyNode ni: nodes_selected2)
                {       
-                       GraphPerspective nn = 
Cytoscape.getRootGraph().getNode(ni).getNestedNetwork();
+                       CyNetwork nn = ni.getNetwork();
                        if (nn!=null)
                        {
                                for (int ni2 : nn.getNodeIndicesArray())
                                        detailedNetwork.addNode(ni2);
+                               
+//                             List<CyNode> nn_nodelist = nn.getNodeList();
+//                             for (CyNode nn_node: nn_nodelist){
+//                                     
detailedNetwork.addNode(nn_node.getSUID());
+//                             }
                        }
                }
                
                //Edges
-               final CyAttributes edgeAttributes = 
Cytoscape.getEdgeAttributes();
+               final CyTable edgeAttributes = Cytoscape.getEdgeAttributes();
                
-               List<CyNode> nodes = detailedNetwork.nodesList();
+               List<CyNode> nodes = detailedNetwork.getNodeList();
                
                // Add the edges induced by "origPhysNetwork" to our new nested 
network.
                List<CyEdge> edges = (List<CyEdge>) 
origPhysNetwork.getConnectingEdges(getIntersectingNodes(origPhysNetwork, 
nodes));
                for (final CyEdge edge : edges)
                {
-                       final Double attrValue = 
edgeAttributes.getDoubleAttribute(edge.getIdentifier(), physEdgeAttrName);
+                       //final Double attrValue = 
edgeAttributes.getDoubleAttribute(edge.getCyRow().get("name", String.class), 
physEdgeAttrName);
+                       final Double attrValue 
=edge.getCyRow().get(physEdgeAttrName, Double.class);
                        if (attrValue != null)
                        {
                                detailedNetwork.addEdge(edge);
-                               
edgeAttributes.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type", 
"Physical");
+                               
//edgeAttributes.setAttribute(edge.getCyRow().get("name", String.class), 
"PanGIA.Interaction Type", "Physical");
+                               edge.getCyRow().set("PanGIA.Interaction Type", 
"Physical");
                        }
                }
 
@@ -94,60 +116,91 @@
                edges = (List<CyEdge>) 
origGenNetwork.getConnectingEdges(getIntersectingNodes(origGenNetwork, nodes));
                for (final CyEdge edge : edges)
                {
-                       final Double attrValue = 
edgeAttributes.getDoubleAttribute(edge.getIdentifier(), genEdgeAttrName);
+                       //final Double attrValue = 
edgeAttributes.getDoubleAttribute(edge.getCyRow().get("name", String.class), 
genEdgeAttrName);
+                       final Double attrValue 
=edge.getCyRow().get(genEdgeAttrName, Double.class);
                        if (attrValue != null)
                        {
                                detailedNetwork.addEdge(edge);
-                               Object existingAttribute = 
edgeAttributes.getAttribute(edge.getIdentifier(), "PanGIA.Interaction Type");
-                               
+                               //Object existingAttribute = 
edgeAttributes.getAttribute(edge.getCyRow().get("name", String.class), 
"PanGIA.Interaction Type");
+                               Object existingAttribute = 
edge.getCyRow().get("PanGIA.Interaction Type", String.class);
                                if (existingAttribute==null || 
!existingAttribute.equals("Physical"))  
                                {
                                        if (output.isSigned())
                                        {
-                                               if (attrValue<0) 
edgeAttributes.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type", 
"Genetic(negative)");
-                                               else 
edgeAttributes.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type", 
"Genetic(positive)");
-                                       }else 
edgeAttributes.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type", 
"Genetic");
+                                               if (attrValue<0) { 
+                                                       
//edgeAttributes.setAttribute(edge.getCyRow().get("name",String.class), 
"PanGIA.Interaction Type", "Genetic(negative)");
+                                                       
edge.getCyRow().set("PanGIA.Interaction Type", "Genetic(negative)");
+                                               }
+                                               else { 
+                                                       
//edgeAttributes.setAttribute(edge.getCyRow().get("name", String.class), 
"PanGIA.Interaction Type", "Genetic(positive)");
+                                                       
edge.getCyRow().set("PanGIA.Interaction Type", "Genetic(positive)");
+                                               }
+                                       }else {
+                                               
//edgeAttributes.setAttribute(edge.getCyRow().get("name", String.class), 
"PanGIA.Interaction Type", "Genetic");
+                                               
edge.getCyRow().set("PanGIA.Interaction Type", "Genetic");
+                                       }
                                }
                                else 
                                        if (output.isSigned())
                                        {
-                                               if (attrValue<0) 
edgeAttributes.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type", 
"Physical&Genetic(negative)");
-                                               else 
edgeAttributes.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type", 
"Physical&Genetic(positive)");
-                                       }else 
edgeAttributes.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type", 
"Physical&Genetic");
+                                               if (attrValue<0) 
+                                                       {
+                                                       
//edgeAttributes.setAttribute(edge.getCyRow().get("name", String.class), 
"PanGIA.Interaction Type", "Physical&Genetic(negative)");
+                                                       
edge.getCyRow().set("PanGIA.Interaction Type", "Physical&Genetic(negative)");
+                                                       }
+                                               else 
+                                                       {
+                                                       
//edgeAttributes.setAttribute(edge.getCyRow().get("name", String.class), 
"PanGIA.Interaction Type", "Physical&Genetic(positive)");
+                                                       
edge.getCyRow().set("PanGIA.Interaction Type", "Physical&Genetic(positive)");
+                                                       }
+                                       }else
+                                       {
+                                               
//edgeAttributes.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type", 
"Physical&Genetic");
+                                               
edge.getCyRow().set("PanGIA.Interaction Type", "Physical&Genetic");
+                                       }
                                
-                               
                                //if (existingAttribute==null || 
!existingAttribute.equals("Physical"))  
edgeAttributes.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type", 
"Genetic");
                                //else 
edgeAttributes.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type", 
"Physical&Genetic");
                        }
                }
                
 
-               CyNetworkView theView = 
Cytoscape.createNetworkView(detailedNetwork);
                
+               CyNetworkView theView = 
ServicesUtil.cyNetworkViewFactoryServiceRef.getNetworkView(detailedNetwork, 
false);
+               
+               
                DetailedViewLayout.layout(theView, view);
                
-               theView.setVisualStyle(VisualStyleObserver.VS_MODULE_NAME);
-               
Cytoscape.getVisualMappingManager().setVisualStyle(Cytoscape.getVisualMappingManager().getCalculatorCatalog().getVisualStyle(VisualStyleObserver.VS_MODULE_NAME));
-               theView.redrawGraph(false, true);       
+               //theView.setVisualStyle(VisualStyleObserver.VS_MODULE_NAME);
+
+//             VisualStyle vs = 
Cytoscape.getVisualMappingManager().getCalculatorCatalog().getVisualStyle(VisualStyleObserver.VS_MODULE_NAME);
+//             ServicesUtil.visualMappingManagerRef.setVisualStyle(vs, 
theView);
+               //Cytoscape.getVisualMappingManager().setVisualStyle();
+               
+               theView.updateView(); //.redrawGraph(false, true);      
        }
        
-       public static void goToNestedNetwork(Node n)
+       public static void goToNestedNetwork(CyNode n)
        {
-               if (n.getNestedNetwork() == null)
+               if (n.getNetwork() == null)
             return;
 
-           CyNetwork nestedNetwork = (CyNetwork)n.getNestedNetwork();
+           CyNetwork nestedNetwork = (CyNetwork)n.getNetwork();
        
-           CyNetworkView theView = 
Cytoscape.getNetworkView(nestedNetwork.getIdentifier());
-           if (theView == null || theView.getIdentifier() == null)
+           CyNetworkView theView = 
ServicesUtil.cyNetworkViewManagerServiceRef.getNetworkView(nestedNetwork.getSUID());
+           //if (theView == null || theView.getIdentifier() == null)
+           if (theView == null)
            {
-               theView = Cytoscape.createNetworkView(nestedNetwork);
-               CyLayoutAlgorithm alg = 
cytoscape.layout.CyLayouts.getLayout("force-directed");
-               theView.applyLayout(alg);
-               theView.redrawGraph(false, false);
+               theView = 
ServicesUtil.cyNetworkViewFactoryServiceRef.getNetworkView(nestedNetwork);
+
+               CyLayoutAlgorithm alg = 
ServicesUtil.cyLayoutsServiceRef.getLayout("force-directed");
+               alg.setNetworkView(theView);
+               ServicesUtil.taskManagerServiceRef.execute(alg);
+               theView.updateView();
            }
 
-           Cytoscape.getDesktop().setFocus(nestedNetwork.getIdentifier());
+           //ServicesUtil.cySwingApplicationServiceRef.getJFrame().setf
+           //Cytoscape.getDesktop().setFocus(nestedNetwork.getIdentifier());
        }
        
        private static String findNextAvailableNetworkName(final String 
initialPreference) {
@@ -169,8 +222,10 @@
         * no network w/ this title.
         */
        private static CyNetwork getNetworkByTitle(final String networkTitle) {
-               for (final CyNetwork network : Cytoscape.getNetworkSet()) {
-                       if (network.getTitle().equals(networkTitle))
+               Set<CyNetwork> networks = 
ServicesUtil.cyNetworkManagerServiceRef.getNetworkSet();
+               for (final CyNetwork network : networks) {
+                       String title = network.getCyRow().get("name", 
String.class);
+                       if (title.equals(networkTitle))
                                return network;
                }
 

Modified: 
csplugins/trunk/ucsd/ruschein/PanGIA-impl/src/main/java/org/idekerlab/PanGIAPlugin/NestedNetworkCreator.java
===================================================================
--- 
csplugins/trunk/ucsd/ruschein/PanGIA-impl/src/main/java/org/idekerlab/PanGIAPlugin/NestedNetworkCreator.java
        2011-10-29 01:04:05 UTC (rev 27335)
+++ 
csplugins/trunk/ucsd/ruschein/PanGIA-impl/src/main/java/org/idekerlab/PanGIAPlugin/NestedNetworkCreator.java
        2011-10-29 01:04:54 UTC (rev 27336)
@@ -7,19 +7,16 @@
 import org.idekerlab.PanGIAPlugin.networks.linkedNetworks.TypedLinkEdge;
 import org.idekerlab.PanGIAPlugin.networks.linkedNetworks.TypedLinkNetwork;
 import org.idekerlab.PanGIAPlugin.networks.linkedNetworks.TypedLinkNodeModule;
-import cytoscape.CyEdge;
-import cytoscape.CyNetwork;
-import cytoscape.CyNode;
-import cytoscape.Cytoscape;
-import cytoscape.CytoscapeInit;
-import cytoscape.data.CyAttributes;
-import cytoscape.data.Semantics;
-import cytoscape.layout.CyLayoutAlgorithm;
-import cytoscape.layout.CyLayouts;
-import cytoscape.task.TaskMonitor;
-import cytoscape.util.PropUtil;
-import cytoscape.view.CyNetworkView;
-import cytoscape.visual.VisualStyle;
+import org.cytoscape.model.CyEdge;
+import org.cytoscape.model.CyNetwork;
+import org.cytoscape.model.CyNode;
+import org.cytoscape.model.CyTable;
+//import cytoscape.data.Semantics;
+//import cytoscape.util.PropUtil;
+import org.cytoscape.view.model.CyNetworkView;
+import org.cytoscape.view.vizmap.VisualStyle;
+import org.cytoscape.work.TaskMonitor;
+import org.cytoscape.view.layout.CyLayoutAlgorithm;
 
 
 /**
@@ -126,11 +123,11 @@
        private final PriorityQueue<NetworkAndScore> networksOrderedByScores = 
new PriorityQueue(
                        100);
 
-       VisualStyle moduleVS = 
Cytoscape.getVisualMappingManager().getCalculatorCatalog().
-                                                               
getVisualStyle(VisualStyleObserver.VS_MODULE_NAME);
+//     VisualStyle moduleVS = 
Cytoscape.getVisualMappingManager().getCalculatorCatalog().
+//                                                             
getVisualStyle(VisualStyleObserver.VS_MODULE_NAME);
 
-       private final CyAttributes nodeAttribs = Cytoscape.getNodeAttributes();
-       private final CyAttributes edgeAttribs = Cytoscape.getEdgeAttributes();
+       private final CyTable nodeAttribs = Cytoscape.getNodeAttributes();
+       private final CyTable edgeAttribs = Cytoscape.getEdgeAttributes();
        
        public static List<String> getEdgeAttributeNames()
        {
@@ -175,16 +172,20 @@
                        )
        {
                // Network attributes created here is required for managing 
Visual Styles.
-               final CyAttributes networkAttr = 
Cytoscape.getNetworkAttributes();
+               final CyTable networkAttr = Cytoscape.getNetworkAttributes();
                
                moduleToCyNodeMap = new HashMap<TypedLinkNodeModule<String, 
BFEdge>, CyNode>();
 
-               overviewNetwork = Cytoscape.createNetwork( 
findNextAvailableNetworkName(networkName),   /* create_view = */false);
-               networkAttr.setAttribute(overviewNetwork.getIdentifier(), 
VisualStyleObserver.NETWORK_TYPE_ATTRIBUTE_NAME, NetworkType.OVERVIEW.name());
-               
networkAttr.setUserVisible(VisualStyleObserver.NETWORK_TYPE_ATTRIBUTE_NAME, 
false);
-               
networkAttr.setUserEditable(VisualStyleObserver.NETWORK_TYPE_ATTRIBUTE_NAME, 
false);
+               //overviewNetwork = Cytoscape.createNetwork( 
findNextAvailableNetworkName(networkName), /* create_view = */false);
+               overviewNetwork = 
ServicesUtil.cyNetworkFactoryServiceRef.getInstance();
+               overviewNetwork.getCyRow().set("name",  
findNextAvailableNetworkName(networkName));
                
-               taskMonitor.setStatus("5. Generating Cytoscape networks");
+               //networkAttr.setAttribute(overviewNetwork.getIdentifier(), 
VisualStyleObserver.NETWORK_TYPE_ATTRIBUTE_NAME, NetworkType.OVERVIEW.name());
+               
overviewNetwork.getCyRow().set(VisualStyleObserver.NETWORK_TYPE_ATTRIBUTE_NAME, 
NetworkType.OVERVIEW.name());
+               
//networkAttr.setUserVisible(VisualStyleObserver.NETWORK_TYPE_ATTRIBUTE_NAME, 
false);
+               
//networkAttr.setUserEditable(VisualStyleObserver.NETWORK_TYPE_ATTRIBUTE_NAME, 
false);
+               
+               taskMonitor.setStatusMessage("5. Generating Cytoscape 
networks");
                int nodeIndex = 1;
                double maxScore = Double.NEGATIVE_INFINITY;
 
@@ -210,37 +211,48 @@
                        }
                        
                        
-                       final CyEdge newEdge = Cytoscape.getCyEdge(sourceNode, 
targetNode, Semantics.INTERACTION, COMPLEX_INTERACTION_TYPE, /* create = 
*/true);
-                       edgeAttribs.setAttribute(newEdge.getIdentifier(), 
REFERENCE_NETWORK_NAME_ATTRIB, origPhysNetwork.getTitle()     + "/" + 
origGenNetwork.getTitle());
-                       overviewNetwork.addEdge(newEdge);
+                       //final CyEdge newEdge = 
Cytoscape.getCyEdge(sourceNode, targetNode, Semantics.INTERACTION, 
COMPLEX_INTERACTION_TYPE, /* create = */true);
+                       CyEdge newEdge = overviewNetwork.addEdge(sourceNode, 
targetNode, false);
+                       newEdge.getCyRow().set(Semantics.INTERACTION, 
COMPLEX_INTERACTION_TYPE);
 
+                       //edgeAttribs.setAttribute(newEdge.getIdentifier(), 
REFERENCE_NETWORK_NAME_ATTRIB, origPhysNetwork.getTitle()   + "/" + 
origGenNetwork.getTitle());
+                       newEdge.getCyRow().set(REFERENCE_NETWORK_NAME_ATTRIB, 
origPhysNetwork.getCyRow().get("name", String.class) + "/" + 
origGenNetwork.getCyRow().get("name", String.class));
+                       //overviewNetwork.addEdge(newEdge);
+
+                       
                        // Add various edge attributes.
                        final double edgeScore = edge.value().link();
-                       edgeAttribs.setAttribute(newEdge.getIdentifier(), 
EDGE_SCORE,
-                                       Double.valueOf(edgeScore));
+                       //edgeAttribs.setAttribute(newEdge.getIdentifier(), 
EDGE_SCORE,Double.valueOf(edgeScore));
+                       newEdge.getCyRow().set(EDGE_SCORE, 
Double.valueOf(edgeScore));
                        if (edgeScore > maxScore)
                                maxScore = edgeScore;
 
                        final double pValue = edge.value().linkMerge();
-                       edgeAttribs.setAttribute(newEdge.getIdentifier(), 
EDGE_PVALUE, Double
-                                       .valueOf(pValue));
+                       //edgeAttribs.setAttribute(newEdge.getIdentifier(), 
EDGE_PVALUE, Double.valueOf(pValue));
+                       newEdge.getCyRow().set(EDGE_PVALUE, 
Double.valueOf(pValue));
                        
                        final int gConnectedness = 
geneticNetwork.getConnectedness(sourceModule.asStringSet(), 
targetModule.asStringSet());
-                       
edgeAttribs.setAttribute(newEdge.getIdentifier(),EDGE_GEN_EDGE_COUNT, 
Integer.valueOf(gConnectedness));
+                       
//edgeAttribs.setAttribute(newEdge.getIdentifier(),EDGE_GEN_EDGE_COUNT, 
Integer.valueOf(gConnectedness));
+                       newEdge.getCyRow().set(EDGE_GEN_EDGE_COUNT, 
Integer.valueOf(gConnectedness));
                        
                        final int pConnectedness = 
physicalNetwork.getConnectedness(sourceModule.asStringSet(), 
targetModule.asStringSet());
-                       
edgeAttribs.setAttribute(newEdge.getIdentifier(),EDGE_PHYS_EDGE_COUNT, 
Integer.valueOf(pConnectedness));
+                       
//edgeAttribs.setAttribute(newEdge.getIdentifier(),EDGE_PHYS_EDGE_COUNT, 
Integer.valueOf(pConnectedness));
+                       newEdge.getCyRow().set(EDGE_PHYS_EDGE_COUNT,  
Integer.valueOf(pConnectedness));
                        
-                       edgeAttribs.setAttribute(newEdge.getIdentifier(), 
EDGE_SOURCE_SIZE,     Integer.valueOf(sourceModule.size()));
-                       edgeAttribs.setAttribute(newEdge.getIdentifier(), 
EDGE_TARGET_SIZE,     Integer.valueOf(targetModule.size()));
+                       //edgeAttribs.setAttribute(newEdge.getIdentifier(), 
EDGE_SOURCE_SIZE,   Integer.valueOf(sourceModule.size()));
+                       newEdge.getCyRow().set(EDGE_SOURCE_SIZE, 
Integer.valueOf(sourceModule.size()));
                        
+                       //edgeAttribs.setAttribute(newEdge.getIdentifier(), 
EDGE_TARGET_SIZE,   Integer.valueOf(targetModule.size()));
+                       newEdge.getCyRow().set(EDGE_TARGET_SIZE, 
Integer.valueOf(targetModule.size()));
+                       
                        final double density = edgeScore / (sourceModule.size() 
* targetModule.size());
-                       edgeAttribs.setAttribute(newEdge.getIdentifier(), 
EDGE_GEN_DENSITY, Double.valueOf(density));
+                       //edgeAttribs.setAttribute(newEdge.getIdentifier(), 
EDGE_GEN_DENSITY, Double.valueOf(density));
+                       newEdge.getCyRow().set(EDGE_GEN_DENSITY, 
Double.valueOf(density));
                }
 
-               edgeAttribs.setUserVisible(REFERENCE_NETWORK_NAME_ATTRIB, 
false);
+               //edgeAttribs.setUserVisible(REFERENCE_NETWORK_NAME_ATTRIB, 
false);
 
-               taskMonitor.setStatus("5. Generating network views");
+               taskMonitor.setStatusMessage("5. Generating network views");
                int networkViewCount = 0;
                NetworkAndScore network;
                final float percentIncrement = remainingPercentage / 
networksOrderedByScores.size();
@@ -249,13 +261,14 @@
                        final boolean createView = networkViewCount++ < 
MAX_NETWORK_VIEWS;
                        final CyNetwork nestedNetwork = 
generateNestedNetwork(network.getNodeName(), network.getGenes(), 
origPhysNetwork, origGenNetwork, physicalNetwork,geneticNetwork, createView, 
networkAttr, isGNetSigned, geneticEdgeAttrName);
                        final CyNode node = 
Cytoscape.getCyNode(network.getNodeName(), false);
-                       node.setNestedNetwork(nestedNetwork);
+                       node.setNetwork(nestedNetwork);
 
                        percentCompleted += percentIncrement;
-                       
taskMonitor.setPercentCompleted(Math.round(percentCompleted));
+                       
taskMonitor.setProgress(Math.round(percentCompleted)/100.0);
                }
                
-               Cytoscape.createNetworkView(overviewNetwork);
+               //Cytoscape.createNetworkView(overviewNetwork);
+               
ServicesUtil.cyNetworkViewFactoryServiceRef.getNetworkView(overviewNetwork);
                applyNetworkLayout(overviewNetwork, cutoff, maxScore);
                
                
@@ -293,7 +306,7 @@
         */
        private CyNode makeOverviewNode(final String nodeName,
                        final TypedLinkNodeModule<String, BFEdge> module,
-                       final CyAttributes nodeAttribs, 
TypedLinkNetwork<String, Float> physicalNetwork, TypedLinkNetwork<String, 
Float> geneticNetwork) {
+                       final CyTable nodeAttribs, TypedLinkNetwork<String, 
Float> physicalNetwork, TypedLinkNetwork<String, Float> geneticNetwork) {
                
                
                final CyNode newNode = Cytoscape.getCyNode(nodeName, true); // 
create=true
@@ -305,13 +318,16 @@
                //Add attributes
                final Set<String> genes = module.getMemberValues();
                final Integer geneCount = Integer.valueOf(genes.size());
-               nodeAttribs.setAttribute(newNode.getIdentifier(), GENE_COUNT, 
geneCount);
-               nodeAttribs.setAttribute(newNode.getIdentifier(), 
GENE_COUNT_SQRT, Math.sqrt(geneCount));
+               //nodeAttribs.setAttribute(newNode.getIdentifier(), GENE_COUNT, 
geneCount);
+               newNode.getCyRow().set(GENE_COUNT, geneCount);
+               //nodeAttribs.setAttribute(newNode.getIdentifier(), 
GENE_COUNT_SQRT, Math.sqrt(geneCount));
+               newNode.getCyRow().set(GENE_COUNT_SQRT, Math.sqrt(geneCount));
                if (genes.size() > maxSize)
                        maxSize = genes.size();
 
                final double score = Double.valueOf(module.score());
-               nodeAttribs.setAttribute(newNode.getIdentifier(), SCORE, score);
+               //nodeAttribs.setAttribute(newNode.getIdentifier(), SCORE, 
score);
+               newNode.getCyRow().set( SCORE, score);
 
                StringBuilder members = new StringBuilder();
                for (String gene : genes)
@@ -319,11 +335,13 @@
                        if (members.length()!=0) members.append("|");
                        members.append(gene);
                }
-               nodeAttribs.setAttribute(newNode.getIdentifier(), MEMBERS, 
members.toString());
-
+               //nodeAttribs.setAttribute(newNode.getIdentifier(), MEMBERS, 
members.toString());
+               newNode.getCyRow().set(MEMBERS,  members.toString());
                
-               nodeAttribs.setAttribute(newNode.getIdentifier(), 
PHYS_EDGE_COUNT, physicalNetwork.subNetwork(module.asStringSet()).numEdges());
-               nodeAttribs.setAttribute(newNode.getIdentifier(), 
GEN_EDGE_COUNT, geneticNetwork.subNetwork(module.asStringSet()).numEdges());
+               //nodeAttribs.setAttribute(newNode.getIdentifier(), 
PHYS_EDGE_COUNT, physicalNetwork.subNetwork(module.asStringSet()).numEdges());
+               newNode.getCyRow().set(PHYS_EDGE_COUNT, 
physicalNetwork.subNetwork(module.asStringSet()).numEdges());
+               //nodeAttribs.setAttribute(newNode.getIdentifier(), 
GEN_EDGE_COUNT, geneticNetwork.subNetwork(module.asStringSet()).numEdges());
+               newNode.getCyRow().set(GEN_EDGE_COUNT,  
geneticNetwork.subNetwork(module.asStringSet()).numEdges());
                
                //Add to network
                networksOrderedByScores.add(new NetworkAndScore(nodeName, 
genes, score));
@@ -334,7 +352,7 @@
        private CyNetwork generateNestedNetwork(final String networkName,
                        final Set<String> nodeNames, final CyNetwork 
origPhysNetwork,
                        final CyNetwork origGenNetwork, 
TypedLinkNetwork<String, Float> physicalNetwork, TypedLinkNetwork<String, 
Float> geneticNetwork, final boolean createNetworkView,
-                       final CyAttributes networkAttr, boolean isGNetSigned, 
String geneticEdgeAttrName)
+                       final CyTable networkAttr, boolean isGNetSigned, String 
geneticEdgeAttrName)
        {
                if (nodeNames.isEmpty())
                        return null;
@@ -342,9 +360,10 @@
                // First, create network without view.
                final CyNetwork nestedNetwork = 
Cytoscape.createNetwork(networkName, overviewNetwork, false);
                
-               networkAttr.setAttribute(nestedNetwork.getIdentifier(), 
VisualStyleObserver.NETWORK_TYPE_ATTRIBUTE_NAME, NetworkType.MODULE.name());
+               //networkAttr.setAttribute(nestedNetwork.getIdentifier(),       
VisualStyleObserver.NETWORK_TYPE_ATTRIBUTE_NAME, NetworkType.MODULE.name());
+               nestedNetwork.getCyRow().set(   
VisualStyleObserver.NETWORK_TYPE_ATTRIBUTE_NAME, NetworkType.MODULE.name());
                
-               CyAttributes nodeAttributes = Cytoscape.getNodeAttributes();
+               CyTable nodeAttributes = Cytoscape.getNodeAttributes();
                
                // Add the nodes to our new nested network.
                final List<CyNode> nodes = new ArrayList<CyNode>();
@@ -356,20 +375,22 @@
                        }
                        nestedNetwork.addNode(node);
                        nodes.add(node);
-                       nodeAttributes.setAttribute(node.getIdentifier(), 
VisualStyleObserver.PARENT_MODULE_ATTRIBUTE_NAME, networkName);
+                       //nodeAttributes.setAttribute(node.getIdentifier(), 
VisualStyleObserver.PARENT_MODULE_ATTRIBUTE_NAME, networkName);
+                       
node.getCyRow().set(VisualStyleObserver.PARENT_MODULE_ATTRIBUTE_NAME, 
networkName);
                }
 
                
-               CyAttributes cyEdgeAttrs = Cytoscape.getEdgeAttributes();
+               CyTable cyEdgeAttrs = Cytoscape.getEdgeAttributes();
                                
                // Add the edges induced by "origPhysNetwork" to our new nested 
network.
-               List<CyEdge> edges = (List<CyEdge>) 
origPhysNetwork.getConnectingEdges(getIntersectingNodes(origPhysNetwork, 
nodes));
+               List<CyEdge> edges = (List<CyEdge>) 
origPhysNetwork.getConnectingEdgeList(getIntersectingNodes(origPhysNetwork, 
nodes));
                for (final CyEdge edge : edges)
                {
-                       if 
(physicalNetwork.containsEdge(edge.getSource().getIdentifier(),edge.getTarget().getIdentifier()))
+                       if 
(physicalNetwork.containsEdge(edge.getSource().getCyRow().get("name", 
String.class),edge.getTarget().getCyRow().get("name", String.class)))
                        {
                                nestedNetwork.addEdge(edge);
-                               cyEdgeAttrs.setAttribute(edge.getIdentifier(), 
"PanGIA.Interaction Type", "Physical");
+                               
//cyEdgeAttrs.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type", 
"Physical");
+                               edge.getCyRow().set("PanGIA.Interaction Type", 
"Physical");
                        }
                }
 
@@ -377,38 +398,60 @@
                edges = (List<CyEdge>) 
origGenNetwork.getConnectingEdges(getIntersectingNodes(origGenNetwork, nodes));
                for (final CyEdge edge : edges)
                {
-                       if 
(geneticNetwork.containsEdge(edge.getSource().getIdentifier(),edge.getTarget().getIdentifier()))
+                       if 
(geneticNetwork.containsEdge(edge.getSource().getCyRow().get("name", 
String.class),edge.getTarget().getCyRow().get("name", String.class)))
                        {
                                nestedNetwork.addEdge(edge);
-                               Object existingAttribute = 
cyEdgeAttrs.getAttribute(edge.getIdentifier(), "PanGIA.Interaction Type");
+                               //Object existingAttribute = 
cyEdgeAttrs.getAttribute(edge.getIdentifier(), "PanGIA.Interaction Type");
+                               Object existingAttribute = 
edge.getCyRow().getRaw("PanGIA.Interaction Type");
                                if (existingAttribute==null || 
!existingAttribute.equals("Physical"))  
                                {
                                        if (isGNetSigned)
                                        {
-                                               double genscore = 
(Double)cyEdgeAttrs.getAttribute(edge.getIdentifier(), geneticEdgeAttrName);
-                                               if (genscore<0) 
cyEdgeAttrs.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type", 
"Genetic(negative)");
-                                               else 
cyEdgeAttrs.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type", 
"Genetic(positive)");
-                                       }else 
cyEdgeAttrs.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type", 
"Genetic");
+                                               //double genscore = 
(Double)cyEdgeAttrs.getAttribute(edge.getIdentifier(), geneticEdgeAttrName);
+                                               double genscore = 
edge.getCyRow().get(geneticEdgeAttrName, Double.class);
+                                               if (genscore<0) {
+                                                       
//cyEdgeAttrs.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type", 
"Genetic(negative)");
+                                                       
edge.getCyRow().set("PanGIA.Interaction Type", "Genetic(negative)");
+                                               }
+                                               else {
+                                                       
//cyEdgeAttrs.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type", 
"Genetic(positive)");
+                                                       
edge.getCyRow().set("PanGIA.Interaction Type", "Genetic(positive)");
+                                               }
+                                       }else {
+                                               
//cyEdgeAttrs.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type", 
"Genetic");
+                                               edge.getCyRow().set( 
"PanGIA.Interaction Type", "Genetic");
+                                       }
                                }
                                else 
                                        if (isGNetSigned)
                                        {
-                                               double genscore = 
(Double)cyEdgeAttrs.getAttribute(edge.getIdentifier(), geneticEdgeAttrName);
-                                               if (genscore<0) 
cyEdgeAttrs.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type", 
"Physical&Genetic(negative)");
-                                               else 
cyEdgeAttrs.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type", 
"Physical&Genetic(positive)");
-                                       }else 
cyEdgeAttrs.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type", 
"Physical&Genetic");
+                                               //double genscore = 
(Double)cyEdgeAttrs.getAttribute(edge.getIdentifier(), geneticEdgeAttrName);
+                                               double genscore = 
edge.getCyRow().get(geneticEdgeAttrName, Double.class);
+                                               if (genscore<0) {
+                                                       
//cyEdgeAttrs.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type", 
"Physical&Genetic(negative)");
+                                                       
edge.getCyRow().set("PanGIA.Interaction Type", "Physical&Genetic(negative)");
+                                               }
+                                               else {
+                                                       
//cyEdgeAttrs.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type", 
"Physical&Genetic(positive)");
+                                                       edge.getCyRow().set( 
"PanGIA.Interaction Type", "Physical&Genetic(positive)");
+                                               }
+                                       }else {
+                                               
//cyEdgeAttrs.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type", 
"Physical&Genetic");
+                                               
edge.getCyRow().set("PanGIA.Interaction Type", "Physical&Genetic");
+                                       }
                        }
                }
 
                if (createNetworkView) {
-                       CyNetworkView theView = 
Cytoscape.createNetworkView(nestedNetwork);
+                       CyNetworkView theView = 
ServicesUtil.cyNetworkViewFactoryServiceRef.getNetworkView(nestedNetwork);
                        
-                       
theView.setVisualStyle(VisualStyleObserver.VS_MODULE_NAME);
-                       
Cytoscape.getVisualMappingManager().setVisualStyle(moduleVS);
-                       theView.redrawGraph(false, true);
+//                     
theView.setVisualStyle(VisualStyleObserver.VS_MODULE_NAME);
+//                     
Cytoscape.getVisualMappingManager().setVisualStyle(moduleVS);
+//                     theView.redrawGraph(false, true);
                        
-                       CyLayoutAlgorithm alg = 
cytoscape.layout.CyLayouts.getLayout("force-directed");
-                       theView.applyLayout(alg);                       
+                       CyLayoutAlgorithm alg = 
ServicesUtil.cyLayoutsServiceRef.getLayout("force-directed");
+                       alg.setNetworkView(theView);
+                       ServicesUtil.taskManagerServiceRef.execute(alg);        
                
                }
 
                return nestedNetwork;
@@ -466,8 +509,8 @@
         * no network w/ this title.
         */
        private CyNetwork getNetworkByTitle(final String networkTitle) {
-               for (final CyNetwork network : Cytoscape.getNetworkSet()) {
-                       if (network.getTitle().equals(networkTitle))
+               for (final CyNetwork network : 
ServicesUtil.cyNetworkManagerServiceRef.getNetworkSet()) {
+                       if (network.getCyRow().get("name", 
String.class).equals(networkTitle))
                                return network;
                }
 
@@ -475,20 +518,28 @@
        }
 
        private void applyNetworkLayout(final CyNetwork network, Double cutoff, 
Double maxScore) {
-               final CyNetworkView targetView = 
Cytoscape.getNetworkView(network
-                               .getIdentifier());
+               //final CyNetworkView targetView = 
Cytoscape.getNetworkView(network
+               //              .getIdentifier());
+                               
+               //targetView.applyLayout(tuning());
+               //targetView.redrawGraph(false, true);
+
+               final CyNetworkView targetView = 
ServicesUtil.cyNetworkViewManagerServiceRef.getNetworkView(network.getSUID());
                
-               targetView.applyLayout(tuning());
-               //targetView.redrawGraph(false, true);
+               CyLayoutAlgorithm alg = tuning();
+               alg.setNetworkView(targetView);
+               ServicesUtil.taskManagerServiceRef.execute(alg);
+
+               targetView.updateView();
        }
        
        private CyLayoutAlgorithm tuning() {
-               final CyLayoutAlgorithm fd = 
CyLayouts.getLayout(LAYOUT_ALGORITHM);
+               final CyLayoutAlgorithm fd = 
ServicesUtil.cyLayoutsServiceRef.getLayout(LAYOUT_ALGORITHM);
        
-               fd.getSettings().get("defaultSpringLength").setValue("90");
-               fd.getSettings().get("defaultNodeMass").setValue("8");
-               fd.getSettings().updateValues();
-               fd.updateSettings();
+//             fd.getSettings().get("defaultSpringLength").setValue("90");
+//             fd.getSettings().get("defaultNodeMass").setValue("8");
+//             fd.getSettings().updateValues();
+//             fd.updateSettings();
                
                return fd;
        }

Modified: 
csplugins/trunk/ucsd/ruschein/PanGIA-impl/src/main/java/org/idekerlab/PanGIAPlugin/PanGIAEdgeContextMenuListener.java
===================================================================
--- 
csplugins/trunk/ucsd/ruschein/PanGIA-impl/src/main/java/org/idekerlab/PanGIAPlugin/PanGIAEdgeContextMenuListener.java
       2011-10-29 01:04:05 UTC (rev 27335)
+++ 
csplugins/trunk/ucsd/ruschein/PanGIA-impl/src/main/java/org/idekerlab/PanGIAPlugin/PanGIAEdgeContextMenuListener.java
       2011-10-29 01:04:54 UTC (rev 27336)
@@ -3,22 +3,22 @@
 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
 
-import giny.view.EdgeView;
+import org.cytoscape.view.model.View;
+import org.cytoscape.model.CyEdge;
 
 import javax.swing.JMenu;
 import javax.swing.JMenuItem;
 import javax.swing.JPopupMenu;
 
-import cytoscape.CyNode;
-import cytoscape.Cytoscape;
-import cytoscape.data.CyAttributes;
-import cytoscape.view.CyNetworkView;
-import ding.view.EdgeContextMenuListener;
+import org.cytoscape.model.CyNode;
+import org.cytoscape.model.CyTable;
+import org.cytoscape.view.model.CyNetworkView;
+//import ding.view.EdgeContextMenuListener;
 
-public class PanGIAEdgeContextMenuListener implements EdgeContextMenuListener
+public class PanGIAEdgeContextMenuListener implements EdgeContextMenuListener 
 {
         private final CyNetworkView view;
-        private CyAttributes edgeAttr = Cytoscape.getEdgeAttributes();
+        private CyTable edgeAttr = view.getModel().getDefaultEdgeTable();
 
 
      public PanGIAEdgeContextMenuListener(CyNetworkView view)
@@ -26,7 +26,7 @@
          this.view = view;
      }
 
-     public void addEdgeContextMenuItems(EdgeView ev, JPopupMenu menu)
+     public void addEdgeContextMenuItems(View<CyEdge> ev, JPopupMenu menu)
      {
         PanGIANodeContextMenuListener.addContextMenuItems(view, 
ev.getGraphView(), menu);
         

Modified: 
csplugins/trunk/ucsd/ruschein/PanGIA-impl/src/main/java/org/idekerlab/PanGIAPlugin/PanGIANodeContextMenuListener.java
===================================================================
--- 
csplugins/trunk/ucsd/ruschein/PanGIA-impl/src/main/java/org/idekerlab/PanGIAPlugin/PanGIANodeContextMenuListener.java
       2011-10-29 01:04:05 UTC (rev 27335)
+++ 
csplugins/trunk/ucsd/ruschein/PanGIA-impl/src/main/java/org/idekerlab/PanGIAPlugin/PanGIANodeContextMenuListener.java
       2011-10-29 01:04:54 UTC (rev 27336)
@@ -12,18 +12,17 @@
 import org.idekerlab.PanGIAPlugin.utilities.collections.HashMapUtil;
 import org.idekerlab.PanGIAPlugin.utilities.files.FileUtil;
 
-import giny.model.Edge;
-import giny.model.Node;
-import giny.view.EdgeView;
-import giny.view.GraphView;
-import giny.view.NodeView;
-import cytoscape.CyEdge;
-import cytoscape.CyNetwork;
-import cytoscape.Cytoscape;
-import cytoscape.CyNode;
-import cytoscape.data.CyAttributes;
-import cytoscape.view.CyNetworkView;
-import ding.view.NodeContextMenuListener;
+//import giny.model.Edge;
+//import giny.model.Node;
+//import giny.view.EdgeView;
+//import giny.view.GraphView;
+//import giny.view.NodeView;
+import org.cytoscape.model.CyEdge;
+import org.cytoscape.model.CyNetwork;
+import org.cytoscape.model.CyNode;
+import org.cytoscape.model.CyTable;
+import org.cytoscape.view.model.CyNetworkView;
+//import ding.view.NodeContextMenuListener;
 
 import java.util.*;
 

-- 
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.

Reply via email to