Author: paperwing
Date: 2012-02-14 08:28:32 -0800 (Tue, 14 Feb 2012)
New Revision: 28259
Added:
csplugins/trunk/toronto/yuedong/multi_renderer/impl/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/DingRenderer.java
Modified:
csplugins/trunk/toronto/yuedong/multi_renderer/impl/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/CyActivator.java
Log:
Added implementation of ExternalRenderer interface into ding implementation
Modified:
csplugins/trunk/toronto/yuedong/multi_renderer/impl/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/CyActivator.java
===================================================================
---
csplugins/trunk/toronto/yuedong/multi_renderer/impl/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/CyActivator.java
2012-02-14 15:44:55 UTC (rev 28258)
+++
csplugins/trunk/toronto/yuedong/multi_renderer/impl/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/CyActivator.java
2012-02-14 16:28:32 UTC (rev 28259)
@@ -10,6 +10,7 @@
import org.cytoscape.ding.impl.AddEdgeNodeViewTaskFactoryImpl;
import org.cytoscape.ding.impl.DVisualLexicon;
import org.cytoscape.ding.impl.DingNavigationRenderingEngineFactory;
+import org.cytoscape.ding.impl.DingRenderer;
import org.cytoscape.ding.impl.DingRenderingEngineFactory;
import org.cytoscape.ding.impl.DingViewModelFactory;
import org.cytoscape.ding.impl.ViewTaskFactoryListener;
@@ -44,6 +45,8 @@
import org.cytoscape.view.model.CyNetworkViewFactory;
import org.cytoscape.view.model.VisualLexicon;
import org.cytoscape.view.model.events.UpdateNetworkPresentationEventListener;
+import org.cytoscape.view.presentation.ExternalRenderer;
+import org.cytoscape.view.presentation.ExternalRendererManager;
import org.cytoscape.view.presentation.RenderingEngineFactory;
import org.cytoscape.view.presentation.RenderingEngineManager;
import org.cytoscape.view.vizmap.gui.editor.ValueEditor;
@@ -80,6 +83,9 @@
CyNetworkFactory cyNetworkFactory =
getService(bc,CyNetworkFactory.class);
+ // Renderer manager
+ ExternalRendererManager rendererManagerServiceRef =
getService(bc,ExternalRendererManager.class);
+
DVisualLexicon dVisualLexicon = new
DVisualLexicon(customGraphicsManagerServiceRef);
ViewTaskFactoryListener vtfListener = new
ViewTaskFactoryListener();
@@ -98,6 +104,10 @@
CustomGraphicsSizeDependency nodeCustomGraphicsSizeDependency =
new CustomGraphicsSizeDependency();
DingViewModelFactory dingNetworkViewFactory = new
DingViewModelFactory(cyDataTableFactoryServiceRef,cyRootNetworkFactoryServiceRef,undoSupportServiceRef,spacialIndex2DFactoryServiceRef,dVisualLexicon,dialogTaskManager,submenuTaskManager,cyServiceRegistrarRef,cyNetworkTableManagerServiceRef,cyEventHelperServiceRef,
vtfListener,annotationFactoryManager);
+ // Renderer interface
+ DingRenderer dingRenderer = new
DingRenderer(rendererManagerServiceRef, dVisualLexicon,
dingRenderingEngineFactory, dingNavigationRenderingEngineFactory,
dingNetworkViewFactory);
+ registerService(bc, dingRenderer, ExternalRenderer.class, new
Properties());
+
// Edge Bend editor
EdgeBendValueEditor edgeBendValueEditor = new
EdgeBendValueEditor(cyNetworkFactory,
dingNetworkViewFactory,dingRenderingEngineFactory);
EdgeBendEditor edgeBendEditor = new
EdgeBendEditor(edgeBendValueEditor);
Added:
csplugins/trunk/toronto/yuedong/multi_renderer/impl/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/DingRenderer.java
===================================================================
---
csplugins/trunk/toronto/yuedong/multi_renderer/impl/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/DingRenderer.java
(rev 0)
+++
csplugins/trunk/toronto/yuedong/multi_renderer/impl/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/DingRenderer.java
2012-02-14 16:28:32 UTC (rev 28259)
@@ -0,0 +1,69 @@
+package org.cytoscape.ding.impl;
+
+import org.cytoscape.view.model.CyNetworkViewFactory;
+import org.cytoscape.view.model.VisualLexicon;
+import org.cytoscape.view.presentation.ExternalRenderer;
+import org.cytoscape.view.presentation.ExternalRendererManager;
+import org.cytoscape.view.presentation.RenderingEngineFactory;
+
+public class DingRenderer implements ExternalRenderer {
+
+ private static final String RENDERER_ID = "org.cytoscape.ding";
+
+ private VisualLexicon visualLexicon;
+ private RenderingEngineFactory<?> mainRenderingEngineFactory;
+ private RenderingEngineFactory<?> birdEyeRenderingEngineFactory;
+ private CyNetworkViewFactory networkViewFactory;
+
+ public DingRenderer(ExternalRendererManager rendererManager,
+ VisualLexicon dingVisualLexicon,
+ RenderingEngineFactory<?>
dingMainRenderingEngineFactory,
+ RenderingEngineFactory<?>
dingBirdEyeRenderingEngineFactory,
+ CyNetworkViewFactory dingNetworkViewFactory) {
+
+ // Add this renderer to the manager
+ rendererManager.installRenderer(this);
+
+ visualLexicon = dingVisualLexicon;
+ mainRenderingEngineFactory = dingMainRenderingEngineFactory;
+ birdEyeRenderingEngineFactory =
dingBirdEyeRenderingEngineFactory;
+ networkViewFactory = dingNetworkViewFactory;
+ }
+
+ @Override
+ public String getRendererID() {
+ return RENDERER_ID;
+ }
+
+ @Override
+ public RenderingEngineFactory<?> getRenderingEngineFactory(
+ RenderPurpose renderPurpose) {
+
+ switch (renderPurpose) {
+ case BIRDS_EYE_VIEW:
+ return birdEyeRenderingEngineFactory;
+ case DETAIL_VIEW:
+ return mainRenderingEngineFactory;
+ case VISUAL_STYLE_PREVIEW:
+ return mainRenderingEngineFactory;
+ default:
+ return null;
+ }
+ }
+
+ @Override
+ public CyNetworkViewFactory getNetworkViewFactory(
+ RenderPurpose renderPurpose) {
+
+ // Ding currently uses the same CyNetworkViewFactory for all
network views
+ return networkViewFactory;
+ }
+
+ @Override
+ public VisualLexicon getVisualLexicon(RenderPurpose renderPurpose) {
+
+ // Use the same visual lexicon for all rendering purposes
+ return visualLexicon;
+ }
+
+}
Property changes on:
csplugins/trunk/toronto/yuedong/multi_renderer/impl/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/DingRenderer.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.