Author: paperwing
Date: 2012-01-12 14:17:29 -0800 (Thu, 12 Jan 2012)
New Revision: 28001

Modified:
   
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/DefaultValueVault.java
   
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/VisualPropertyKeeper.java
   
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/WindNetworkView.java
Log:
updated NetworkView implementation, cleaner code in some parts

Modified: 
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/DefaultValueVault.java
===================================================================
--- 
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/DefaultValueVault.java
 2012-01-12 22:05:34 UTC (rev 28000)
+++ 
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/DefaultValueVault.java
 2012-01-12 22:17:29 UTC (rev 28001)
@@ -1,28 +1,40 @@
 package org.cytoscape.paperwing.internal.cytoscape.view;
 
+import java.util.HashMap;
 import java.util.LinkedHashMap;
+import java.util.Map;
+import java.util.Map.Entry;
 
 import org.cytoscape.model.CyEdge;
 import org.cytoscape.model.CyNetwork;
 import org.cytoscape.model.CyNode;
+import org.cytoscape.model.CyTableEntry;
 import org.cytoscape.view.model.VisualLexicon;
 import org.cytoscape.view.model.VisualProperty;
 
 public class DefaultValueVault {
        
        // Assumes VisualProperty ID names are unique
-       private LinkedHashMap<String, VisualPropertyValueHolder<?>> 
nodeDefaultValues;
-       private LinkedHashMap<String, VisualPropertyValueHolder<?>> 
edgeDefaultValues;
-       private LinkedHashMap<String, VisualPropertyValueHolder<?>> 
networkDefaultValues;
+       private Map<String, VisualPropertyValueHolder<?>> nodeDefaultValues;
+       private Map<String, VisualPropertyValueHolder<?>> edgeDefaultValues;
+       private Map<String, VisualPropertyValueHolder<?>> networkDefaultValues;
        
+       private Map<Class<? extends CyTableEntry>,
+               Map<String, VisualPropertyValueHolder<?>>> defaultValueSets;
+       
        private VisualLexicon visualLexicon;
        
        public DefaultValueVault(VisualLexicon visualLexicon) {
                this.visualLexicon = visualLexicon;
                
-               nodeDefaultValues = new LinkedHashMap<String, 
VisualPropertyValueHolder<?>>();
-               edgeDefaultValues = new LinkedHashMap<String, 
VisualPropertyValueHolder<?>>();
-               networkDefaultValues = new LinkedHashMap<String, 
VisualPropertyValueHolder<?>>();
+               nodeDefaultValues = new HashMap<String, 
VisualPropertyValueHolder<?>>();
+               edgeDefaultValues = new HashMap<String, 
VisualPropertyValueHolder<?>>();
+               networkDefaultValues = new HashMap<String, 
VisualPropertyValueHolder<?>>();
+               
+               defaultValueSets = new HashMap<Class<? extends CyTableEntry>, 
Map<String, VisualPropertyValueHolder<?>>>();
+               defaultValueSets.put(CyNode.class, nodeDefaultValues);
+               defaultValueSets.put(CyEdge.class, edgeDefaultValues);
+               defaultValueSets.put(CyNetwork.class, networkDefaultValues);
        
                populateDefaultValues();
        }
@@ -33,18 +45,11 @@
                Class<?> targetDataType;
                
                for (VisualProperty<?> visualProperty : 
visualLexicon.getAllVisualProperties()) {
-                       valueHolder = new 
VisualPropertyValueHolder(visualProperty.getDefault());
+                       valueHolder = new 
VisualPropertyValueHolder<Object>(visualProperty.getDefault());
                        targetDataType = visualProperty.getTargetDataType();
                        
-                       if (targetDataType == CyNode.class) {
-                               
nodeDefaultValues.put(visualProperty.getIdString(), valueHolder);
-//                             System.out.println("Node default: " + 
visualProperty.getIdString() + " -> " + valueHolder.getValue());
-                       } else if (targetDataType == CyEdge.class) {
-                               
edgeDefaultValues.put(visualProperty.getIdString(), valueHolder);
-//                             System.out.println("Edge default: " + 
visualProperty.getIdString() + " -> " + valueHolder.getValue());
-                       } else if (targetDataType == CyNetwork.class) {
-                               
networkDefaultValues.put(visualProperty.getIdString(), valueHolder);
-//                             System.out.println("Network default: " + 
visualProperty.getIdString() + " -> " + valueHolder.getValue());
+                       if (defaultValueSets.get(targetDataType) != null) {
+                               
defaultValueSets.get(targetDataType).put(visualProperty.getIdString(), 
valueHolder);
                        }
                }
        }
@@ -60,39 +65,26 @@
                
                VisualPropertyValueHolder<V> valueHolder = new 
VisualPropertyValueHolder<V>(value);
                
-               if (targetDataType == CyNode.class) {
-                       nodeDefaultValues.put(visualProperty.getIdString(), 
valueHolder);
-               } else if (targetDataType == CyEdge.class) {
-                       edgeDefaultValues.put(visualProperty.getIdString(), 
valueHolder);
-               } else if (targetDataType == CyNetwork.class) {
-                       networkDefaultValues.put(visualProperty.getIdString(), 
valueHolder);
+               if (defaultValueSets.get(targetDataType) != null) {
+                       
defaultValueSets.get(targetDataType).put(visualProperty.getIdString(), 
valueHolder);
                }
        }
        
        public void initializeNode(VisualPropertyKeeper<CyNode> keeper) {
-               VisualPropertyValueHolder<?> valueHolder;
-               
-               for (String key : nodeDefaultValues.keySet()) {
-                       valueHolder = nodeDefaultValues.get(key);       
-                       keeper.setVisualProperty(key, valueHolder.getValue());
+               for (Entry<String, VisualPropertyValueHolder<?>> entry: 
nodeDefaultValues.entrySet()) { 
+                       keeper.setVisualProperty(entry.getKey(), 
entry.getValue().getValue());
                }
        }
        
        public void initializeEdge(VisualPropertyKeeper<CyEdge> keeper) {
-               VisualPropertyValueHolder<?> valueHolder;
-               
-               for (String key : edgeDefaultValues.keySet()) {
-                       valueHolder = edgeDefaultValues.get(key);       
-                       keeper.setVisualProperty(key, valueHolder.getValue());
+               for (Entry<String, VisualPropertyValueHolder<?>> entry: 
edgeDefaultValues.entrySet()) { 
+                       keeper.setVisualProperty(entry.getKey(), 
entry.getValue().getValue());
                }
        }
        
        public void initializeNetwork(VisualPropertyKeeper<CyNetwork> keeper) {
-               VisualPropertyValueHolder<?> valueHolder;
-               
-               for (String key : networkDefaultValues.keySet()) {
-                       valueHolder = networkDefaultValues.get(key);    
-                       keeper.setVisualProperty(key, valueHolder.getValue());
+               for (Entry<String, VisualPropertyValueHolder<?>> entry: 
networkDefaultValues.entrySet()) {      
+                       keeper.setVisualProperty(entry.getKey(), 
entry.getValue().getValue());
                }
        }
 }

Modified: 
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/VisualPropertyKeeper.java
===================================================================
--- 
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/VisualPropertyKeeper.java
      2012-01-12 22:05:34 UTC (rev 28000)
+++ 
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/VisualPropertyKeeper.java
      2012-01-12 22:17:29 UTC (rev 28001)
@@ -1,6 +1,7 @@
 package org.cytoscape.paperwing.internal.cytoscape.view;
 
 import java.util.HashMap;
+import java.util.Map;
 
 import org.cytoscape.view.model.View;
 import org.cytoscape.view.model.VisualProperty;
@@ -8,7 +9,7 @@
 // This class assumes that the VisualProperty's getIdString() method returns a 
unique
 // value amongst the VisualProperty objects
 public abstract class VisualPropertyKeeper<S> implements View<S>{
-       private HashMap<String, VisualPropertyValueHolder<?>> valueHolders;
+       private Map<String, VisualPropertyValueHolder<?>> valueHolders;
        
        public VisualPropertyKeeper() {
                valueHolders = new HashMap<String, 
VisualPropertyValueHolder<?>>();
@@ -37,7 +38,6 @@
                setVisualProperty(visualProperty, value);
                
                
valueHolders.get(visualProperty.getIdString()).setValueLocked(true);
-               
        }
 
        @Override

Modified: 
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/WindNetworkView.java
===================================================================
--- 
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/WindNetworkView.java
   2012-01-12 22:05:34 UTC (rev 28000)
+++ 
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/WindNetworkView.java
   2012-01-12 22:17:29 UTC (rev 28001)
@@ -4,6 +4,7 @@
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.LinkedHashMap;
+import java.util.Map;
 
 import org.cytoscape.model.CyEdge;
 import org.cytoscape.model.CyNetwork;
@@ -33,8 +34,8 @@
        private DefaultValueVault defaultValues;
        
        // Assumes indices of nodes are unique
-       private HashMap<Integer, View<CyNode>> nodeViews;
-       private HashMap<Integer, View<CyEdge>> edgeViews;
+       private Map<Integer, View<CyNode>> nodeViews;
+       private Map<Integer, View<CyEdge>> edgeViews;
        
        public WindNetworkView(CyNetwork network, VisualLexicon visualLexicon) {
                suid = SUIDFactory.getNextSUID();
@@ -58,7 +59,7 @@
                for (CyEdge edge : network.getEdgeList()) {
                        edgeView = new WindEdgeView(edge, 
SUIDFactory.getNextSUID());
                        defaultValues.initializeEdge(edgeView);
-               
+                       
                        edgeViews.put(edge.getIndex(), edgeView);
                }
                

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