Author: rozagh
Date: 2012-02-09 15:42:48 -0800 (Thu, 09 Feb 2012)
New Revision: 28226
Added:
core3/impl/trunk/ding-impl/ding-presentation-impl/src/test/java/org/cytoscape/ding/impl/
core3/impl/trunk/ding-impl/ding-presentation-impl/src/test/java/org/cytoscape/ding/impl/DGraphViewTest.java
Modified:
core3/api/trunk/presentation-api/src/main/java/org/cytoscape/view/presentation/RenderingEngine.java
core3/api/trunk/presentation-api/src/test/java/org/cytoscape/view/presentation/AbstractRenderingEngineTest.java
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/BirdsEyeView.java
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/DGraphView.java
Log:
fixes #334 The setProperties method is defined in the RenderingEngine interface
and implemented in DGraphView and BirdsEyeView classes. A test class for
DGraphView is added to ding-presentation-impl and the "ExportTextAsFont"
property assignment is tested in AbstractRenderingEngineTest.
Modified:
core3/api/trunk/presentation-api/src/main/java/org/cytoscape/view/presentation/RenderingEngine.java
===================================================================
---
core3/api/trunk/presentation-api/src/main/java/org/cytoscape/view/presentation/RenderingEngine.java
2012-02-09 22:56:23 UTC (rev 28225)
+++
core3/api/trunk/presentation-api/src/main/java/org/cytoscape/view/presentation/RenderingEngine.java
2012-02-09 23:42:48 UTC (rev 28226)
@@ -41,9 +41,7 @@
/**
* Get property values for the rendering engine, like LOD.
- * Users can set each property value by getting this {@linkplain
Properties} object.
- * <p>
- * {@linkplain Properties} object itself is immutable.
+ * Users can set each property using the {@linkplain setProperty}
method.
*
* @return property values.
*/
@@ -51,6 +49,14 @@
/**
+ * Set property value for the rendering engine, like LOD.
+ * @param key the property attribute that need to be set.
+ * @param value the value for the property attribute.
+ */
+ public void setProperties( String key, String value);
+
+
+ /**
* For export image function.
*
* @return A Printable object suitable for submission to a printer.
Modified:
core3/api/trunk/presentation-api/src/test/java/org/cytoscape/view/presentation/AbstractRenderingEngineTest.java
===================================================================
---
core3/api/trunk/presentation-api/src/test/java/org/cytoscape/view/presentation/AbstractRenderingEngineTest.java
2012-02-09 22:56:23 UTC (rev 28225)
+++
core3/api/trunk/presentation-api/src/test/java/org/cytoscape/view/presentation/AbstractRenderingEngineTest.java
2012-02-09 23:42:48 UTC (rev 28226)
@@ -2,7 +2,11 @@
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
+
import java.awt.Image;
import javax.swing.JPanel;
@@ -10,6 +14,7 @@
import org.cytoscape.model.CyNetwork;
import org.cytoscape.view.model.View;
import org.cytoscape.view.model.VisualLexicon;
+import org.junit.Before;
import org.junit.Test;
/**
@@ -24,13 +29,20 @@
protected View<CyNetwork> networkView;
protected int numberOfVP;
+
+ protected RenderingEngine<CyNetwork> engine ;
+ @Before
+ public void setup(){
+
+ final JPanel panel = new JPanel();
+ engine = factory.createRenderingEngine(panel, networkView);
+
+ }
+
@Test
public void testFactory() {
-
- final JPanel panel = new JPanel();
- RenderingEngine<CyNetwork> engine =
factory.createRenderingEngine(panel, networkView);
-
+
assertNotNull(engine);
View<CyNetwork> viewModel = engine.getViewModel();
@@ -45,4 +57,36 @@
assertEquals(400, img.getHeight(null));
assertEquals(400, img.getWidth(null));
}
+
+ @Test
+ public void testSetPropertiesTrue() {
+
+ engine.setProperties("exportTextAsShape", "true");
+ assertEquals(true,
Boolean.parseBoolean(engine.getProperties().get("exportTextAsShape").toString()));
+
+ }
+
+ @Test
+ public void testSetPropertiesFalse() {
+
+ engine.setProperties("exportTextAsShape", "false");
+ assertEquals(false,
Boolean.parseBoolean(engine.getProperties().get("exportTextAsShape").toString()));
+
+ }
+
+ @Test
+ public void testSetPropertiesWrongInput() {
+
+ engine.setProperties("exportTextAsShape", "wrongInput");
+ assertEquals(false,
Boolean.parseBoolean(engine.getProperties().get("exportTextAsShape").toString()));
+
+ }
+
+ @Test(expected=NullPointerException.class)
+ public void testSetPropertiesNullException() {
+
+ engine.setProperties("exportTextAsShape", null);
+ }
+
+
}
Modified:
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/BirdsEyeView.java
===================================================================
---
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/BirdsEyeView.java
2012-02-09 22:56:23 UTC (rev 28225)
+++
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/BirdsEyeView.java
2012-02-09 23:42:48 UTC (rev 28226)
@@ -341,6 +341,12 @@
}
@Override
+ public void setProperties(String key, String value) {
+ dgv.setProperties(key, value);
+
+ }
+
+ @Override
public Printable createPrintable() {
return dgv.createPrintable();
}
@@ -355,4 +361,7 @@
public void printCanvas(Graphics printCanvas) {
throw new UnsupportedOperationException("Printing is not
supported for Bird's eye view.");
}
+
+
+
}
Modified:
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/DGraphView.java
===================================================================
---
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/DGraphView.java
2012-02-09 22:56:23 UTC (rev 28225)
+++
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/DGraphView.java
2012-02-09 23:42:48 UTC (rev 28226)
@@ -2636,6 +2636,14 @@
return this.props;
}
+ @Override
+ public void setProperties(String key, String value) {
+ this.props.setProperty(key, value);
+ if (key.equals("exportTextAsShape"))
+ setPrintingTextAsShape(Boolean.parseBoolean(value));
+
+ }
+
/**
* Common API for all rendering engines.
*/
@@ -2996,4 +3004,6 @@
public CyAnnotator getCyAnnotator() {
return cyAnnotator;
}
+
+
}
Added:
core3/impl/trunk/ding-impl/ding-presentation-impl/src/test/java/org/cytoscape/ding/impl/DGraphViewTest.java
===================================================================
---
core3/impl/trunk/ding-impl/ding-presentation-impl/src/test/java/org/cytoscape/ding/impl/DGraphViewTest.java
(rev 0)
+++
core3/impl/trunk/ding-impl/ding-presentation-impl/src/test/java/org/cytoscape/ding/impl/DGraphViewTest.java
2012-02-09 23:42:48 UTC (rev 28226)
@@ -0,0 +1,89 @@
+package org.cytoscape.ding.impl;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.fail;
+import static org.mockito.Mockito.mock;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import javax.swing.JPanel;
+
+import org.cytoscape.ding.impl.cyannotator.create.AnnotationFactoryManager;
+import org.cytoscape.ding.customgraphics.CustomGraphicsManager;
+import org.cytoscape.ding.impl.DVisualLexicon;
+import org.cytoscape.ding.impl.DingViewModelFactory;
+import org.cytoscape.ding.impl.ViewTaskFactoryListener;
+import org.cytoscape.dnd.DropNetworkViewTaskFactory;
+import org.cytoscape.dnd.DropNodeViewTaskFactory;
+import org.cytoscape.event.CyEventHelper;
+import org.cytoscape.model.CyNetwork;
+import org.cytoscape.model.CyNetworkTableManager;
+import org.cytoscape.model.CyTableFactory;
+import org.cytoscape.model.NetworkTestSupport;
+import org.cytoscape.model.TableTestSupport;
+import org.cytoscape.model.subnetwork.CyRootNetworkManager;
+import org.cytoscape.service.util.CyServiceRegistrar;
+import org.cytoscape.spacial.SpacialIndex2DFactory;
+import org.cytoscape.spacial.internal.rtree.RTreeFactory;
+import org.cytoscape.task.EdgeViewTaskFactory;
+import org.cytoscape.task.NetworkViewTaskFactory;
+import org.cytoscape.task.NodeViewTaskFactory;
+import org.cytoscape.view.model.CyNetworkView;
+import org.cytoscape.view.model.CyNetworkViewFactory;
+import org.cytoscape.view.model.View;
+import org.cytoscape.view.model.VisualLexicon;
+import org.cytoscape.view.presentation.AbstractRenderingEngineTest;
+import org.cytoscape.view.presentation.RenderingEngine;
+import org.cytoscape.view.presentation.RenderingEngineFactory;
+import org.cytoscape.view.presentation.RenderingEngineManager;
+import org.cytoscape.work.swing.DialogTaskManager;
+import org.cytoscape.work.swing.SubmenuTaskManager;
+import org.cytoscape.work.undo.UndoSupport;
+import org.junit.Test;
+import org.cytoscape.ding.*;
+
+
+public class DGraphViewTest extends AbstractRenderingEngineTest {
+
+ protected DGraphView graphView;
+
+
+ //protected int numberOfVP;
+
+ public DGraphViewTest() {
+
+
+ NetworkViewTestSupport nvTest = new NetworkViewTestSupport();
+ graphView = (DGraphView) nvTest.getNetworkView();
+
+
+ this.factory = new RenderingEngineFactory<CyNetwork>() {
+
+
+ @Override
+ public VisualLexicon getVisualLexicon() {
+ // TODO Auto-generated method stub
+ return graphView.getVisualLexicon();
+ }
+
+ @Override
+ public RenderingEngine<CyNetwork> createRenderingEngine(
+ Object visualizationContainer,
View<CyNetwork> viewModel) {
+ // TODO Auto-generated method stub
+ return graphView;
+ }
+ };
+
+ this.networkView = graphView;
+ this.numberOfVP =
graphView.getVisualLexicon().getAllVisualProperties().size();
+
+ }
+
+
+
+}
+
+
--
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.