Author: kono
Date: 2010-12-28 16:46:12 -0800 (Tue, 28 Dec 2010)
New Revision: 23273
Added:
core3/ding-presentation-impl/trunk/src/main/java/org/cytoscape/ding/impl/CurrentDGVManager.java
core3/session-api/trunk/src/main/java/org/cytoscape/session/events/SetCurrentRenderingEngineEvent.java
core3/session-api/trunk/src/main/java/org/cytoscape/session/events/SetCurrentRenderingEngineListener.java
Modified:
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/io/ViewWriter.java
core3/ding-presentation-impl/trunk/pom.xml
core3/ding-presentation-impl/trunk/src/main/java/org/cytoscape/ding/impl/BirdsEyeView.java
core3/ding-presentation-impl/trunk/src/main/java/org/cytoscape/ding/impl/DingNavigationRenderingEngine.java
core3/ding-presentation-impl/trunk/src/main/java/org/cytoscape/ding/impl/DingNavigationRenderingEngineFactory.java
core3/ding-presentation-impl/trunk/src/main/java/org/cytoscape/ding/impl/DingRenderingEngineFactory.java
core3/ding-presentation-impl/trunk/src/main/java/org/cytoscape/ding/impl/InnerCanvas.java
core3/ding-presentation-impl/trunk/src/main/resources/META-INF/spring/bundle-context-osgi.xml
core3/ding-presentation-impl/trunk/src/main/resources/META-INF/spring/bundle-context.xml
core3/io-impl/trunk/src/main/java/org/cytoscape/io/internal/write/graphics/BitmapWriterFactory.java
core3/session-impl/trunk/src/main/java/org/cytoscape/session/internal/CyApplicationManagerImpl.java
core3/swing-application-impl/trunk/src/main/java/org/cytoscape/internal/view/BirdsEyeViewHandler.java
core3/swing-application-impl/trunk/src/main/java/org/cytoscape/internal/view/NetworkViewManager.java
core3/swing-application-impl/trunk/src/main/resources/META-INF/spring/bundle-context-osgi.xml
core3/swing-application-impl/trunk/src/main/resources/META-INF/spring/bundle-context.xml
Log:
Bird's eye view is partially working.
Modified:
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/io/ViewWriter.java
===================================================================
---
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/io/ViewWriter.java
2010-12-28 23:44:07 UTC (rev 23272)
+++
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/io/ViewWriter.java
2010-12-29 00:46:12 UTC (rev 23273)
@@ -16,7 +16,7 @@
public final class ViewWriter extends
AbstractCyWriter<PresentationWriterManager> {
private final View<?> view;
- private final RenderingEngine re;
+ private final RenderingEngine<?> re;
/**
* @param writerManager The {...@link
org.cytoscape.io.write.PresentationWriterManager} used to determine which type
of
@@ -24,7 +24,7 @@
* @param view The View object to be written to the specified file.
* @param re The RenderingEngine used to generate the image to be
written to the file.
*/
- public ViewWriter(PresentationWriterManager writerManager, View<?> view,
RenderingEngine re ) {
+ public ViewWriter(final PresentationWriterManager writerManager, final
View<?> view, final RenderingEngine<?> re ) {
super(writerManager);
if ( view == null )
Modified: core3/ding-presentation-impl/trunk/pom.xml
===================================================================
--- core3/ding-presentation-impl/trunk/pom.xml 2010-12-28 23:44:07 UTC (rev
23272)
+++ core3/ding-presentation-impl/trunk/pom.xml 2010-12-29 00:46:12 UTC (rev
23273)
@@ -162,6 +162,12 @@
<artifactId>dnd-api</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
+
+ <dependency>
+ <groupId>org.cytoscape</groupId>
+ <artifactId>session-api</artifactId>
+ <version>3.0.0-alpha2-SNAPSHOT</version>
+ </dependency>
<!-- Testing -->
<dependency>
Modified:
core3/ding-presentation-impl/trunk/src/main/java/org/cytoscape/ding/impl/BirdsEyeView.java
===================================================================
---
core3/ding-presentation-impl/trunk/src/main/java/org/cytoscape/ding/impl/BirdsEyeView.java
2010-12-28 23:44:07 UTC (rev 23272)
+++
core3/ding-presentation-impl/trunk/src/main/java/org/cytoscape/ding/impl/BirdsEyeView.java
2010-12-29 00:46:12 UTC (rev 23273)
@@ -49,20 +49,33 @@
import java.awt.geom.Point2D;
import java.awt.geom.Rectangle2D;
import java.awt.image.BufferedImage;
+import java.awt.print.Printable;
+import java.util.Properties;
+import javax.swing.Icon;
+
import org.cytoscape.ding.GraphView;
+import org.cytoscape.model.CyNetwork;
+import org.cytoscape.view.model.View;
+import org.cytoscape.view.model.VisualLexicon;
+import org.cytoscape.view.model.VisualProperty;
+import org.cytoscape.view.presentation.RenderingEngine;
/**
* Swing component to display overview of the network.
*
- * @author $author$
*/
-public class BirdsEyeView extends Component {
+public class BirdsEyeView extends Component implements
RenderingEngine<CyNetwork> {
+
private final static long serialVersionUID = 1202416511863994L;
+
+ private static final Dimension MIN_SIZE = new Dimension(180, 180);
private final double[] m_extents = new double[4];
- private DGraphView m_view;
+
+ private final DGraphView dgv;
+
private final ContentChangeListener m_cLis;
private final ViewportChangeListener m_vLis;
private Image m_img = null;
@@ -75,52 +88,54 @@
private double m_viewXCenter;
private double m_viewYCenter;
private double m_viewScaleFactor;
-
- private Component m_desktopView;
+ private final Component m_desktopView;
+
/**
* Creates a new BirdsEyeView object.
*
- * @param view
+ * @param dgv
* The view to monitor
- * @param desktopView
+ * @param container
* The desktop area holding the view. This should be
* NetworkViewManager.getDesktopPane().
*/
- public BirdsEyeView(Component desktopView, GraphView view) {
+ public BirdsEyeView(final Component vContainer, final DGraphView dgv) {
super();
+ if (dgv == null)
+ throw new NullPointerException("DGraphView is null.");
+ if (vContainer == null)
+ throw new NullPointerException("Container is null.");
+
+ this.dgv = dgv;
+
m_cLis = new InnerContentChangeListener();
m_vLis = new InnerViewportChangeListener();
- m_desktopView = desktopView;
+ m_desktopView = vContainer;
+
addMouseListener(new InnerMouseListener());
addMouseMotionListener(new InnerMouseMotionListener());
setPreferredSize(new Dimension(180, 180));
setMinimumSize(new Dimension(180, 180));
- setView(view);
+ setView(dgv);
}
- /**
- * DOCUMENT ME!
- *
- * @param view
- * DOCUMENT ME!
- */
+
private void setView(GraphView view) {
- // GraphView view = presFactory.getGraphView(cnv);
- if (view == null)
- return;
- destroy();
- m_view = (DGraphView) view;
+// if (view == null)
+// return;
+// destroy();
- m_view.addContentChangeListener(m_cLis);
- m_view.addViewportChangeListener(m_vLis);
+ dgv.addContentChangeListener(m_cLis);
+ dgv.addViewportChangeListener(m_vLis);
+
updateBounds();
- final Point2D pt = m_view.getCenter();
+ final Point2D pt = dgv.getCenter();
m_viewXCenter = pt.getX();
m_viewYCenter = pt.getY();
- m_viewScaleFactor = m_view.getZoom();
+ m_viewScaleFactor = dgv.getZoom();
m_contentChanged = true;
repaint();
@@ -137,19 +152,19 @@
}
private Rectangle2D getViewableRectInView(final Rectangle2D viewable) {
- if (m_view == null || m_view.getCanvas() == null
- || m_view.getCanvas().m_grafx == null)
+ if (dgv == null || dgv.getCanvas() == null
+ || dgv.getCanvas().m_grafx == null)
return new Rectangle2D.Double(0.0, 0.0, 0.0, 0.0);
final double[] origin = new double[2];
origin[0] = viewable.getX();
origin[1] = viewable.getY();
- m_view.xformComponentToNodeCoords(origin);
+ dgv.xformComponentToNodeCoords(origin);
final double[] destination = new double[2];
destination[0] = viewable.getX() + viewable.getWidth();
destination[1] = viewable.getY() + viewable.getHeight();
- m_view.xformComponentToNodeCoords(destination);
+ dgv.xformComponentToNodeCoords(destination);
Rectangle2D result = new Rectangle2D.Double(origin[0],
origin[1],
destination[0] - origin[0], destination[1] -
origin[1]);
@@ -157,11 +172,11 @@
}
private Rectangle2D getViewableRect() {
- if (m_view == null)
+ if (dgv == null)
return new Rectangle2D.Double(0.0, 0.0, 0.0, 0.0);
if (m_desktopView == null) {
- final Rectangle r = m_view.getComponent().getBounds();
+ final Rectangle r = dgv.getComponent().getBounds();
return new Rectangle2D.Double(r.x, r.y, r.width,
r.height);
}
@@ -172,9 +187,9 @@
desktopRect.y = s.y;
}
- final Rectangle viewRect = m_view.getComponent().getBounds();
- if (m_view.getComponent().isShowing()) {
- Point s = m_view.getComponent().getLocationOnScreen();
+ final Rectangle viewRect = dgv.getComponent().getBounds();
+ if (dgv.getComponent().isShowing()) {
+ Point s = dgv.getComponent().getLocationOnScreen();
viewRect.x = s.x;
viewRect.y = s.y;
}
@@ -188,17 +203,17 @@
return viewable;
}
- /**
- * DOCUMENT ME!
- */
- public void destroy() {
- if (m_view == null)
- return;
+// /**
+// * DOCUMENT ME!
+// */
+// public void destroy() {
+// if (dgv == null)
+// return;
+//
+// dgv.removeContentChangeListener(m_cLis);
+// dgv.removeViewportChangeListener(m_vLis);
+// }
- m_view.removeContentChangeListener(m_cLis);
- m_view.removeViewportChangeListener(m_vLis);
- }
-
/**
* This used to be called reshape, which is deprecated, so I've changed
it
* to setBounds. Not sure if this will break anything!
@@ -228,7 +243,7 @@
if (m_img == null)
return;
- if (m_view == null) {
+ if (dgv == null) {
g.setColor(Color.white);
g.fillRect(0, 0, getWidth(), getHeight());
@@ -238,7 +253,7 @@
updateBounds();
if (m_contentChanged) {
- if (m_view.getExtents(m_extents)) {
+ if (dgv.getExtents(m_extents)) {
m_myXCenter = (m_extents[0] + m_extents[2]) /
2.0d;
m_myYCenter = (m_extents[1] + m_extents[3]) /
2.0d;
m_myScaleFactor = 0.8d * Math.min(((double)
getWidth())
@@ -250,8 +265,8 @@
m_myScaleFactor = 1.0d;
}
- m_view.drawSnapshot(m_img, m_view.getGraphLOD(),
- m_view.getBackgroundPaint(),
m_myXCenter, m_myYCenter,
+ dgv.drawSnapshot(m_img, dgv.getGraphLOD(),
+ dgv.getBackgroundPaint(), m_myXCenter,
m_myYCenter,
m_myScaleFactor);
m_contentChanged = false;
}
@@ -339,6 +354,9 @@
private final class InnerMouseMotionListener implements
MouseMotionListener {
public void mouseDragged(MouseEvent e) {
+
+ System.out.println("--------- DRAG");
+
if (m_currMouseButton == 1) {
final int currX = e.getX();
final int currY = e.getY();
@@ -349,9 +367,9 @@
m_lastXMousePos = currX;
m_lastYMousePos = currY;
- if (m_view != null) {
- final Point2D pt = m_view.getCenter();
- m_view.setCenter(pt.getX() + deltaX,
pt.getY() + deltaY);
+ if (dgv != null) {
+ final Point2D pt = dgv.getCenter();
+ dgv.setCenter(pt.getX() + deltaX,
pt.getY() + deltaY);
}
}
}
@@ -360,7 +378,32 @@
}
}
- public Dimension getMinimumSize() {
- return new Dimension(180, 180);
+ @Override public Dimension getMinimumSize() {
+ return MIN_SIZE;
}
+
+ @Override
+ public View<CyNetwork> getViewModel() {
+ return dgv.getViewModel();
+ }
+
+ @Override
+ public VisualLexicon getVisualLexicon() {
+ return dgv.getVisualLexicon();
+ }
+
+ @Override
+ public Properties getProperties() {
+ return dgv.getProperties();
+ }
+
+ @Override
+ public Printable createPrintable() {
+ return dgv.createPrintable();
+ }
+
+ @Override
+ public <V> Icon createIcon(VisualProperty<V> vp, V value, int width,
int height) {
+ return dgv.createIcon(vp, value, width, height);
+ }
}
Added:
core3/ding-presentation-impl/trunk/src/main/java/org/cytoscape/ding/impl/CurrentDGVManager.java
===================================================================
---
core3/ding-presentation-impl/trunk/src/main/java/org/cytoscape/ding/impl/CurrentDGVManager.java
(rev 0)
+++
core3/ding-presentation-impl/trunk/src/main/java/org/cytoscape/ding/impl/CurrentDGVManager.java
2010-12-29 00:46:12 UTC (rev 23273)
@@ -0,0 +1,20 @@
+package org.cytoscape.ding.impl;
+
+
+/**
+ * Manages shared instance of current DGraphView object.
+ *
+ *
+ */
+public class CurrentDGVManager {
+
+ private DGraphView currentDGV;
+
+ public void setCurrentDGV(final DGraphView dgv) {
+ this.currentDGV = dgv;
+ }
+
+ public DGraphView getCurrentDGV() {
+ return this.currentDGV;
+ }
+}
Modified:
core3/ding-presentation-impl/trunk/src/main/java/org/cytoscape/ding/impl/DingNavigationRenderingEngine.java
===================================================================
---
core3/ding-presentation-impl/trunk/src/main/java/org/cytoscape/ding/impl/DingNavigationRenderingEngine.java
2010-12-28 23:44:07 UTC (rev 23272)
+++
core3/ding-presentation-impl/trunk/src/main/java/org/cytoscape/ding/impl/DingNavigationRenderingEngine.java
2010-12-29 00:46:12 UTC (rev 23273)
@@ -1,5 +1,6 @@
package org.cytoscape.ding.impl;
+import java.awt.Component;
import java.awt.Image;
import java.awt.print.Printable;
import java.util.Properties;
@@ -14,19 +15,20 @@
/**
* Wrapper for Navigation View
- *
- * @author kono
*
*/
public class DingNavigationRenderingEngine implements
RenderingEngine<CyNetwork> {
- private final DGraphView dgv;
-
+ private final DGraphView dgv;
private final Properties props;
- public DingNavigationRenderingEngine(final DGraphView dgv) {
+ private final BirdsEyeView bev;
+
+ public DingNavigationRenderingEngine(final Component container, final
DGraphView dgv) {
this.dgv = dgv;
this.props = new Properties();
+
+ bev = new BirdsEyeView(container, dgv);
}
@@ -49,8 +51,7 @@
@Override
public Printable createPrintable() {
- // TODO Auto-generated method stub
- return null;
+ return dgv.createPrintable();
}
@Override
Modified:
core3/ding-presentation-impl/trunk/src/main/java/org/cytoscape/ding/impl/DingNavigationRenderingEngineFactory.java
===================================================================
---
core3/ding-presentation-impl/trunk/src/main/java/org/cytoscape/ding/impl/DingNavigationRenderingEngineFactory.java
2010-12-28 23:44:07 UTC (rev 23272)
+++
core3/ding-presentation-impl/trunk/src/main/java/org/cytoscape/ding/impl/DingNavigationRenderingEngineFactory.java
2010-12-29 00:46:12 UTC (rev 23273)
@@ -1,14 +1,20 @@
package org.cytoscape.ding.impl;
+import java.awt.BorderLayout;
+import java.awt.Component;
import java.util.HashMap;
import java.util.Map;
+import javax.swing.JComponent;
+import javax.swing.JPanel;
+
import org.cytoscape.model.CyNetwork;
import org.cytoscape.model.CyTableFactory;
import org.cytoscape.model.CyTableManager;
import org.cytoscape.model.subnetwork.CyRootNetworkFactory;
import org.cytoscape.service.util.CyServiceRegistrar;
+import org.cytoscape.session.CyApplicationManager;
import org.cytoscape.spacial.SpacialIndex2DFactory;
import org.cytoscape.task.EdgeViewTaskFactory;
import org.cytoscape.task.NetworkViewTaskFactory;
@@ -56,13 +62,17 @@
private TaskManager tm;
private CyTableManager tableMgr;
+
+ private final CyApplicationManager appManager;
public DingNavigationRenderingEngineFactory(
CyTableFactory dataTableFactory,
CyRootNetworkFactory rootNetworkFactory, UndoSupport
undo,
SpacialIndex2DFactory spacialFactory,
VisualLexicon dingLexicon, TaskManager tm,
- CyServiceRegistrar registrar, CyTableManager tableMgr,
RenderingEngineManager renderingEngineManager) {
+ CyServiceRegistrar registrar, CyTableManager tableMgr,
RenderingEngineManager renderingEngineManager,
+ CyApplicationManager appManager
+ ) {
this.dataTableFactory = dataTableFactory;
this.rootNetworkFactory = rootNetworkFactory;
@@ -73,6 +83,7 @@
this.registrar = registrar;
this.tableMgr = tableMgr;
this.renderingEngineManager = renderingEngineManager;
+ this.appManager = appManager;
viewMap = new HashMap<CyNetworkView, DGraphView>();
nodeViewTFs = new HashMap<NodeViewTaskFactory, Map>();
@@ -83,33 +94,31 @@
@Override public RenderingEngine<CyNetwork> getInstance(final Object
visualizationContainer, final View<CyNetwork> view) {
-// if (visualizationContainer == null)
-// throw new IllegalArgumentException(
-// "Visualization container is null. This
should be an JComponent for this rendering engine.");
-// if (view == null)
-// throw new IllegalArgumentException(
-// "View Model is null.");
-//
-// if (!(visualizationContainer instanceof JComponent)
-// || !(view instanceof CyNetworkView))
-// throw new IllegalArgumentException(
-// "Visualization Container object is not
of type Component, "
-// + "which is invalid for
this implementation of PresentationFactory");
-//
-// final DGraphView dgv = new DGraphView((CyNetworkView) view,
-// dataTableFactory, rootNetworkFactory, undo,
spacialFactory,
-// rootLexicon, dingLexicon, nodeViewTFs,
edgeViewTFs,
-// emptySpaceTFs, ti, tm, registrar, tableMgr);
-//
-// logger.info("DGV created for navigation: View ID = " +
view.getSUID());
-//
-// JPanel target = new JPanel();
-// BirdsEyeView bev = new BirdsEyeView((Component)
visualizationContainer,
-// dgv);
-// target.add(bev);
+ if (visualizationContainer == null)
+ throw new IllegalArgumentException(
+ "Visualization container is null. This
should be an JComponent for this rendering engine.");
+ if (view == null)
+ throw new IllegalArgumentException(
+ "View Model is null.");
- DingNavigationRenderingEngine bev = new
DingNavigationRenderingEngine(null);
- // Register engine to manager
+ if (!(visualizationContainer instanceof JComponent)
+ || !(view instanceof CyNetworkView))
+ throw new IllegalArgumentException(
+ "Visualization Container object is not
of type Component, "
+ + "which is invalid for
this implementation of PresentationFactory");
+
+ final JComponent container = (JComponent)
visualizationContainer;
+
+ final RenderingEngine<CyNetwork> engine =
appManager.getCurrentRenderingEngine();
+
+ logger.info("!!!! DGV created for navigation: View ID = " +
view.getSUID());
+
+
+ final BirdsEyeView bev = new BirdsEyeView(container,
(DGraphView) engine);
+
+ container.setLayout(new BorderLayout());
+ container.add(bev, BorderLayout.CENTER);
+
this.renderingEngineManager.addRenderingEngine(bev);
return bev;
Modified:
core3/ding-presentation-impl/trunk/src/main/java/org/cytoscape/ding/impl/DingRenderingEngineFactory.java
===================================================================
---
core3/ding-presentation-impl/trunk/src/main/java/org/cytoscape/ding/impl/DingRenderingEngineFactory.java
2010-12-28 23:44:07 UTC (rev 23272)
+++
core3/ding-presentation-impl/trunk/src/main/java/org/cytoscape/ding/impl/DingRenderingEngineFactory.java
2010-12-29 00:46:12 UTC (rev 23273)
@@ -1,16 +1,15 @@
package org.cytoscape.ding.impl;
-
import java.awt.BorderLayout;
import java.util.HashMap;
import java.util.Map;
import java.util.Properties;
import javax.swing.JComponent;
-import javax.swing.JDesktopPane;
import javax.swing.JInternalFrame;
-import javax.swing.JLayeredPane;
+import org.cytoscape.dnd.DropNetworkViewTaskFactory;
+import org.cytoscape.dnd.DropNodeViewTaskFactory;
import org.cytoscape.event.CyEventHelper;
import org.cytoscape.model.CyNetwork;
import org.cytoscape.model.CyTableFactory;
@@ -21,8 +20,6 @@
import org.cytoscape.task.EdgeViewTaskFactory;
import org.cytoscape.task.NetworkViewTaskFactory;
import org.cytoscape.task.NodeViewTaskFactory;
-import org.cytoscape.dnd.DropNetworkViewTaskFactory;
-import org.cytoscape.dnd.DropNodeViewTaskFactory;
import org.cytoscape.view.model.CyNetworkView;
import org.cytoscape.view.model.View;
import org.cytoscape.view.model.VisualLexicon;
@@ -38,24 +35,22 @@
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-
public class DingRenderingEngineFactory implements
- RenderingEngineFactory<CyNetwork>,
UpdateNetworkPresentationEventListener {
+ RenderingEngineFactory<CyNetwork>,
+ UpdateNetworkPresentationEventListener {
- private static final Logger logger = LoggerFactory
- .getLogger(DingRenderingEngineFactory.class);
+ private static final Logger logger =
LoggerFactory.getLogger(DingRenderingEngineFactory.class);
+
+ private final RenderingEngineManager renderingEngineManager;
+ private final CyTableFactory dataTableFactory;
+ private final CyRootNetworkFactory rootNetworkFactory;
+ private final SpacialIndex2DFactory spacialFactory;
+ private final UndoSupport undo;
+ private final VisualLexicon dingLexicon;
+ private final CyServiceRegistrar registrar;
- final RenderingEngineManager renderingEngineManager;
+ private final Map<CyNetworkView, DGraphView> viewMap;
- private CyTableFactory dataTableFactory;
- private CyRootNetworkFactory rootNetworkFactory;
- private SpacialIndex2DFactory spacialFactory;
- private UndoSupport undo;
- private VisualLexicon dingLexicon;
- private CyServiceRegistrar registrar;
-
- private Map<CyNetworkView, DGraphView> viewMap;
-
private Map<NodeViewTaskFactory, Map> nodeViewTFs;
private Map<EdgeViewTaskFactory, Map> edgeViewTFs;
private Map<NetworkViewTaskFactory, Map> emptySpaceTFs;
@@ -65,13 +60,15 @@
private TaskManager tm;
private final CyTableManager tableMgr;
private final CyEventHelper eventHelper;
-
- public DingRenderingEngineFactory(
- CyTableFactory dataTableFactory,
+
+
+ public DingRenderingEngineFactory(CyTableFactory dataTableFactory,
CyRootNetworkFactory rootNetworkFactory, UndoSupport
undo,
SpacialIndex2DFactory spacialFactory, VisualLexicon
dingLexicon,
TaskManager tm, CyServiceRegistrar registrar,
- CyTableManager tableMgr, CyEventHelper eventHelper,
RenderingEngineManager renderingEngineManager) {
+ CyTableManager tableMgr, CyEventHelper eventHelper,
+ RenderingEngineManager renderingEngineManager) {
+
this.dataTableFactory = dataTableFactory;
this.rootNetworkFactory = rootNetworkFactory;
this.spacialFactory = spacialFactory;
@@ -95,14 +92,14 @@
* Render given view model by Ding rendering engine.
*
*/
- @Override public RenderingEngine<CyNetwork> getInstance(final Object
presentationContainer,
- View<CyNetwork> view) {
+ @Override
+ public RenderingEngine<CyNetwork> getInstance(
+ final Object presentationContainer, final
View<CyNetwork> view) {
// Validate arguments
if (presentationContainer == null)
- throw new IllegalArgumentException(
- "Container is null.");
-
+ throw new IllegalArgumentException("Container is
null.");
+
if (view == null)
throw new IllegalArgumentException(
"Cannot create presentation for null
view model.");
@@ -112,30 +109,30 @@
"Ding accepts CyNetworkView only.");
final CyNetworkView targetView = (CyNetworkView) view;
-
+
DGraphView dgv = null;
if (presentationContainer instanceof JComponent) {
logger.debug("Start rendering presentation by Ding: "
+ targetView.getSUID());
-
+
dgv = new DGraphView(targetView, dataTableFactory,
rootNetworkFactory, undo,
spacialFactory, dingLexicon,
nodeViewTFs, edgeViewTFs,
emptySpaceTFs, dropNodeViewTFs,
- dropEmptySpaceTFs, tm, eventHelper,
- tableMgr);
-
+ dropEmptySpaceTFs, tm, eventHelper,
tableMgr);
+
logger.info("DGraphView created as a presentation for
view model: "
+ targetView.getSUID());
viewMap.put(targetView, dgv);
if (presentationContainer instanceof JInternalFrame) {
final JInternalFrame inFrame = (JInternalFrame)
presentationContainer;
- JDesktopPane desktopPane =
inFrame.getDesktopPane();
+ //JDesktopPane desktopPane =
inFrame.getDesktopPane();
// TODO - not sure this layered pane bit is
optimal
-
inFrame.setContentPane(dgv.getContainer(inFrame.getLayeredPane()));
- // dgv.addTransferComponent(desktopPane);
+ inFrame.setContentPane(dgv.getContainer(inFrame
+ .getLayeredPane()));
+ // dgv.addTransferComponent(desktopPane);
} else {
final JComponent component = (JComponent)
presentationContainer;
component.setLayout(new BorderLayout());
@@ -150,12 +147,14 @@
registrar.registerAllServices(dgv, new Properties());
final AddDeleteHandler addDeleteHandler = new
AddDeleteHandler(dgv);
registrar.registerAllServices(addDeleteHandler, new
Properties());
- eventHelper.addMicroListener(addDeleteHandler,
AboutToRemoveEdgeViewMicroListener.class, view);
- eventHelper.addMicroListener(addDeleteHandler,
AboutToRemoveNodeViewMicroListener.class, view);
-
+ eventHelper.addMicroListener(addDeleteHandler,
+ AboutToRemoveEdgeViewMicroListener.class, view);
+ eventHelper.addMicroListener(addDeleteHandler,
+ AboutToRemoveNodeViewMicroListener.class, view);
+
// Register engine to manager
this.renderingEngineManager.addRenderingEngine(dgv);
-
+
return dgv;
}
@@ -212,35 +211,40 @@
emptySpaceTFs.put(evtf, props);
}
- public void removeNetworkViewTaskFactory(NetworkViewTaskFactory evtf,
Map props) {
+ public void removeNetworkViewTaskFactory(NetworkViewTaskFactory evtf,
+ Map props) {
if (evtf == null)
return;
emptySpaceTFs.remove(evtf);
}
- public void addDropNetworkViewTaskFactory(DropNetworkViewTaskFactory
evtf, Map props) {
+ public void addDropNetworkViewTaskFactory(DropNetworkViewTaskFactory
evtf,
+ Map props) {
if (evtf == null)
return;
dropEmptySpaceTFs.put(evtf, props);
}
- public void removeDropNetworkViewTaskFactory(DropNetworkViewTaskFactory
evtf, Map props) {
+ public void removeDropNetworkViewTaskFactory(
+ DropNetworkViewTaskFactory evtf, Map props) {
if (evtf == null)
return;
dropEmptySpaceTFs.remove(evtf);
}
- public void addDropNodeViewTaskFactory(DropNodeViewTaskFactory nvtf,
Map props) {
+ public void addDropNodeViewTaskFactory(DropNodeViewTaskFactory nvtf,
+ Map props) {
if (nvtf == null)
return;
dropNodeViewTFs.put(nvtf, props);
}
- public void removeDropNodeViewTaskFactory(DropNodeViewTaskFactory nvtf,
Map props) {
+ public void removeDropNodeViewTaskFactory(DropNodeViewTaskFactory nvtf,
+ Map props) {
if (nvtf == null)
return;
Modified:
core3/ding-presentation-impl/trunk/src/main/java/org/cytoscape/ding/impl/InnerCanvas.java
===================================================================
---
core3/ding-presentation-impl/trunk/src/main/java/org/cytoscape/ding/impl/InnerCanvas.java
2010-12-28 23:44:07 UTC (rev 23272)
+++
core3/ding-presentation-impl/trunk/src/main/java/org/cytoscape/ding/impl/InnerCanvas.java
2010-12-29 00:46:12 UTC (rev 23273)
@@ -198,11 +198,8 @@
}
}
- /**
- * DOCUMENT ME!
- *
- * @param g DOCUMENT ME!
- */
+
+
public void update(Graphics g) {
if (m_grafx == null)
return;
Modified:
core3/ding-presentation-impl/trunk/src/main/resources/META-INF/spring/bundle-context-osgi.xml
===================================================================
---
core3/ding-presentation-impl/trunk/src/main/resources/META-INF/spring/bundle-context-osgi.xml
2010-12-28 23:44:07 UTC (rev 23272)
+++
core3/ding-presentation-impl/trunk/src/main/resources/META-INF/spring/bundle-context-osgi.xml
2010-12-29 00:46:12 UTC (rev 23273)
@@ -6,6 +6,10 @@
default-lazy-init="false">
+ <osgi:reference id="applicationManagerManagerServiceRef"
+ interface="org.cytoscape.session.CyApplicationManager">
+ </osgi:reference>
+
<osgi:reference id="customGraphicsManagerServiceRef"
interface="org.cytoscape.ding.customgraphics.CustomGraphicsManager">
</osgi:reference>
@@ -13,7 +17,7 @@
<osgi:reference id="renderingEngineManagerServiceRef"
interface="org.cytoscape.view.presentation.RenderingEngineManager">
</osgi:reference>
-
+
<osgi:reference id="cyRootNetworkFactoryServiceRef"
interface="org.cytoscape.model.subnetwork.CyRootNetworkFactory">
</osgi:reference>
@@ -36,8 +40,7 @@
interface="org.cytoscape.service.util.CyServiceRegistrar">
</osgi:reference>
- <osgi:reference id="cyTableManagerServiceRef"
- interface="org.cytoscape.model.CyTableManager">
+ <osgi:reference id="cyTableManagerServiceRef"
interface="org.cytoscape.model.CyTableManager">
</osgi:reference>
<osgi:reference id="cyNetworkManagerServiceRef"
@@ -45,15 +48,15 @@
</osgi:reference>
- <osgi:reference id="cyEventHelperServiceRef"
- interface="org.cytoscape.event.CyEventHelper">
+ <osgi:reference id="cyEventHelperServiceRef"
interface="org.cytoscape.event.CyEventHelper">
</osgi:reference>
-
+
<!-- Individual Service -->
<osgi:service id="dingRenderingEngineFactoryService"
ref="dingRenderingEngineFactory">
<osgi:interfaces>
<value>org.cytoscape.view.presentation.RenderingEngineFactory</value>
-
<value>org.cytoscape.view.model.events.UpdateNetworkPresentationEventListener</value>
+
<value>org.cytoscape.view.model.events.UpdateNetworkPresentationEventListener
+ </value>
</osgi:interfaces>
<osgi:service-properties>
<entry key="serviceType" value="presentationFactory" />
@@ -61,10 +64,12 @@
</osgi:service-properties>
</osgi:service>
- <osgi:service id="dingNavigationRenderingEngineFactoryService"
ref="dingNavigationRenderingEngineFactory">
+ <osgi:service id="dingNavigationRenderingEngineFactoryService"
+ ref="dingNavigationRenderingEngineFactory">
<osgi:interfaces>
<value>org.cytoscape.view.presentation.RenderingEngineFactory</value>
-
<value>org.cytoscape.view.model.events.UpdateNetworkPresentationEventListener</value>
+
<value>org.cytoscape.view.model.events.UpdateNetworkPresentationEventListener
+ </value>
</osgi:interfaces>
<osgi:service-properties>
<entry key="serviceType" value="presentationFactory" />
@@ -118,8 +123,10 @@
<osgi:listener bind-method="addDropNetworkViewTaskFactory"
unbind-method="removeDropNetworkViewTaskFactory"
ref="dingRenderingEngineFactory" />
</osgi:set>
-
- <osgi:service id="objectPositionValueEditorService"
ref="objectPositionValueEditor" auto-export="interfaces" />
- <osgi:service id="objectPositionPropertyEditorService"
ref="objectPositionEditor" auto-export="interfaces" />
+ <osgi:service id="objectPositionValueEditorService"
ref="objectPositionValueEditor"
+ auto-export="interfaces" />
+ <osgi:service id="objectPositionPropertyEditorService"
+ ref="objectPositionEditor" auto-export="interfaces" />
+
</beans>
Modified:
core3/ding-presentation-impl/trunk/src/main/resources/META-INF/spring/bundle-context.xml
===================================================================
---
core3/ding-presentation-impl/trunk/src/main/resources/META-INF/spring/bundle-context.xml
2010-12-28 23:44:07 UTC (rev 23272)
+++
core3/ding-presentation-impl/trunk/src/main/resources/META-INF/spring/bundle-context.xml
2010-12-29 00:46:12 UTC (rev 23273)
@@ -17,7 +17,6 @@
http://www.springframework.org/schema/osgi
http://www.springframework.org/schema/osgi/spring-osgi-1.0.xsd"
default-lazy-init="false">
- <import resource="bundle-context-osgi.xml" />
<context:annotation-config />
@@ -49,6 +48,7 @@
<constructor-arg ref="cyServiceRegistrarRef" />
<constructor-arg ref="cyTableManagerServiceRef" />
<constructor-arg ref="renderingEngineManagerServiceRef" />
+ <constructor-arg ref="applicationManagerManagerServiceRef" />
</bean>
<bean id="addEdgeNodeViewTaskFactory"
class="org.cytoscape.ding.impl.AddEdgeNodeViewTaskFactoryImpl">
Modified:
core3/io-impl/trunk/src/main/java/org/cytoscape/io/internal/write/graphics/BitmapWriterFactory.java
===================================================================
---
core3/io-impl/trunk/src/main/java/org/cytoscape/io/internal/write/graphics/BitmapWriterFactory.java
2010-12-28 23:44:07 UTC (rev 23272)
+++
core3/io-impl/trunk/src/main/java/org/cytoscape/io/internal/write/graphics/BitmapWriterFactory.java
2010-12-29 00:46:12 UTC (rev 23273)
@@ -18,7 +18,7 @@
private final CyFileFilter bitmapFilter;
private View<?> view;
- private RenderingEngine re;
+ private RenderingEngine<?> re;
private OutputStream outputStream;
public BitmapWriterFactory(CyFileFilter bitmapFilter) {
Added:
core3/session-api/trunk/src/main/java/org/cytoscape/session/events/SetCurrentRenderingEngineEvent.java
===================================================================
---
core3/session-api/trunk/src/main/java/org/cytoscape/session/events/SetCurrentRenderingEngineEvent.java
(rev 0)
+++
core3/session-api/trunk/src/main/java/org/cytoscape/session/events/SetCurrentRenderingEngineEvent.java
2010-12-29 00:46:12 UTC (rev 23273)
@@ -0,0 +1,29 @@
+package org.cytoscape.session.events;
+
+import org.cytoscape.event.AbstractCyEvent;
+import org.cytoscape.model.CyNetwork;
+import org.cytoscape.session.CyApplicationManager;
+import org.cytoscape.view.presentation.RenderingEngine;
+
+public final class SetCurrentRenderingEngineEvent extends
+ AbstractCyEvent<CyApplicationManager>{
+
+ private final RenderingEngine<CyNetwork> engine;
+
+ /**
+ * Constructor.
+ *
+ * @param source
+ * The application manager firing this event.
+ * @param engine
+ * The rendering engine (presentation) that has been set as
current.
+ */
+ public SetCurrentRenderingEngineEvent(final CyApplicationManager
source, final RenderingEngine<CyNetwork> engine) {
+ super(source, SetCurrentRenderingEngineListener.class);
+ this.engine = engine;
+ }
+
+ public RenderingEngine<CyNetwork> getRenderingEngine() {
+ return this.engine;
+ }
+}
\ No newline at end of file
Added:
core3/session-api/trunk/src/main/java/org/cytoscape/session/events/SetCurrentRenderingEngineListener.java
===================================================================
---
core3/session-api/trunk/src/main/java/org/cytoscape/session/events/SetCurrentRenderingEngineListener.java
(rev 0)
+++
core3/session-api/trunk/src/main/java/org/cytoscape/session/events/SetCurrentRenderingEngineListener.java
2010-12-29 00:46:12 UTC (rev 23273)
@@ -0,0 +1,13 @@
+package org.cytoscape.session.events;
+
+import org.cytoscape.event.CyListener;
+
+public interface SetCurrentRenderingEngineListener extends CyListener {
+ /**
+ * Processes the specified event when fired.
+ *
+ * @param e
+ * The event that the listener is listening for.
+ */
+ public void handleEvent(final SetCurrentRenderingEngineEvent e);
+}
Modified:
core3/session-impl/trunk/src/main/java/org/cytoscape/session/internal/CyApplicationManagerImpl.java
===================================================================
---
core3/session-impl/trunk/src/main/java/org/cytoscape/session/internal/CyApplicationManagerImpl.java
2010-12-28 23:44:07 UTC (rev 23272)
+++
core3/session-impl/trunk/src/main/java/org/cytoscape/session/internal/CyApplicationManagerImpl.java
2010-12-29 00:46:12 UTC (rev 23273)
@@ -49,6 +49,7 @@
import org.cytoscape.session.CyApplicationManager;
import org.cytoscape.session.events.SetCurrentNetworkEvent;
import org.cytoscape.session.events.SetCurrentNetworkViewEvent;
+import org.cytoscape.session.events.SetCurrentRenderingEngineEvent;
import org.cytoscape.session.events.SetSelectedNetworkViewsEvent;
import org.cytoscape.session.events.SetSelectedNetworksEvent;
@@ -270,6 +271,10 @@
public void setCurrentRenderingEngine(RenderingEngine<CyNetwork>
engine) {
- this.currentRenderer = engine;
+ this.currentRenderer = engine;
+
+ cyEventHelper.fireSynchronousEvent(
+ new SetCurrentRenderingEngineEvent(this,
this.currentRenderer));
+
}
}
Modified:
core3/swing-application-impl/trunk/src/main/java/org/cytoscape/internal/view/BirdsEyeViewHandler.java
===================================================================
---
core3/swing-application-impl/trunk/src/main/java/org/cytoscape/internal/view/BirdsEyeViewHandler.java
2010-12-28 23:44:07 UTC (rev 23272)
+++
core3/swing-application-impl/trunk/src/main/java/org/cytoscape/internal/view/BirdsEyeViewHandler.java
2010-12-29 00:46:12 UTC (rev 23273)
@@ -43,8 +43,6 @@
import java.awt.event.ComponentAdapter;
import java.awt.event.ComponentEvent;
import java.awt.event.ComponentListener;
-import java.util.HashMap;
-import java.util.Map;
import javax.swing.JDesktopPane;
import javax.swing.JInternalFrame;
@@ -53,9 +51,8 @@
import org.cytoscape.model.CyNetwork;
import org.cytoscape.session.CyApplicationManager;
import org.cytoscape.session.events.SetCurrentNetworkEvent;
-import org.cytoscape.session.events.SetCurrentNetworkListener;
-import org.cytoscape.session.events.SetCurrentNetworkViewEvent;
-import org.cytoscape.session.events.SetCurrentNetworkViewListener;
+import org.cytoscape.session.events.SetCurrentRenderingEngineEvent;
+import org.cytoscape.session.events.SetCurrentRenderingEngineListener;
import org.cytoscape.view.model.CyNetworkView;
import org.cytoscape.view.model.CyNetworkViewManager;
import org.cytoscape.view.model.events.NetworkViewDestroyedEvent;
@@ -69,23 +66,25 @@
* This class handles the creation of the BirdsEyeView navigation object and
* handles the events which change view seen.
*/
-public class BirdsEyeViewHandler implements SetCurrentNetworkListener,
- SetCurrentNetworkViewListener, NetworkViewDestroyedListener {
+public class BirdsEyeViewHandler implements SetCurrentRenderingEngineListener,
+ NetworkViewDestroyedListener {
- private static final Logger logger = LoggerFactory
- .getLogger(BirdsEyeViewHandler.class);
+ private static final Logger logger =
LoggerFactory.getLogger(BirdsEyeViewHandler.class);
+
+ private static final Dimension DEF_PANEL_SIZE = new Dimension(280, 280);
+ private static final Color DEF_BACKGROUND_COLOR = Color.WHITE;
// BEV is just a special implementation of RenderingEngine.
private final RenderingEngineFactory<CyNetwork> bevFactory;
- private final Map<CyNetworkView, RenderingEngine<CyNetworkView>>
engineMap;
+ private FrameListener frameListener = new FrameListener();
+
+ private final NetworkViewManager networkViewManager;
- FrameListener frameListener = new FrameListener();
- final NetworkViewManager viewmgr;
- final CyApplicationManager appMgr;
- final CyNetworkViewManager netViewMgr;
- final Container bevPanel;
+ private final Container bevPanel;
+
+ private RenderingEngine<CyNetwork> engine;
/**
* Creates a new BirdsEyeViewHandler object.
@@ -94,84 +93,80 @@
* The JDesktopPane of the NetworkViewManager. Can be null.
*/
public BirdsEyeViewHandler(final NetworkViewManager viewmgr,
- final CyApplicationManager appMgr, CyNetworkViewManager
netViewMgr,
- RenderingEngineFactory<CyNetwork> defaultFactory) {
- this.viewmgr = viewmgr;
- this.appMgr = appMgr;
- this.netViewMgr = netViewMgr;
+ final RenderingEngineFactory<CyNetwork> defaultFactory)
{
+
+ this.networkViewManager = viewmgr;
+ this.bevPanel = new JPanel();
+ this.bevPanel.setPreferredSize(DEF_PANEL_SIZE);
+ this.bevPanel.setSize(DEF_PANEL_SIZE);
+ this.bevPanel.setBackground(DEF_BACKGROUND_COLOR);
+
+ this.bevFactory = defaultFactory;
+
final JDesktopPane desktopPane = viewmgr.getDesktopPane();
- bevPanel = new JPanel();
- Dimension panelSize = new Dimension(280, 280);
- bevPanel.setPreferredSize(panelSize);
- bevPanel.setSize(panelSize);
- bevPanel.setBackground(Color.white);
-
- engineMap = new HashMap<CyNetworkView,
RenderingEngine<CyNetworkView>>();
-
- bevFactory = defaultFactory;
desktopPane.addComponentListener(new DesktopListener());
}
- /**
- * Listens for NETWORK_VIEW_FOCUSED, NETWORK_VIEW_FOCUS,
- * NETWORK_VIEW_DESTROYED, and CYTOSCAPE_INITIALIZED events and changes
the
- * network view accordingly.
- *
- * @param e
- * The event triggering this method.
- */
- public void handleEvent(SetCurrentNetworkEvent e) {
- // This is guaranteed not to be null.
- final CyNetwork network = e.getNetwork();
-
- logger.debug("Got SetCurrentNetworkEvent. BEV New Network = "
- + network.getSUID());
- bevPanel.removeAll();
+// /**
+// * Listens for NETWORK_VIEW_FOCUSED, NETWORK_VIEW_FOCUS,
+// * NETWORK_VIEW_DESTROYED, and CYTOSCAPE_INITIALIZED events and changes
the
+// * network view accordingly.
+// *
+// * @param e
+// * The event triggering this method.
+// */
+// public void handleEvent(SetCurrentNetworkEvent e) {
+// // This is guaranteed not to be null.
+// final CyNetwork network = e.getNetwork();
+//
+// logger.debug("################ Got SetCurrentNetworkEvent. BEV
New Network = "
+// + network.getSUID());
+// bevPanel.removeAll();
+//
+// // final CyNetworkView view =
+// // netViewMgr.getNetworkView(network.getSUID());
+// // if(view != null) {
+// // RenderingEngine<CyNetwork> engine =
bevFactory.render(bevPanel,
+// // netViewMgr.getNetworkView(network.getSUID()));
+// // setFocus();
+// // } else {
+// // logger.warn("######### NO View exists for network = "
+// // + network);
+// // }
+// }
-// final CyNetworkView view =
netViewMgr.getNetworkView(network.getSUID());
-// if(view != null) {
-// RenderingEngine<CyNetwork> engine =
bevFactory.render(bevPanel,
-//
netViewMgr.getNetworkView(network.getSUID()));
+// public void handleEvent(SetCurrentNetworkViewEvent e) {
+// final CyNetworkView view = e.getNetworkView();
+//
+// logger.debug("Got SetCurrentNetworkViewEvent. BEV New Network
= "
+// + view.getModel().getSUID());
+//
+// if (view != null) {
+// RenderingEngine<CyNetwork> engine =
bevFactory.getInstance(
+// bevPanel, view);
// setFocus();
// } else {
-// logger.warn("######### NO View exists for network = "
-// + network);
-// }
- }
-
- public void handleEvent(SetCurrentNetworkViewEvent e) {
- final CyNetworkView view = e.getNetworkView();
-
- logger.debug("Got SetCurrentNetworkViewEvent. BEV New Network
= "
- + view.getModel().getSUID());
-
-// if(view != null) {
-// RenderingEngine<CyNetwork> engine =
bevFactory.render(bevPanel,
-// view);
-// setFocus();
-// } else {
// logger.warn("######### NO View exists in the source");
// }
-//
- }
+//
+// }
- public void handleEvent(NetworkViewDestroyedEvent e) {
-// logger.debug("!!!!!!!!!! NetworkViewDestroyedEvent
+++++++++++");
-// // Cleanup the visualization container
-// bevPanel.removeAll();
-// RenderingEngine<CyNetwork> engine = bevFactory.render(bevPanel,
-// appMgr.getCurrentNetworkView());
+
+ @Override public void handleEvent(NetworkViewDestroyedEvent e) {
+ // logger.debug("!!!!!!!!!! NetworkViewDestroyedEvent
+++++++++++");
+ // // Cleanup the visualization container
+ // bevPanel.removeAll();
+ // RenderingEngine<CyNetwork> engine =
bevFactory.render(bevPanel,
+ // appMgr.getCurrentNetworkView());
}
-
-
private void setFocus() {
- JDesktopPane desktopPane = viewmgr.getDesktopPane();
+ final JDesktopPane desktopPane =
networkViewManager.getDesktopPane();
if (desktopPane == null)
return;
- JInternalFrame frame = desktopPane.getSelectedFrame();
+ final JInternalFrame frame = desktopPane.getSelectedFrame();
if (frame == null)
return;
@@ -199,6 +194,8 @@
*/
class FrameListener extends ComponentAdapter {
public void componentMoved(ComponentEvent e) {
+ logger.debug("!!!!! Update called: moved");
+ ((CyNetworkView)engine.getViewModel()).updateView();
bevPanel.repaint();
}
}
@@ -208,7 +205,23 @@
*/
class DesktopListener extends ComponentAdapter {
public void componentResized(ComponentEvent e) {
+ logger.debug("!!!!! Update called: resize");
+ ((CyNetworkView)engine.getViewModel()).updateView();
bevPanel.repaint();
}
}
+
+ @Override
+ public void handleEvent(final SetCurrentRenderingEngineEvent e) {
+ this.engine = e.getRenderingEngine();
+
+ logger.debug("!!!!!!!!!!!Got SetCurrentRenderingEngineEvent.
BEV New Network = "
+ + engine.getViewModel().getSUID());
+
+ bevPanel.removeAll();
+ bevFactory.getInstance(bevPanel, engine.getViewModel());
+ setFocus();
+ bevPanel.repaint();
+
+ }
}
Modified:
core3/swing-application-impl/trunk/src/main/java/org/cytoscape/internal/view/NetworkViewManager.java
===================================================================
---
core3/swing-application-impl/trunk/src/main/java/org/cytoscape/internal/view/NetworkViewManager.java
2010-12-28 23:44:07 UTC (rev 23272)
+++
core3/swing-application-impl/trunk/src/main/java/org/cytoscape/internal/view/NetworkViewManager.java
2010-12-29 00:46:12 UTC (rev 23273)
@@ -216,16 +216,22 @@
}
}
+
/**
- * Fire Events when a Managed Network View gets the Focus.
+ * View switched
*/
public void internalFrameActivated(InternalFrameEvent e) {
- Long network_id = componentMap.get(e.getInternalFrame());
+ final Long network_id = componentMap.get(e.getInternalFrame());
+
if (network_id == null)
return;
+ final RenderingEngine<CyNetwork> currentEngine =
applicationManager.getCurrentRenderingEngine();
applicationManager.setCurrentNetworkView(network_id);
+
+ if(currentEngine.getViewModel().getModel().getSUID() !=
network_id)
+
applicationManager.setCurrentRenderingEngine(presentationMap.get(network_id));
}
/**
Modified:
core3/swing-application-impl/trunk/src/main/resources/META-INF/spring/bundle-context-osgi.xml
===================================================================
---
core3/swing-application-impl/trunk/src/main/resources/META-INF/spring/bundle-context-osgi.xml
2010-12-28 23:44:07 UTC (rev 23272)
+++
core3/swing-application-impl/trunk/src/main/resources/META-INF/spring/bundle-context-osgi.xml
2010-12-29 00:46:12 UTC (rev 23273)
@@ -294,16 +294,7 @@
</osgi:interfaces>
</osgi:service>
- <osgi:service id="birdsEyeViewHandlerService" ref="birdsEyeViewHandler">
- <osgi:interfaces>
-
<value>org.cytoscape.session.events.SetCurrentNetworkViewListener
- </value>
-
<value>org.cytoscape.session.events.SetCurrentNetworkListener
- </value>
-
<value>org.cytoscape.view.model.events.NetworkViewDestroyedListener
- </value>
- </osgi:interfaces>
- </osgi:service>
+ <osgi:service id="birdsEyeViewHandlerService" ref="birdsEyeViewHandler"
auto-export="interfaces" />
<osgi:service id="undoMonitorSetCurrentNetworkViewListenerService"
ref="undoMonitor"
interface="org.cytoscape.session.events.SetCurrentNetworkViewListener" />
Modified:
core3/swing-application-impl/trunk/src/main/resources/META-INF/spring/bundle-context.xml
===================================================================
---
core3/swing-application-impl/trunk/src/main/resources/META-INF/spring/bundle-context.xml
2010-12-28 23:44:07 UTC (rev 23272)
+++
core3/swing-application-impl/trunk/src/main/resources/META-INF/spring/bundle-context.xml
2010-12-29 00:46:12 UTC (rev 23273)
@@ -71,8 +71,6 @@
<bean name="birdsEyeViewHandler"
class="org.cytoscape.internal.view.BirdsEyeViewHandler">
<constructor-arg ref="networkViewManager" />
- <constructor-arg ref="cyApplicationManagerServiceRef" />
- <constructor-arg ref="cyNetworkViewManagerServiceRef" />
<constructor-arg
ref="dingNavigationPresentationFactoryServiceRef" />
</bean>
--
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.