Author: mes
Date: 2010-12-07 17:23:28 -0800 (Tue, 07 Dec 2010)
New Revision: 23128
Added:
core3/editor-impl/trunk/src/main/java/org/cytoscape/editor/internal/CurrentNetworkViewListener.java
core3/editor-impl/trunk/src/main/java/org/cytoscape/editor/internal/EditorPanelSelectedListener.java
Modified:
core3/editor-impl/trunk/pom.xml
core3/editor-impl/trunk/src/main/resources/META-INF/spring/bundle-context-osgi.xml
core3/editor-impl/trunk/src/main/resources/META-INF/spring/bundle-context.xml
Log:
added support for automatically creating empty networks and navigating to the
editor panel
Modified: core3/editor-impl/trunk/pom.xml
===================================================================
--- core3/editor-impl/trunk/pom.xml 2010-12-08 01:22:30 UTC (rev 23127)
+++ core3/editor-impl/trunk/pom.xml 2010-12-08 01:23:28 UTC (rev 23128)
@@ -122,18 +122,18 @@
</dependency>
<dependency>
<groupId>org.cytoscape</groupId>
- <artifactId>core-task-api</artifactId>
+ <artifactId>dnd-api</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.cytoscape</groupId>
- <artifactId>dnd-api</artifactId>
+ <artifactId>swing-application-api</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.cytoscape</groupId>
- <artifactId>swing-application-api</artifactId>
- <version>1.0-SNAPSHOT</version>
+ <artifactId>core-task-api</artifactId>
+ <version>3.0.0-alpha2-SNAPSHOT</version>
</dependency>
</dependencies>
Added:
core3/editor-impl/trunk/src/main/java/org/cytoscape/editor/internal/CurrentNetworkViewListener.java
===================================================================
---
core3/editor-impl/trunk/src/main/java/org/cytoscape/editor/internal/CurrentNetworkViewListener.java
(rev 0)
+++
core3/editor-impl/trunk/src/main/java/org/cytoscape/editor/internal/CurrentNetworkViewListener.java
2010-12-08 01:23:28 UTC (rev 23128)
@@ -0,0 +1,29 @@
+package org.cytoscape.editor.internal;
+
+import org.cytoscape.session.events.SetCurrentNetworkViewListener;
+import org.cytoscape.session.events.SetCurrentNetworkViewEvent;
+import org.cytoscape.application.swing.CySwingApplication;
+import org.cytoscape.application.swing.CytoPanel;
+import org.cytoscape.application.swing.CytoPanelComponent;
+import org.cytoscape.application.swing.CytoPanelName;
+import org.cytoscape.view.model.CyNetworkView;
+
+public class CurrentNetworkViewListener implements
SetCurrentNetworkViewListener {
+
+ private final CySwingApplication app;
+ private final CytoPanelComponent comp;
+
+ public CurrentNetworkViewListener(CySwingApplication app,
CytoPanelComponent comp) {
+ this.app = app;
+ this.comp = comp;
+ }
+
+ public void handleEvent(SetCurrentNetworkViewEvent e) {
+ CyNetworkView view = e.getNetworkView();
+ if ( view.getModel().getNodeCount() == 0 ) {
+ CytoPanel west = app.getCytoPanel(CytoPanelName.WEST);
+ int compIndex =
west.indexOfComponent(comp.getComponent());
+ west.setSelectedIndex( compIndex );
+ }
+ }
+}
Added:
core3/editor-impl/trunk/src/main/java/org/cytoscape/editor/internal/EditorPanelSelectedListener.java
===================================================================
---
core3/editor-impl/trunk/src/main/java/org/cytoscape/editor/internal/EditorPanelSelectedListener.java
(rev 0)
+++
core3/editor-impl/trunk/src/main/java/org/cytoscape/editor/internal/EditorPanelSelectedListener.java
2010-12-08 01:23:28 UTC (rev 23128)
@@ -0,0 +1,42 @@
+package org.cytoscape.editor.internal;
+
+import org.cytoscape.session.events.SetCurrentNetworkViewListener;
+import org.cytoscape.session.events.SetCurrentNetworkViewEvent;
+import org.cytoscape.application.swing.CySwingApplication;
+import org.cytoscape.application.swing.CytoPanel;
+import org.cytoscape.application.swing.CytoPanelComponent;
+import org.cytoscape.application.swing.CytoPanelName;
+import
org.cytoscape.application.swing.events.CytoPanelComponentSelectedListener;
+import org.cytoscape.application.swing.events.CytoPanelComponentSelectedEvent;
+import org.cytoscape.view.model.CyNetworkView;
+import org.cytoscape.model.CyNetworkManager;
+import org.cytoscape.model.CyNetworkFactory;
+import org.cytoscape.task.creation.NewEmptyNetworkViewFactory;
+
+public class EditorPanelSelectedListener implements
CytoPanelComponentSelectedListener {
+
+ private final CySwingApplication app;
+ private final CytoPanelComponent comp;
+ private final CyNetworkManager netMgr;
+ private final NewEmptyNetworkViewFactory viewFactory;
+
+ public EditorPanelSelectedListener(CySwingApplication app,
CytoPanelComponent comp, CyNetworkManager netMgr, NewEmptyNetworkViewFactory
viewFactory) {
+ this.app = app;
+ this.comp = comp;
+ this.netMgr = netMgr;
+ this.viewFactory = viewFactory;
+ }
+
+ public void handleEvent(CytoPanelComponentSelectedEvent e) {
+ CytoPanel west = app.getCytoPanel(CytoPanelName.WEST);
+ if ( west != e.getCytoPanel() )
+ return;
+
+ int compIndex = west.indexOfComponent(comp.getComponent());
+ if ( compIndex == e.getSelectedIndex() ) {
+ if ( netMgr.getNetworkSet().size() == 0 ) {
+ CyNetworkView view =
viewFactory.createNewEmptyNetworkView();
+ }
+ }
+ }
+}
Modified:
core3/editor-impl/trunk/src/main/resources/META-INF/spring/bundle-context-osgi.xml
===================================================================
---
core3/editor-impl/trunk/src/main/resources/META-INF/spring/bundle-context-osgi.xml
2010-12-08 01:22:30 UTC (rev 23127)
+++
core3/editor-impl/trunk/src/main/resources/META-INF/spring/bundle-context-osgi.xml
2010-12-08 01:23:28 UTC (rev 23128)
@@ -11,6 +11,9 @@
<osgi:reference id="cyNetworkManagerServiceRef"
interface="org.cytoscape.model.CyNetworkManager"/>
+ <osgi:reference id="newEmptyNetworkViewFactoryServiceRef"
+
interface="org.cytoscape.task.creation.NewEmptyNetworkViewFactory"/>
+
<osgi:service id="editorCytoPanelComponentService"
ref="editorCytoPanelComponent"
interface="org.cytoscape.application.swing.CytoPanelComponent"/>
@@ -38,4 +41,12 @@
<entry key="preferredAction" value="Network" />
</osgi:service-properties>
</osgi:service>
+
+ <osgi:service id="currentNetworkViewListenerService"
ref="currentNetworkViewListener"
+
interface="org.cytoscape.session.events.SetCurrentNetworkViewListener">
+ </osgi:service>
+
+ <osgi:service id="editorPanelSelectedListenerService"
ref="editorPanelSelectedListener"
+
interface="org.cytoscape.application.swing.events.CytoPanelComponentSelectedListener">
+ </osgi:service>
</beans>
Modified:
core3/editor-impl/trunk/src/main/resources/META-INF/spring/bundle-context.xml
===================================================================
---
core3/editor-impl/trunk/src/main/resources/META-INF/spring/bundle-context.xml
2010-12-08 01:22:30 UTC (rev 23127)
+++
core3/editor-impl/trunk/src/main/resources/META-INF/spring/bundle-context.xml
2010-12-08 01:23:28 UTC (rev 23128)
@@ -27,4 +27,18 @@
<constructor-arg ref="cySwingApplicationServiceRef" />
</bean>
+ <bean id="currentNetworkViewListener"
+
class="org.cytoscape.editor.internal.CurrentNetworkViewListener">
+ <constructor-arg ref="cySwingApplicationServiceRef" />
+ <constructor-arg ref="editorCytoPanelComponent" />
+ </bean>
+
+ <bean id="editorPanelSelectedListener"
+
class="org.cytoscape.editor.internal.EditorPanelSelectedListener">
+ <constructor-arg ref="cySwingApplicationServiceRef" />
+ <constructor-arg ref="editorCytoPanelComponent" />
+ <constructor-arg ref="cyNetworkManagerServiceRef" />
+ <constructor-arg ref="newEmptyNetworkViewFactoryServiceRef" />
+ </bean>
+
</beans>
--
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.