Author: paperwing
Date: 2012-01-10 15:05:13 -0800 (Tue, 10 Jan 2012)
New Revision: 27970
Modified:
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/CyActivator.java
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/coordinator/ViewingCoordinator.java
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
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/WindNetworkViewFactory.java
Log:
VisualPropertyKeeper bug involving returning VisualPropertyValueHolders instead
of the values themselves fixed; WindNetworkView updated, still needs to ensure
there is a view for every node/edge in the case of node/edge addition/deletion
Modified:
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/CyActivator.java
===================================================================
---
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/CyActivator.java
2012-01-10 22:24:21 UTC (rev 27969)
+++
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/CyActivator.java
2012-01-10 23:05:13 UTC (rev 27970)
@@ -2,8 +2,10 @@
import java.util.Properties;
+import org.cytoscape.paperwing.internal.cytoscape.view.WindNetworkViewFactory;
import org.cytoscape.service.util.AbstractCyActivator;
import org.cytoscape.service.util.CyServiceRegistrar;
+import org.cytoscape.view.model.CyNetworkViewFactory;
import org.cytoscape.view.model.CyNetworkViewManager;
import org.cytoscape.view.model.VisualLexicon;
import org.cytoscape.view.presentation.RenderingEngineFactory;
@@ -23,14 +25,29 @@
CyServiceRegistrar cyServiceRegistrarRef = getService(bc,
CyServiceRegistrar.class);
+ // Wind Visual Lexicon
WindVisualLexicon windVisualLexicon = new WindVisualLexicon();
+
+ Properties windVisualLexiconProps = new Properties();
+ windVisualLexiconProps.setProperty("serviceType",
"visualLexicon");
+ windVisualLexiconProps.setProperty("id", "wind");
+ registerService(bc, windVisualLexicon, VisualLexicon.class,
+ windVisualLexiconProps);
+
+ // Wind NetworkView factory
+ WindNetworkViewFactory windNetworkViewFactory =
+ new WindNetworkViewFactory(windVisualLexicon);
+
+ Properties windNetworkViewFactoryProps = new Properties();
+ windNetworkViewFactoryProps.setProperty("serviceType",
+ "factory");
+ registerService(bc, windNetworkViewFactory,
CyNetworkViewFactory.class, windNetworkViewFactoryProps);
+
+ // Main RenderingEngine factory
WindMainRenderingEngineFactory windMainRenderingEngineFactory =
new WindMainRenderingEngineFactory(
cyNetworkViewManagerRef,
cyRenderingEngineManagerRef,
windVisualLexicon, cyServiceRegistrarRef);
- WindBirdsEyeRenderingEngineFactory
windBirdsEyeRenderingEngineFactory = new WindBirdsEyeRenderingEngineFactory(
- cyNetworkViewManagerRef,
cyRenderingEngineManagerRef,
- windVisualLexicon, cyServiceRegistrarRef);
-
+
Properties windMainRenderingEngineFactoryProps = new
Properties();
windMainRenderingEngineFactoryProps.setProperty("serviceType",
"presentationFactory");
@@ -38,6 +55,11 @@
registerService(bc, windMainRenderingEngineFactory,
RenderingEngineFactory.class,
windMainRenderingEngineFactoryProps);
+ // Bird's Eye RenderingEngine factory
+ WindBirdsEyeRenderingEngineFactory
windBirdsEyeRenderingEngineFactory = new WindBirdsEyeRenderingEngineFactory(
+ cyNetworkViewManagerRef,
cyRenderingEngineManagerRef,
+ windVisualLexicon, cyServiceRegistrarRef);
+
Properties windBirdsEyeRenderingEngineFactoryProps = new
Properties();
windBirdsEyeRenderingEngineFactoryProps.setProperty("serviceType",
"presentationFactory");
@@ -46,10 +68,6 @@
RenderingEngineFactory.class,
windBirdsEyeRenderingEngineFactoryProps);
- Properties windVisualLexiconProps = new Properties();
- windVisualLexiconProps.setProperty("serviceType",
"visualLexicon");
- windVisualLexiconProps.setProperty("id", "wind");
- registerService(bc, windVisualLexicon, VisualLexicon.class,
- windVisualLexiconProps);
+
}
}
Modified:
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/coordinator/ViewingCoordinator.java
===================================================================
---
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/coordinator/ViewingCoordinator.java
2012-01-10 22:24:21 UTC (rev 27969)
+++
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/coordinator/ViewingCoordinator.java
2012-01-10 23:05:13 UTC (rev 27970)
@@ -13,14 +13,11 @@
public class ViewingCoordinator {
public static double BOUNDS_CHANGE_THRESHOLD = 5e-16;
- public static double CAMERA_CHANGE_THRESHOLD = 5e-16;
+ public static double CAMERA_CHANGE_THRESHOLD = 5e-25;
private SimpleCamera mainCameraCopy;
private Quadrilateral birdsEyeBoundsCopy;
-
-
-
private double verticalFov;
private double aspectRatio;
@@ -87,9 +84,6 @@
return coordinator;
}
-
-
-
public boolean checkCameraChanged(SimpleCamera mainCamera) {
double threshold = CAMERA_CHANGE_THRESHOLD;
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-10 22:24:21 UTC (rev 27969)
+++
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/DefaultValueVault.java
2012-01-10 23:05:13 UTC (rev 27970)
@@ -71,7 +71,7 @@
for (String key : nodeDefaultValues.keySet()) {
valueHolder = nodeDefaultValues.get(key);
- keeper.setVisualProperty(key, valueHolder);
+ keeper.setVisualProperty(key, valueHolder.getValue());
}
}
@@ -80,7 +80,7 @@
for (String key : edgeDefaultValues.keySet()) {
valueHolder = edgeDefaultValues.get(key);
- keeper.setVisualProperty(key, valueHolder);
+ keeper.setVisualProperty(key, valueHolder.getValue());
}
}
@@ -89,7 +89,7 @@
for (String key : networkDefaultValues.keySet()) {
valueHolder = networkDefaultValues.get(key);
- keeper.setVisualProperty(key, valueHolder);
+ keeper.setVisualProperty(key, valueHolder.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-10 22:24:21 UTC (rev 27969)
+++
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/VisualPropertyKeeper.java
2012-01-10 23:05:13 UTC (rev 27970)
@@ -15,7 +15,7 @@
}
public <T> T getVisualProperty(VisualProperty<T> visualProperty) {
-
+
return (T)
valueHolders.get(visualProperty.getIdString()).getValue();
}
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-10 22:24:21 UTC (rev 27969)
+++
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/WindNetworkView.java
2012-01-10 23:05:13 UTC (rev 27970)
@@ -43,12 +43,16 @@
for (CyNode node : network.getNodeList()) {
nodeView = new WindNodeView(node,
SUIDFactory.getNextSUID());
defaultValues.initializeNode(nodeView);
+
+ nodeViews.put(node.getIndex(), nodeView);
}
WindEdgeView edgeView;
for (CyEdge edge : network.getEdgeList()) {
edgeView = new WindEdgeView(edge,
SUIDFactory.getNextSUID());
defaultValues.initializeEdge(edgeView);
+
+ edgeViews.put(edge.getIndex(), edgeView);
}
defaultValues.initializeNetwork(this);
@@ -86,7 +90,7 @@
@Override
public Collection<View<? extends CyTableEntry>> getAllViews() {
- Collection<View<? extends CyTableEntry>> views = new HashSet();
+ Collection<View<? extends CyTableEntry>> views = new
HashSet<View<? extends CyTableEntry>>();
// Return views for Node, Edge, Network
views.addAll(getNodeViews());
@@ -98,20 +102,48 @@
@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
+ // TODO: Check if correct place to put this; below code should
ensure having a view
+ // for every node/edge in the network
+ int nodeCountDifference = network.getNodeCount() -
nodeViews.size();
+ // Check if nodes have been added to the network
+ if (nodeCountDifference > 0) {
+ for (CyNode node : network.getNodeList()) {
+
+ // Found a node without a view?
+ if (nodeViews.get(node.getIndex()) == null) {
+
+ WindNodeView nodeView = new
WindNodeView(node, SUIDFactory.getNextSUID());
+ defaultValues.initializeNode(nodeView);
+
+ nodeViews.put(node.getIndex(),
nodeView);
+
+ nodeCountDifference--;
+ }
+ }
+
+ // Did we fail to match every node with a node view?
+ if (nodeCountDifference != 0) {
+
+ // TODO: Use exception
+
System.out.println("WindNetworkView.updateView(): node count mismatch by " +
nodeCountDifference);
+ }
+ // Check if nodes have been removed from the network
+ } else if (nodeCountDifference < 0) {
+
+ }
+
+
}
@Override
Modified:
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
2012-01-10 22:24:21 UTC (rev 27969)
+++
csplugins/trunk/toronto/yuedong/paperwing-impl/src/main/java/org/cytoscape/paperwing/internal/cytoscape/view/WindNetworkViewFactory.java
2012-01-10 23:05:13 UTC (rev 27970)
@@ -4,24 +4,27 @@
import org.cytoscape.model.SUIDFactory;
import org.cytoscape.view.model.CyNetworkView;
import org.cytoscape.view.model.CyNetworkViewFactory;
+import org.cytoscape.view.model.VisualLexicon;
public class WindNetworkViewFactory implements CyNetworkViewFactory {
+ private VisualLexicon visualLexicon;
- public WindNetworkViewFactory() {
+ public WindNetworkViewFactory(VisualLexicon visualLexicon) {
+ this.visualLexicon = visualLexicon;
}
@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;
+
+ // TODO: Implement use of useThreshold parameter
+ return new WindNetworkView(network, visualLexicon);
}
+
+ @Override
+ public CyNetworkView createNetworkView(CyNetwork network) {
+ return createNetworkView(network, true);
+ }
}
--
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.