Author: mes
Date: 2010-08-18 14:25:11 -0700 (Wed, 18 Aug 2010)
New Revision: 21454
Modified:
cytoscape3/trunk/application/pom.xml
cytoscape3/trunk/application/src/main/java/cytoscape/internal/select/SelectEdgeViewUpdater.java
cytoscape3/trunk/application/src/main/java/cytoscape/internal/select/SelectNodeViewUpdater.java
cytoscape3/trunk/application/src/main/java/cytoscape/internal/select/SelectRegisterListener.java
cytoscape3/trunk/application/src/main/java/cytoscape/internal/view/NetworkPanel.java
cytoscape3/trunk/application/src/main/java/cytoscape/internal/view/NetworkViewManager.java
cytoscape3/trunk/application/src/main/java/cytoscape/view/ViewUpdater.java
cytoscape3/trunk/application/src/main/resources/META-INF/spring/bundle-context-osgi.xml
cytoscape3/trunk/application/src/main/resources/META-INF/spring/bundle-context.xml
Log:
updated to use RowSetMicroListener instead of CyRowListener
Modified: cytoscape3/trunk/application/pom.xml
===================================================================
--- cytoscape3/trunk/application/pom.xml 2010-08-18 17:41:32 UTC (rev
21453)
+++ cytoscape3/trunk/application/pom.xml 2010-08-18 21:25:11 UTC (rev
21454)
@@ -101,6 +101,11 @@
<artifactId>swing-util</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
+ <dependency>
+ <groupId>org.cytoscape</groupId>
+ <artifactId>service-util</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
</dependencies>
<build>
Modified:
cytoscape3/trunk/application/src/main/java/cytoscape/internal/select/SelectEdgeViewUpdater.java
===================================================================
---
cytoscape3/trunk/application/src/main/java/cytoscape/internal/select/SelectEdgeViewUpdater.java
2010-08-18 17:41:32 UTC (rev 21453)
+++
cytoscape3/trunk/application/src/main/java/cytoscape/internal/select/SelectEdgeViewUpdater.java
2010-08-18 21:25:11 UTC (rev 21454)
@@ -46,6 +46,6 @@
public class SelectEdgeViewUpdater extends ViewUpdater<CyEdge,Boolean> {
public SelectEdgeViewUpdater(View<CyEdge> ev) {
- super(ev, EDGE_SELECTED, "selected");
+ super(ev, EDGE_SELECTED, ev.getModel().attrs(), "selected");
}
}
Modified:
cytoscape3/trunk/application/src/main/java/cytoscape/internal/select/SelectNodeViewUpdater.java
===================================================================
---
cytoscape3/trunk/application/src/main/java/cytoscape/internal/select/SelectNodeViewUpdater.java
2010-08-18 17:41:32 UTC (rev 21453)
+++
cytoscape3/trunk/application/src/main/java/cytoscape/internal/select/SelectNodeViewUpdater.java
2010-08-18 21:25:11 UTC (rev 21454)
@@ -46,6 +46,6 @@
public class SelectNodeViewUpdater extends ViewUpdater<CyNode,Boolean> {
public SelectNodeViewUpdater(View<CyNode> nv) {
- super(nv, NODE_SELECTED, "selected");
+ super(nv, NODE_SELECTED, nv.getModel().attrs(), "selected");
}
}
Modified:
cytoscape3/trunk/application/src/main/java/cytoscape/internal/select/SelectRegisterListener.java
===================================================================
---
cytoscape3/trunk/application/src/main/java/cytoscape/internal/select/SelectRegisterListener.java
2010-08-18 17:41:32 UTC (rev 21453)
+++
cytoscape3/trunk/application/src/main/java/cytoscape/internal/select/SelectRegisterListener.java
2010-08-18 21:25:11 UTC (rev 21454)
@@ -4,20 +4,31 @@
import org.cytoscape.session.events.NetworkViewAddedListener;
import org.cytoscape.session.events.NetworkViewAddedEvent;
+import org.cytoscape.model.events.RowSetMicroListener;
import org.cytoscape.model.CyNode;
import org.cytoscape.model.CyEdge;
import org.cytoscape.view.model.View;
import org.cytoscape.view.model.CyNetworkView;
+import org.cytoscape.service.util.CyServiceRegistrar;
+
+import java.util.Properties;
+
public class SelectRegisterListener implements NetworkViewAddedListener {
+ private CyServiceRegistrar registrar;
+
+ public SelectRegisterListener(CyServiceRegistrar registrar) {
+ this.registrar = registrar;
+ }
+
public void handleEvent(NetworkViewAddedEvent e) {
CyNetworkView view = e.getNetworkView();
for ( View<CyNode> nv : view.getNodeViews() )
- nv.getModel().attrs().addRowListener( new
SelectNodeViewUpdater(nv) );
+ registrar.registerService( new
SelectNodeViewUpdater(nv), RowSetMicroListener.class, new Properties() );
for ( View<CyEdge> ev : view.getEdgeViews() )
- ev.getModel().attrs().addRowListener( new
SelectEdgeViewUpdater(ev) );
+ registrar.registerService( new
SelectEdgeViewUpdater(ev), RowSetMicroListener.class, new Properties() );
}
}
Modified:
cytoscape3/trunk/application/src/main/java/cytoscape/internal/view/NetworkPanel.java
===================================================================
---
cytoscape3/trunk/application/src/main/java/cytoscape/internal/view/NetworkPanel.java
2010-08-18 17:41:32 UTC (rev 21453)
+++
cytoscape3/trunk/application/src/main/java/cytoscape/internal/view/NetworkPanel.java
2010-08-18 21:25:11 UTC (rev 21454)
@@ -48,6 +48,7 @@
import java.util.List;
import java.util.Map;
import java.util.HashMap;
+import java.util.Properties;
import javax.swing.Action;
import javax.swing.InputMap;
@@ -69,7 +70,7 @@
import org.cytoscape.model.CyDataTableUtil;
import org.cytoscape.model.CyNetwork;
-import org.cytoscape.model.CyRowListener;
+import org.cytoscape.model.events.RowSetMicroListener;
import org.cytoscape.model.events.SelectedEdgesEvent;
import org.cytoscape.model.events.SelectedEdgesListener;
import org.cytoscape.model.events.SelectedNodesEvent;
@@ -103,6 +104,7 @@
import org.cytoscape.util.swing.AbstractTreeTableModel;
import org.cytoscape.util.swing.JTreeTable;
import org.cytoscape.util.swing.TreeTableModel;
+import org.cytoscape.service.util.CyServiceRegistrar;
import cytoscape.view.CyAction;
import cytoscape.internal.task.NetworkViewTaskFactoryTunableAction;
@@ -133,7 +135,8 @@
private Map<TaskFactory,JMenuItem> popupMap;
private Map<TaskFactory,CyAction> popupActions;
private final TunableInterceptor tunableInterceptor;
- private Map<CyNetwork,CyRowListener> nameListeners;
+ private CyServiceRegistrar registrar;
+ private Map<CyNetwork, RowSetMicroListener> nameListeners;
/**
@@ -143,11 +146,13 @@
*/
public NetworkPanel( final CyNetworkManager netmgr, final
BirdsEyeViewHandler bird,
final TaskManager taskManager,
- final TunableInterceptor tunableInterceptor) {
+ final TunableInterceptor tunableInterceptor,
+ final CyServiceRegistrar registrar) {
super();
this.netmgr = netmgr;
this.taskManager = taskManager;
this.tunableInterceptor = tunableInterceptor;
+ this.registrar = registrar;
root = new NetworkTreeNode("Network Root", 0L);
treeTableModel = new NetworkTreeTableModel(root);
@@ -155,7 +160,7 @@
initialize();
setNavigator(bird.getBirdsEyeView());
currentNetId = null;
- nameListeners = new HashMap<CyNetwork,CyRowListener>();
+ nameListeners = new HashMap<CyNetwork,RowSetMicroListener>();
/*
* Remove CTR-A for enabling select all function in the main
window.
@@ -347,14 +352,22 @@
System.out.println("NetworkPanel: network about to be destroyed
"
+ nde.getNetwork().getSUID());
removeNetwork(nde.getNetwork().getSUID());
- nameListeners.remove(nde.getNetwork());
+ RowSetMicroListener rsml =
nameListeners.remove(nde.getNetwork());
+ if ( rsml != null )
+ registrar.unregisterService( rsml,
RowSetMicroListener.class );
}
public void handleEvent(NetworkAddedEvent e) {
System.out.println("NetworkPanel: network added "
+ e.getNetwork().getSUID());
addNetwork(e.getNetwork().getSUID(), -1l);
- nameListeners.put(e.getNetwork(),new
NetworkNameListener(e.getNetwork()));
+ RowSetMicroListener rsml = new
AbstractNetworkNameListener(e.getNetwork()) {
+ public void updateNetworkName(CyNetwork net, String
name) {
+ updateTitle(net,name);
+ }
+ };
+ registrar.registerService( rsml, RowSetMicroListener.class, new
Properties() );
+ nameListeners.put(e.getNetwork(),rsml);
}
public void handleEvent(SetCurrentNetworkViewEvent e) {
@@ -726,17 +739,4 @@
}
}
}
-
- private class NetworkNameListener implements CyRowListener {
- private CyNetwork net;
- public NetworkNameListener(CyNetwork net) {
- this.net = net;
- net.attrs().addRowListener(this);
- }
- public void rowSet(String col, Object value) {
- if ( "name".equals(col) ) {
- updateTitle(net,(String)value);
- }
- }
- }
}
Modified:
cytoscape3/trunk/application/src/main/java/cytoscape/internal/view/NetworkViewManager.java
===================================================================
---
cytoscape3/trunk/application/src/main/java/cytoscape/internal/view/NetworkViewManager.java
2010-08-18 17:41:32 UTC (rev 21453)
+++
cytoscape3/trunk/application/src/main/java/cytoscape/internal/view/NetworkViewManager.java
2010-08-18 21:25:11 UTC (rev 21454)
@@ -50,7 +50,7 @@
import javax.swing.event.InternalFrameListener;
import org.cytoscape.model.CyNetwork;
-import org.cytoscape.model.CyRowListener;
+import org.cytoscape.model.events.RowSetMicroListener;
import org.cytoscape.session.CyNetworkManager;
import org.cytoscape.session.events.NetworkViewAboutToBeDestroyedEvent;
import org.cytoscape.session.events.NetworkViewAboutToBeDestroyedListener;
@@ -64,6 +64,8 @@
import org.cytoscape.view.presentation.RenderingEngine;
import org.cytoscape.view.presentation.RenderingEngineFactory;
+import org.cytoscape.service.util.CyServiceRegistrar;
+
import cytoscape.view.CyHelpBroker;
/**
@@ -102,7 +104,8 @@
//TODO: for now, use this as default. But in the future, we should
provide UI to select presentation.
private static final String DEFAULT_PRESENTATION = "ding";
- private Map<CyNetwork,CyRowListener> nameListeners;
+ private Map<CyNetwork,RowSetMicroListener> nameListeners;
+ private CyServiceRegistrar registrar;
/**
@@ -112,11 +115,12 @@
* DOCUMENT ME!
*/
public NetworkViewManager(CyNetworkManager netmgr, Properties props,
- CyHelpBroker help) {
+ CyHelpBroker help, CyServiceRegistrar registrar) {
this.factories = new HashMap<String,
RenderingEngineFactory<CyNetwork>>();
this.netmgr = netmgr;
this.props = props;
+ this.registrar = registrar;
desktopPane = new JDesktopPane();
// add Help hooks
@@ -128,7 +132,7 @@
componentMap = new HashMap<JInternalFrame, Long>();
currentViewId = null;
- nameListeners = new HashMap<CyNetwork,CyRowListener>();
+ nameListeners = new HashMap<CyNetwork,RowSetMicroListener>();
}
@@ -351,7 +355,9 @@
}
networkViewMap.remove(view.getModel().getSUID());
- nameListeners.remove(view.getModel());
+ RowSetMicroListener rsml =
nameListeners.remove(view.getModel());
+ if ( rsml != null )
+ registrar.unregisterService(rsml,
RowSetMicroListener.class);
}
/**
@@ -431,19 +437,13 @@
updateNetworkTitle( view.getModel() );
- nameListeners.put(view.getModel(), new
NetworkNameListener(view.getModel()) );
+ RowSetMicroListener rsml = new AbstractNetworkNameListener(
view.getModel() ) {
+ public void updateNetworkName(CyNetwork net, String
name) {
+ updateNetworkTitle(net);
+ }
+ };
+
+ registrar.registerService( rsml, RowSetMicroListener.class, new
Properties() );
+ nameListeners.put(view.getModel(), rsml );
}
-
- private class NetworkNameListener implements CyRowListener {
- private CyNetwork net;
- public NetworkNameListener(CyNetwork net) {
- this.net = net;
- net.attrs().addRowListener(this);
- }
- public void rowSet(String col, Object value) {
- if ( "name".equals(col) ) {
- updateNetworkTitle(net);
- }
- }
- }
}
Modified:
cytoscape3/trunk/application/src/main/java/cytoscape/view/ViewUpdater.java
===================================================================
--- cytoscape3/trunk/application/src/main/java/cytoscape/view/ViewUpdater.java
2010-08-18 17:41:32 UTC (rev 21453)
+++ cytoscape3/trunk/application/src/main/java/cytoscape/view/ViewUpdater.java
2010-08-18 21:25:11 UTC (rev 21454)
@@ -37,27 +37,32 @@
import org.cytoscape.view.model.VisualProperty;
import org.cytoscape.view.model.View;
-import org.cytoscape.model.CyRowListener;
+import org.cytoscape.model.CyRow;
+import org.cytoscape.model.events.RowSetMicroListener;
-public class ViewUpdater<T,S> implements CyRowListener {
+public class ViewUpdater<T,S> implements RowSetMicroListener {
- protected View<T> view;
- protected VisualProperty<S> vp;
- protected String colName;
+ protected final CyRow row;
+ protected final View<T> view;
+ protected final VisualProperty<S> vp;
+ protected final String columnName;
- public ViewUpdater(View<T> view,VisualProperty<S> vp, String colName) {
+ public ViewUpdater(View<T> view, VisualProperty<S> vp, CyRow row,
String columnName) {
this.view = view;
this.vp = vp;
- this.colName = colName;
+ this.row = row;
+ this.columnName = columnName;
}
-// @SuppressWarning("unchecked")
- public void rowSet(String columnName, Object o) {
- if ( columnName == null || !columnName.equals(colName) )
+ public Object getEventSource() {
+ return row.getDataTable();
+ }
+
+ public void handleRowSet(CyRow row, String columnName, Object value) {
+ if ( row == null || row != this.row ||
+ columnName == null || !columnName.equals(this.columnName) )
return;
-// if ( o instanceof vp.getType() ) {
- view.setVisualProperty(vp, (S)o);
-// }
+ view.setVisualProperty(vp, (S)value);
}
}
Modified:
cytoscape3/trunk/application/src/main/resources/META-INF/spring/bundle-context-osgi.xml
===================================================================
---
cytoscape3/trunk/application/src/main/resources/META-INF/spring/bundle-context-osgi.xml
2010-08-18 17:41:32 UTC (rev 21453)
+++
cytoscape3/trunk/application/src/main/resources/META-INF/spring/bundle-context-osgi.xml
2010-08-18 21:25:11 UTC (rev 21454)
@@ -17,7 +17,10 @@
<osgi:reference id="taskManagerServiceRef"
interface="org.cytoscape.work.TaskManager" />
+ <osgi:reference id="cyServiceRegistrarServiceRef"
+ interface="org.cytoscape.service.util.CyServiceRegistrar" />
+
<!-- Rendering Engine factory for main network views -->
<osgi:reference id="dingPresentationFactoryServiceRef"
interface="org.cytoscape.view.presentation.RenderingEngineFactory"
Modified:
cytoscape3/trunk/application/src/main/resources/META-INF/spring/bundle-context.xml
===================================================================
---
cytoscape3/trunk/application/src/main/resources/META-INF/spring/bundle-context.xml
2010-08-18 17:41:32 UTC (rev 21453)
+++
cytoscape3/trunk/application/src/main/resources/META-INF/spring/bundle-context.xml
2010-08-18 21:25:11 UTC (rev 21454)
@@ -79,6 +79,7 @@
<constructor-arg ref="cyNetworkManagerServiceRef" />
<constructor-arg ref="cytoscapeProperties" />
<constructor-arg ref="cyHelpBroker" />
+ <constructor-arg ref="cyServiceRegistrarServiceRef" />
</bean>
<bean name="birdsEyeViewHandler"
class="cytoscape.internal.view.BirdsEyeViewHandler">
@@ -92,6 +93,7 @@
<constructor-arg ref="birdsEyeViewHandler" />
<constructor-arg ref="taskManagerServiceRef" />
<constructor-arg ref="tunableInterceptorServiceRef" />
+ <constructor-arg ref="cyServiceRegistrarServiceRef" />
</bean>
@@ -237,7 +239,9 @@
<constructor-arg ref="cytoscapeProperties" />
</bean>
- <bean id="selectRegisterListener"
class="cytoscape.internal.select.SelectRegisterListener"/>
+ <bean id="selectRegisterListener"
class="cytoscape.internal.select.SelectRegisterListener">
+ <constructor-arg ref="cyServiceRegistrarServiceRef" />
+ </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.