Author: paperwing
Date: 2012-01-09 15:54:38 -0800 (Mon, 09 Jan 2012)
New Revision: 27958

Added:
   
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/
   
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/VisualPropertyValueHolder.java
   
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/WindEdgeView.java
   
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/WindNetworkViewFactory.java
   
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/WindNodeView.java
Log:
started implementation of View<CyNode>, View<CyEdge>, and CyNetworkView classes 
from Cytoscape presentation API. Class design for this part of the program 
roughly completed; the 3 classes inherit from VisualPropertyKeeper to manage 
VisualProperty functions.

Added: 
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
                              (rev 0)
+++ 
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/VisualPropertyKeeper.java
      2012-01-09 23:54:38 UTC (rev 27958)
@@ -0,0 +1,57 @@
+package org.cytoscape.paperwing.internal.cytoscape.view;
+
+import java.util.HashMap;
+
+import org.cytoscape.view.model.View;
+import org.cytoscape.view.model.VisualProperty;
+
+// 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;
+       
+       public VisualPropertyKeeper() {
+               valueHolders = new HashMap<String, 
VisualPropertyValueHolder<?>>();
+       }
+       
+       public <T> T getVisualProperty(VisualProperty<T> visualProperty) {
+
+               return (T) 
valueHolders.get(visualProperty.getIdString()).getValue();
+       }
+
+       public <T, V extends T> void setVisualProperty(VisualProperty<? extends 
T> visualProperty, V value) {
+               VisualPropertyValueHolder<V> valueHolder = new 
VisualPropertyValueHolder<V>(value);
+               
+               valueHolders.put(visualProperty.getIdString(), valueHolder);
+       }
+
+       @Override
+       public <T, V extends T> void setLockedValue(VisualProperty<? extends T> 
visualProperty,
+                       V value) {
+               setVisualProperty(visualProperty, value);
+               
+               
valueHolders.get(visualProperty.getIdString()).setValueLocked(true);
+               
+       }
+
+       @Override
+       public boolean isValueLocked(VisualProperty<?> visualProperty) {
+               if (valueHolders.get(visualProperty.getIdString()) != null
+                               && 
valueHolders.get(visualProperty.getIdString()).isValueLocked()) {
+                       
+                       return true;
+               } else {
+                       // TODO: Currently returns false even when 
visualProperty not found, check if should update
+                       return false;
+               }
+       }
+
+       @Override
+       public void clearValueLock(VisualProperty<?> visualProperty) {
+               // TODO: Doesn't throw an exception if visualProperty not found
+               if (valueHolders.get(visualProperty.getIdString()) != null) {
+                       
+                       
valueHolders.get(visualProperty.getIdString()).setValueLocked(false);
+               }
+       }
+}


Property changes on: 
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/VisualPropertyKeeper.java
___________________________________________________________________
Added: svn:mime-type
   + text/plain

Added: 
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/VisualPropertyValueHolder.java
===================================================================
--- 
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/VisualPropertyValueHolder.java
                         (rev 0)
+++ 
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/VisualPropertyValueHolder.java
 2012-01-09 23:54:38 UTC (rev 27958)
@@ -0,0 +1,23 @@
+package org.cytoscape.paperwing.internal.cytoscape.view;
+
+public class VisualPropertyValueHolder<V> {
+       private V value;
+       
+       private boolean isValueLocked;
+       
+       public VisualPropertyValueHolder(V value) {
+               this.value = value;
+       }
+       
+       public V getValue() {
+               return value;
+       }
+
+       public void setValueLocked(boolean isValueLocked) {
+               this.isValueLocked = isValueLocked;
+       }
+
+       public boolean isValueLocked() {
+               return isValueLocked;
+       }
+}


Property changes on: 
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/VisualPropertyValueHolder.java
___________________________________________________________________
Added: svn:mime-type
   + text/plain

Added: 
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/WindEdgeView.java
===================================================================
--- 
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/WindEdgeView.java
                              (rev 0)
+++ 
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/WindEdgeView.java
      2012-01-09 23:54:38 UTC (rev 27958)
@@ -0,0 +1,28 @@
+package org.cytoscape.paperwing.internal.cytoscape.view;
+
+import org.cytoscape.model.CyEdge;
+import org.cytoscape.model.CyNetwork;
+import org.cytoscape.model.CyNode;
+import org.cytoscape.view.model.View;
+import org.cytoscape.view.model.VisualProperty;
+
+public class WindEdgeView extends VisualPropertyKeeper<CyEdge> {
+
+       private CyEdge edge;
+       private Long SUID;
+       
+       public WindEdgeView(CyEdge edge, Long SUID) {
+               this.edge = edge;
+               this.SUID = SUID;               
+       }
+       
+       @Override
+       public long getSUID() {
+               return SUID;
+       }
+
+       @Override
+       public CyEdge getModel() {
+               return edge;
+       }
+}


Property changes on: 
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/WindEdgeView.java
___________________________________________________________________
Added: svn:mime-type
   + text/plain

Added: 
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
                           (rev 0)
+++ 
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/WindNetworkView.java
   2012-01-09 23:54:38 UTC (rev 27958)
@@ -0,0 +1,83 @@
+package org.cytoscape.paperwing.internal.cytoscape.view;
+
+import java.util.Collection;
+
+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.CyNetworkView;
+import org.cytoscape.view.model.View;
+import org.cytoscape.view.model.VisualProperty;
+
+public class WindNetworkView extends VisualPropertyKeeper<CyNetwork> 
+               implements CyNetworkView {
+
+       @Override
+       public CyNetwork getModel() {
+               // TODO Auto-generated method stub
+               return null;
+       }
+
+       @Override
+       public long getSUID() {
+               // TODO Auto-generated method stub
+               return 0;
+       }
+
+       @Override
+       public View<CyNode> getNodeView(CyNode node) {
+               // TODO Auto-generated method stub
+               return null;
+       }
+
+       @Override
+       public Collection<View<CyNode>> getNodeViews() {
+               // TODO Auto-generated method stub
+               return null;
+       }
+
+       @Override
+       public View<CyEdge> getEdgeView(CyEdge edge) {
+               // TODO Auto-generated method stub
+               return null;
+       }
+
+       @Override
+       public Collection<View<CyEdge>> getEdgeViews() {
+               // TODO Auto-generated method stub
+               return null;
+       }
+
+       @Override
+       public Collection<View<? extends CyTableEntry>> getAllViews() {
+               // TODO Auto-generated method stub
+               return null;
+       }
+
+       @Override
+       public void fitContent() {
+               // TODO Auto-generated method stub
+               
+       }
+
+       @Override
+       public void fitSelected() {
+               // TODO Auto-generated method stub
+               
+       }
+
+       @Override
+       public void updateView() {
+               // TODO Auto-generated method stub
+               
+       }
+
+       @Override
+       public <T, V extends T> void setViewDefault(VisualProperty<? extends T> 
vp,
+                       V defaultValue) {
+               // TODO Auto-generated method stub
+               
+       }
+
+}


Property changes on: 
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/WindNetworkView.java
___________________________________________________________________
Added: svn:mime-type
   + text/plain

Added: 
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/WindNetworkViewFactory.java
===================================================================
--- 
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/WindNetworkViewFactory.java
                            (rev 0)
+++ 
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/WindNetworkViewFactory.java
    2012-01-09 23:54:38 UTC (rev 27958)
@@ -0,0 +1,22 @@
+package org.cytoscape.paperwing.internal.cytoscape.view;
+
+import org.cytoscape.model.CyNetwork;
+import org.cytoscape.view.model.CyNetworkView;
+import org.cytoscape.view.model.CyNetworkViewFactory;
+
+public class WindNetworkViewFactory implements CyNetworkViewFactory {
+
+       @Override
+       public CyNetworkView createNetworkView(CyNetwork network) {
+               // TODO Auto-generated method stub
+               return null;
+       }
+
+       @Override
+       public CyNetworkView createNetworkView(CyNetwork network,
+                       Boolean useThreshold) {
+               // TODO Auto-generated method stub
+               return null;
+       }
+
+}


Property changes on: 
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/WindNetworkViewFactory.java
___________________________________________________________________
Added: svn:mime-type
   + text/plain

Added: 
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/WindNodeView.java
===================================================================
--- 
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/WindNodeView.java
                              (rev 0)
+++ 
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/WindNodeView.java
      2012-01-09 23:54:38 UTC (rev 27958)
@@ -0,0 +1,29 @@
+package org.cytoscape.paperwing.internal.cytoscape.view;
+
+import java.util.HashMap;
+
+import org.cytoscape.model.CyNode;
+import org.cytoscape.view.model.View;
+import org.cytoscape.view.model.VisualProperty;
+
+public class WindNodeView extends VisualPropertyKeeper<CyNode> {
+
+       private CyNode node;
+       private Long SUID;
+       
+       public WindNodeView(CyNode node, Long SUID) {
+               this.node = node;
+               this.SUID = SUID;               
+       }
+       
+       @Override
+       public long getSUID() {
+               return SUID;
+       }
+
+       @Override
+       public CyNode getModel() {
+               return node;
+       }
+
+}


Property changes on: 
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/WindNodeView.java
___________________________________________________________________
Added: svn:mime-type
   + text/plain

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