Author: ruschein
Date: 2010-11-10 16:14:33 -0800 (Wed, 10 Nov 2010)
New Revision: 22819
Modified:
core3/model-impl/trunk/src/main/java/org/cytoscape/model/internal/ArrayGraph.java
core3/model-impl/trunk/src/main/java/org/cytoscape/model/internal/CyNodeImpl.java
Log:
Implemented nested network related events.
Modified:
core3/model-impl/trunk/src/main/java/org/cytoscape/model/internal/ArrayGraph.java
===================================================================
---
core3/model-impl/trunk/src/main/java/org/cytoscape/model/internal/ArrayGraph.java
2010-11-11 00:05:25 UTC (rev 22818)
+++
core3/model-impl/trunk/src/main/java/org/cytoscape/model/internal/ArrayGraph.java
2010-11-11 00:14:33 UTC (rev 22819)
@@ -357,7 +357,7 @@
synchronized (this) {
final int index = nodePointers.size();
- n = new NodePointer(index, new CyNodeImpl(index,
nodeAttrMgr));
+ n = new NodePointer(index, new CyNodeImpl(index,
nodeAttrMgr, eventHelper));
nodePointers.add(n);
nodeCount++;
// In ArrayGraph we only ever add the node to the root.
Modified:
core3/model-impl/trunk/src/main/java/org/cytoscape/model/internal/CyNodeImpl.java
===================================================================
---
core3/model-impl/trunk/src/main/java/org/cytoscape/model/internal/CyNodeImpl.java
2010-11-11 00:05:25 UTC (rev 22818)
+++
core3/model-impl/trunk/src/main/java/org/cytoscape/model/internal/CyNodeImpl.java
2010-11-11 00:14:33 UTC (rev 22819)
@@ -1,14 +1,6 @@
-
/*
- Copyright (c) 2008, The Cytoscape Consortium (www.cytoscape.org)
+ Copyright (c) 2008, 2010, The Cytoscape Consortium (www.cytoscape.org)
- The Cytoscape Consortium is:
- - Institute for Systems Biology
- - University of California San Diego
- - Memorial Sloan-Kettering Cancer Center
- - Institut Pasteur
- - Agilent Technologies
-
This library is free software; you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License as published
by the Free Software Foundation; either version 2.1 of the License, or
@@ -33,13 +25,16 @@
along with this library; if not, write to the Free Software Foundation,
Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
*/
-
package org.cytoscape.model.internal;
+
+import org.cytoscape.event.CyEventHelper;
import org.cytoscape.model.CyTable;
import org.cytoscape.model.CyEdge;
import org.cytoscape.model.CyNetwork;
import org.cytoscape.model.CyNode;
+import org.cytoscape.model.events.SetNestedNetworkEvent;
+import org.cytoscape.model.events.UnsetNestedNetworkEvent;
import java.util.List;
import java.util.Map;
@@ -47,13 +42,14 @@
class CyNodeImpl extends CyTableEntryImpl implements CyNode {
final private int index;
-
private CyNetwork nestedNet;
+ final private CyEventHelper eventHelper;
- CyNodeImpl(int ind, Map<String, CyTable> attrMgr) {
+ CyNodeImpl(int ind, Map<String, CyTable> attrMgr, final CyEventHelper
eventHelper) {
super(attrMgr);
index = ind;
nestedNet = null;
+ this.eventHelper = eventHelper;
}
/**
@@ -70,7 +66,7 @@
*
* @return DOCUMENT ME!
*/
- @Override
+ @Override
public String toString() {
return "Node suid: " + getSUID() + " index: " + index;
}
@@ -80,6 +76,13 @@
}
public synchronized void setNestedNetwork(CyNetwork n) {
+ if (n == nestedNet)
+ return;
+
+ if (nestedNet != null)
+ eventHelper.fireSynchronousEvent(new
UnsetNestedNetworkEvent(this, nestedNet));
+ if (n != null)
+ eventHelper.fireSynchronousEvent(new
SetNestedNetworkEvent(this, n));
nestedNet = n;
}
--
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.