Author: mes
Date: 2011-12-05 14:15:26 -0800 (Mon, 05 Dec 2011)
New Revision: 27699
Modified:
core3/api/trunk/application-api/src/main/java/org/cytoscape/application/CyApplicationManager.java
core3/impl/trunk/application-impl/src/main/java/org/cytoscape/application/internal/CyApplicationManagerImpl.java
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/creation/AbstractNetworkFromSelectionTask.java
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/setcurrent/SetCurrentNetworkTask.java
core3/impl/trunk/core-task-impl/src/test/java/org/cytoscape/task/internal/setcurren/SetCurrentNetworkTaskTest.java
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/util/NetworkUtil.java
core3/impl/trunk/swing-application-impl/src/main/java/org/cytoscape/internal/view/NetworkPanel.java
core3/impl/trunk/swing-application-impl/src/main/java/org/cytoscape/internal/view/NetworkViewManager.java
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/DefaultTableBrowser.java
Log:
refactored CyApplication to work with CyNetworks and CyNetworkViews instead of
suids
Modified:
core3/api/trunk/application-api/src/main/java/org/cytoscape/application/CyApplicationManager.java
===================================================================
---
core3/api/trunk/application-api/src/main/java/org/cytoscape/application/CyApplicationManager.java
2011-12-05 22:14:54 UTC (rev 27698)
+++
core3/api/trunk/application-api/src/main/java/org/cytoscape/application/CyApplicationManager.java
2011-12-05 22:15:26 UTC (rev 27699)
@@ -52,10 +52,10 @@
public CyNetwork getCurrentNetwork();
/**
- * Sets the current network to the one with the provided network SUID.
- * @param network_id must be the SUID of a network
+ * Sets the current network to the specified network.
+ * @param net The network that will become the current network.
*/
- public void setCurrentNetwork(final long network_id);
+ public void setCurrentNetwork(final CyNetwork net);
/**
* Returns the current network view.
@@ -65,11 +65,10 @@
public CyNetworkView getCurrentNetworkView();
/**
- * Sets the current network view based on the specified ID.
- * @param view_id The <i>network</i> SUID of the network view to
- * be made current.
+ * Sets the current network view to the specified network view.
+ * @param netView The network view to become the current network view.
*/
- public void setCurrentNetworkView(final long view_id);
+ public void setCurrentNetworkView(final CyNetworkView netView);
/**
* Returns the list of selected networks.
@@ -84,18 +83,16 @@
public List<CyNetworkView> getSelectedNetworkViews();
/**
- * Sets the network views associated with the specified network
- * IDs as selected.
- * @param modelIDs The <i>model</i> SUIDs of the networks that have
- * been selected.
+ * Sets the specified network views as selected.
+ * @param views The list of network views to be selected.
*/
- public void setSelectedNetworkViews(final List<Long> modelIDs);
+ public void setSelectedNetworkViews(final List<CyNetworkView> views);
/**
- * Sets the networks associated with the specified IDs as selected.
- * @param ids The SUIDs of the networks that have been selected.
+ * Sets the networks specified as selected.
+ * @param nets The networks to be selected.
*/
- public void setSelectedNetworks(final List<Long> ids);
+ public void setSelectedNetworks(final List<CyNetwork> nets);
/**
* Returns the rendering engine associated with the current network
view.
Modified:
core3/impl/trunk/application-impl/src/main/java/org/cytoscape/application/internal/CyApplicationManagerImpl.java
===================================================================
---
core3/impl/trunk/application-impl/src/main/java/org/cytoscape/application/internal/CyApplicationManagerImpl.java
2011-12-05 22:14:54 UTC (rev 27698)
+++
core3/impl/trunk/application-impl/src/main/java/org/cytoscape/application/internal/CyApplicationManagerImpl.java
2011-12-05 22:15:26 UTC (rev 27699)
@@ -29,268 +29,264 @@
*/
package org.cytoscape.application.internal;
-import java.util.ArrayList;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Set;
-
import org.cytoscape.application.CyApplicationManager;
import org.cytoscape.application.events.SetCurrentNetworkEvent;
import org.cytoscape.application.events.SetCurrentNetworkViewEvent;
import org.cytoscape.application.events.SetCurrentRenderingEngineEvent;
import org.cytoscape.application.events.SetSelectedNetworkViewsEvent;
import org.cytoscape.application.events.SetSelectedNetworksEvent;
+
import org.cytoscape.event.CyEventHelper;
+
import org.cytoscape.model.CyNetwork;
import org.cytoscape.model.CyNetworkManager;
import org.cytoscape.model.CyTable;
import org.cytoscape.model.events.NetworkAboutToBeDestroyedEvent;
import org.cytoscape.model.events.NetworkAboutToBeDestroyedListener;
+
import org.cytoscape.view.model.CyNetworkView;
import org.cytoscape.view.model.CyNetworkViewManager;
import org.cytoscape.view.model.events.NetworkViewAboutToBeDestroyedEvent;
import org.cytoscape.view.model.events.NetworkViewAboutToBeDestroyedListener;
import org.cytoscape.view.presentation.RenderingEngine;
+
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import java.util.ArrayList;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Set;
+
+
/**
* An implementation of CyApplicationManager.
*/
-public class CyApplicationManagerImpl implements CyApplicationManager,
NetworkAboutToBeDestroyedListener,
- NetworkViewAboutToBeDestroyedListener {
-
- private static final Logger logger =
LoggerFactory.getLogger(CyApplicationManagerImpl.class);
+public class CyApplicationManagerImpl implements CyApplicationManager,
+
NetworkAboutToBeDestroyedListener,
+
NetworkViewAboutToBeDestroyedListener {
+ private static final Logger logger =
LoggerFactory.getLogger(CyApplicationManagerImpl.class);
+ private final CyEventHelper cyEventHelper;
+ private final CyNetworkManager networkManager;
+ private final CyNetworkViewManager networkViewManager;
+ private final List<CyNetworkView> selectedNetworkViews;
+ private final List<CyNetwork> selectedNetworks;
- private final CyEventHelper cyEventHelper;
- private final CyNetworkManager networkManager;
- private final CyNetworkViewManager networkViewManager;
+ // Trackers for current network object
+ private CyNetwork currentNetwork;
+ private CyNetworkView currentNetworkView;
+ private RenderingEngine<CyNetwork> currentRenderer;
+ private CyTable currentTable;
- private final List<CyNetworkView> selectedNetworkViews;
- private final List<CyNetwork> selectedNetworks;
+ public CyApplicationManagerImpl(final CyEventHelper cyEventHelper,
+ final CyNetworkManager networkManager,
+ final CyNetworkViewManager
networkViewManager) {
+ this.cyEventHelper = cyEventHelper;
+ this.networkManager = networkManager;
+ this.networkViewManager = networkViewManager;
- // Trackers for current network object
- private CyNetwork currentNetwork;
- private CyNetworkView currentNetworkView;
- private RenderingEngine<CyNetwork> currentRenderer;
+ selectedNetworkViews = new LinkedList<CyNetworkView>();
+ selectedNetworks = new LinkedList<CyNetwork>();
- private CyTable currentTable;
+ currentNetwork = null;
+ currentNetworkView = null;
+ this.currentRenderer = null;
+ }
- /**
- *
- * @param cyEventHelper
- */
- public CyApplicationManagerImpl(final CyEventHelper cyEventHelper, final
CyNetworkManager networkManager,
- final CyNetworkViewManager networkViewManager) {
- this.cyEventHelper = cyEventHelper;
- this.networkManager = networkManager;
- this.networkViewManager = networkViewManager;
+ public void handleEvent(final NetworkAboutToBeDestroyedEvent event) {
+ final CyNetwork toBeDestroyed = event.getNetwork();
+ boolean changed = false;
- selectedNetworkViews = new LinkedList<CyNetworkView>();
- selectedNetworks = new LinkedList<CyNetwork>();
+ synchronized (this) {
+ if (toBeDestroyed == currentNetwork) {
+ changed = true;
+ currentNetwork = null;
+ currentNetworkView = null;
- currentNetwork = null;
- currentNetworkView = null;
- this.currentRenderer = null;
- }
+ final Set<CyNetworkView> networkViews =
networkViewManager.getNetworkViewSet();
- public void handleEvent(final NetworkAboutToBeDestroyedEvent event) {
- final CyNetwork toBeDestroyed = event.getNetwork();
- boolean changed = false;
- synchronized (this) {
- if (toBeDestroyed == currentNetwork) {
- changed = true;
- currentNetwork = null;
- currentNetworkView = null;
+ for (final CyNetworkView view : networkViews) {
+ if (view.getModel() != toBeDestroyed) {
+ currentNetworkView = view;
+ currentNetwork =
view.getModel();
- final Set<CyNetworkView> networkViews =
networkViewManager.getNetworkViewSet();
- for (final CyNetworkView view : networkViews) {
- if (view.getModel() != toBeDestroyed) {
- currentNetworkView = view;
- currentNetwork = view.getModel();
- break;
- }
- }
+ break;
+ }
+ }
- if (currentNetwork == null) {
- final Set<CyNetwork> networks =
networkManager.getNetworkSet();
- for (final CyNetwork network : networks) {
- if (network != toBeDestroyed) {
- currentNetwork = network;
- break;
+ if (currentNetwork == null) {
+ final Set<CyNetwork> networks =
networkManager.getNetworkSet();
+
+ for (final CyNetwork network :
networks) {
+ if (network != toBeDestroyed) {
+ currentNetwork =
network;
+
+ break;
+ }
+ }
+ }
}
- }
}
- }
+
+ if (changed) {
+ cyEventHelper.fireEvent(new
SetCurrentNetworkViewEvent(this, currentNetworkView));
+ }
}
- if (changed) {
- cyEventHelper.fireEvent(new SetCurrentNetworkViewEvent(this,
currentNetworkView));
- }
- }
+ public void handleEvent(final NetworkViewAboutToBeDestroyedEvent event)
{
+ final CyNetworkView toBeDestroyed = event.getNetworkView();
+ boolean changed = false;
- public void handleEvent(final NetworkViewAboutToBeDestroyedEvent event) {
- final CyNetworkView toBeDestroyed = event.getNetworkView();
- boolean changed = false;
- synchronized (this) {
- if (toBeDestroyed == currentNetworkView) {
- changed = true;
- currentNetworkView = null;
+ synchronized (this) {
+ if (toBeDestroyed == currentNetworkView) {
+ changed = true;
+ currentNetworkView = null;
- final Set<CyNetworkView> networkViews =
networkViewManager.getNetworkViewSet();
- for (final CyNetworkView view : networkViews) {
- if (view != toBeDestroyed) {
- currentNetworkView = view;
- currentNetwork = view.getModel();
- break;
- }
- }
+ final Set<CyNetworkView> networkViews =
networkViewManager.getNetworkViewSet();
- if (currentNetwork == null) {
- final Set<CyNetwork> networks =
networkManager.getNetworkSet();
- for (final CyNetwork network : networks) {
- if (network != toBeDestroyed.getModel()) {
- currentNetwork = network;
- break;
+ for (final CyNetworkView view : networkViews) {
+ if (view != toBeDestroyed) {
+ currentNetworkView = view;
+ currentNetwork =
view.getModel();
+
+ break;
+ }
+ }
+
+ if (currentNetwork == null) {
+ final Set<CyNetwork> networks =
networkManager.getNetworkSet();
+
+ for (final CyNetwork network :
networks) {
+ if (network !=
toBeDestroyed.getModel()) {
+ currentNetwork =
network;
+
+ break;
+ }
+ }
+ }
}
- }
}
- }
+
+ if (changed) {
+ cyEventHelper.fireEvent(new
SetCurrentNetworkViewEvent(this, currentNetworkView));
+ }
}
- if (changed) {
- cyEventHelper.fireEvent(new SetCurrentNetworkViewEvent(this,
currentNetworkView));
+
+ public synchronized CyNetwork getCurrentNetwork() {
+ return currentNetwork;
}
- }
- public synchronized CyNetwork getCurrentNetwork() {
- return currentNetwork;
- }
+ public void setCurrentNetwork(final CyNetwork network) {
+ final long networkId = network.getSUID();
+ synchronized (this) {
+ if (!networkManager.networkExists(networkId))
+ throw new IllegalArgumentException("Network is
not registered in this ApplicationManager: ID = "
+ + networkId);
- public void setCurrentNetwork(final long networkId) {
- synchronized (this) {
- if (!networkManager.networkExists(networkId))
- throw new IllegalArgumentException("Network is not registered
in this ApplicationManager: ID = "
- + networkId);
+ logger.info("Set current network called. Current
network ID = " + networkId);
+ currentNetwork = network;
+ currentNetworkView =
networkViewManager.getNetworkView(networkId);
- logger.info("Set current network called. Current network ID = " +
networkId);
- currentNetwork = networkManager.getNetwork(networkId);
- currentNetworkView = networkViewManager.getNetworkView(networkId);
+ // reset selected networks
+ selectedNetworks.clear();
+ selectedNetworks.add(currentNetwork);
+ }
- // reset selected networks
- selectedNetworks.clear();
- selectedNetworks.add(currentNetwork);
+ logger.debug("Current network is set. Firing
SetCurrentNetworkEvent: Network ID = "
+ + networkId);
+ cyEventHelper.fireEvent(new SetCurrentNetworkEvent(this,
currentNetwork));
}
- logger.debug("Current network is set. Firing SetCurrentNetworkEvent:
Network ID = " + networkId);
- cyEventHelper.fireEvent(new SetCurrentNetworkEvent(this,
currentNetwork));
- }
+ public synchronized CyNetworkView getCurrentNetworkView() {
+ return currentNetworkView;
+ }
- public synchronized CyNetworkView getCurrentNetworkView() {
- return currentNetworkView;
- }
+ public void setCurrentNetworkView(final CyNetworkView view) {
+ if (view == null) {
+ logger.warn("View was null - not setting current
network view.");
+ return;
+ }
-
- // FIXME: THIS IS WRONG! we can have multiple view model, so this parameter
- // should be model SUID.
- public void setCurrentNetworkView(final long modelID) {
- final CyNetworkView view;
- synchronized (this) {
- if (!networkManager.networkExists(modelID))
- throw new IllegalArgumentException("network is not recognized
by this ApplicationManager");
+ synchronized (this) {
+ if
(!networkManager.networkExists(view.getModel().getSUID()))
+ throw new IllegalArgumentException("network is
not recognized by this ApplicationManager");
- view = networkViewManager.getNetworkView(modelID);
- if (view == null) {
- logger.warn("View was not in the NetworkViewManager.");
- return;
- }
-
- logger.debug("Set current network view called: View ID = " +
view.getSUID());
+ logger.debug("Set current network view called: View ID
= " + view.getSUID());
- setCurrentNetwork(modelID);
+ setCurrentNetwork(view.getModel());
- // reset selected network views
- selectedNetworkViews.clear();
- selectedNetworkViews.add(currentNetworkView);
+ // reset selected network views
+ selectedNetworkViews.clear();
+ selectedNetworkViews.add(currentNetworkView);
+ }
+
+ logger.debug("Current network view is set. Firing
SetCurrentNetworkViewEvent: View ID = "
+ + view.getSUID());
+ cyEventHelper.fireEvent(new SetCurrentNetworkViewEvent(this,
currentNetworkView));
}
- logger.debug("Current network view is set. Firing
SetCurrentNetworkViewEvent: View ID = " + view.getSUID());
- cyEventHelper.fireEvent(new SetCurrentNetworkViewEvent(this,
currentNetworkView));
- }
+ public synchronized List<CyNetworkView> getSelectedNetworkViews() {
+ return new ArrayList<CyNetworkView>(selectedNetworkViews);
+ }
- public synchronized List<CyNetworkView> getSelectedNetworkViews() {
- return new ArrayList<CyNetworkView>(selectedNetworkViews);
- }
+ public void setSelectedNetworkViews(final List<CyNetworkView>
networkViews) {
+ if (networkViews == null)
+ return;
- public void setSelectedNetworkViews(final List<Long> modelIDs) {
- if (modelIDs == null)
- return;
+ synchronized (this) {
+ selectedNetworkViews.clear();
+ selectedNetworkViews.addAll(networkViews);
- synchronized (this) {
+ CyNetworkView cv = getCurrentNetworkView();
- selectedNetworkViews.clear();
+ if (!selectedNetworkViews.contains(cv)) {
+ selectedNetworkViews.add(cv);
+ }
+ }
- for (final long id : modelIDs) {
- final CyNetworkView view =
networkViewManager.getNetworkView(id);
- if (view != null)
- selectedNetworkViews.add(view);
- }
+ cyEventHelper.fireEvent(new SetSelectedNetworkViewsEvent(this,
+ new
ArrayList<CyNetworkView>(selectedNetworkViews)));
+ }
- CyNetworkView cv = getCurrentNetworkView();
-
- if (!selectedNetworkViews.contains(cv)) {
- selectedNetworkViews.add(cv);
- }
+ public synchronized List<CyNetwork> getSelectedNetworks() {
+ return new ArrayList<CyNetwork>(selectedNetworks);
}
- cyEventHelper.fireEvent(new SetSelectedNetworkViewsEvent(this, new
ArrayList<CyNetworkView>(
- selectedNetworkViews)));
- }
+ public void setSelectedNetworks(final List<CyNetwork> networks) {
+ if (networks == null)
+ return;
- public synchronized List<CyNetwork> getSelectedNetworks() {
- return new ArrayList<CyNetwork>(selectedNetworks);
- }
+ synchronized (this) {
+ selectedNetworks.clear();
+ selectedNetworks.addAll(networks);
- public void setSelectedNetworks(final List<Long> ids) {
- if (ids == null)
- return;
+ CyNetwork cn = currentNetwork;
- synchronized (this) {
- selectedNetworks.clear();
+ if (!selectedNetworks.contains(cn))
+ selectedNetworks.add(cn);
+ }
- for (Long id : ids) {
- CyNetwork n = networkManager.getNetwork(id);
- if (n != null)
- selectedNetworks.add(n);
- }
+ cyEventHelper.fireEvent(new SetSelectedNetworksEvent(this,
+ new
ArrayList<CyNetwork>(selectedNetworks)));
+ }
- CyNetwork cn = currentNetwork;
-
- if (!selectedNetworks.contains(cn))
- selectedNetworks.add(cn);
+ public RenderingEngine<CyNetwork> getCurrentRenderingEngine() {
+ return currentRenderer;
}
- cyEventHelper.fireEvent(new SetSelectedNetworksEvent(this,
- new ArrayList<CyNetwork>(selectedNetworks)));
- }
+ public void setCurrentRenderingEngine(RenderingEngine<CyNetwork>
engine) {
+ this.currentRenderer = engine;
- public RenderingEngine<CyNetwork> getCurrentRenderingEngine() {
- return currentRenderer;
- }
+ cyEventHelper.fireEvent(new
SetCurrentRenderingEngineEvent(this, this.currentRenderer));
+ }
- public void setCurrentRenderingEngine(RenderingEngine<CyNetwork> engine) {
- this.currentRenderer = engine;
+ @Override
+ public CyTable getCurrentTable() {
+ return currentTable;
+ }
- cyEventHelper.fireEvent(new SetCurrentRenderingEngineEvent(this,
this.currentRenderer));
-
- }
-
- @Override
- public CyTable getCurrentTable() {
- return currentTable;
- }
-
- @Override
- public void setCurrentTable(CyTable table) {
- currentTable = table;
- }
+ @Override
+ public void setCurrentTable(CyTable table) {
+ currentTable = table;
+ }
}
Modified:
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/creation/AbstractNetworkFromSelectionTask.java
===================================================================
---
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/creation/AbstractNetworkFromSelectionTask.java
2011-12-05 22:14:54 UTC (rev 27698)
+++
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/creation/AbstractNetworkFromSelectionTask.java
2011-12-05 22:15:26 UTC (rev 27699)
@@ -53,6 +53,8 @@
import org.cytoscape.view.vizmap.VisualStyle;
import org.cytoscape.work.TaskMonitor;
import org.cytoscape.work.undo.UndoSupport;
+import org.cytoscape.work.AbstractTask;
+import org.cytoscape.work.Task;
abstract class AbstractNetworkFromSelectionTask extends AbstractCreationTask {
@@ -122,16 +124,20 @@
networkManager.addNetwork(newNet);
tm.setProgress(0.6);
- appManager.setCurrentNetwork(newNet.getSUID());
+ appManager.setCurrentNetwork(newNet);
if (curView == null) {
- // Create view for the new network.
- final CreateNetworkViewTask createViewTask =
- new CreateNetworkViewTask(undoSupport, newNet,
viewFactory,
- networkViewManager,
null, eventHelper);
+
+ // inserted first, happens second
+ final Task setCurrentNetworkView = new
SetCurrentNetworkViewTask(newNet.getSUID());
+ insertTasksAfterCurrentTask(setCurrentNetworkView);
+
+
+ // inserted second, happens first
+ final Task createViewTask = new
CreateNetworkViewTask(undoSupport, newNet, viewFactory,
+
networkViewManager, null, eventHelper);
insertTasksAfterCurrentTask(createViewTask);
- appManager.setCurrentNetworkView(newNet.getSUID());
return;
}
tm.setProgress(0.7);
@@ -165,7 +171,22 @@
style.apply(newView);
newView.fitContent();
- appManager.setCurrentNetworkView(newView.getModel().getSUID());
+ appManager.setCurrentNetworkView(newView);
tm.setProgress(1.0);
}
+
+ private class SetCurrentNetworkViewTask extends AbstractTask {
+ long netId;
+ SetCurrentNetworkViewTask(long netId) {
+ this.netId = netId;
+ }
+ public void run(TaskMonitor tm) {
+ tm.setProgress(0.0);
+ CyNetworkView view =
networkViewManager.getNetworkView(netId);
+ tm.setProgress(0.5);
+ if ( view != null )
+ appManager.setCurrentNetworkView( view );
+ tm.setProgress(1.0);
+ }
+ }
}
Modified:
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/setcurrent/SetCurrentNetworkTask.java
===================================================================
---
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/setcurrent/SetCurrentNetworkTask.java
2011-12-05 22:14:54 UTC (rev 27698)
+++
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/setcurrent/SetCurrentNetworkTask.java
2011-12-05 22:15:26 UTC (rev 27699)
@@ -33,7 +33,7 @@
taskMonitor.setProgress(0.0);
Object[] setNetworks = networkManager.getNetworkSet().toArray();
taskMonitor.setProgress(0.3);
- applicationManager.setCurrentNetwork(((CyNetwork)
setNetworks[setNetworks.length-1]).getSUID());
+ applicationManager.setCurrentNetwork(((CyNetwork)
setNetworks[setNetworks.length-1]));
taskMonitor.setProgress(1.0);
}
}
Modified:
core3/impl/trunk/core-task-impl/src/test/java/org/cytoscape/task/internal/setcurren/SetCurrentNetworkTaskTest.java
===================================================================
---
core3/impl/trunk/core-task-impl/src/test/java/org/cytoscape/task/internal/setcurren/SetCurrentNetworkTaskTest.java
2011-12-05 22:14:54 UTC (rev 27698)
+++
core3/impl/trunk/core-task-impl/src/test/java/org/cytoscape/task/internal/setcurren/SetCurrentNetworkTaskTest.java
2011-12-05 22:15:26 UTC (rev 27699)
@@ -31,6 +31,6 @@
SetCurrentNetworkTask t = new
SetCurrentNetworkTask(applicationManager, netmgr);
t.run(tm);
- verify(applicationManager,
times(1)).setCurrentNetwork(net.getSUID());
+ verify(applicationManager, times(1)).setCurrentNetwork(net);
}
}
Modified:
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/util/NetworkUtil.java
===================================================================
---
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/util/NetworkUtil.java
2011-12-05 22:14:54 UTC (rev 27698)
+++
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/util/NetworkUtil.java
2011-12-05 22:15:26 UTC (rev 27699)
@@ -246,6 +246,6 @@
//view.addNodeContextMenuListener(nodeContextMenuListener);
// set focus current
-
factory.getCyApplicationManager().setCurrentNetworkView(cyNetwork.getSUID());
+ factory.getCyApplicationManager().setCurrentNetworkView(view);
}
}
Modified:
core3/impl/trunk/swing-application-impl/src/main/java/org/cytoscape/internal/view/NetworkPanel.java
===================================================================
---
core3/impl/trunk/swing-application-impl/src/main/java/org/cytoscape/internal/view/NetworkPanel.java
2011-12-05 22:14:54 UTC (rev 27698)
+++
core3/impl/trunk/swing-application-impl/src/main/java/org/cytoscape/internal/view/NetworkPanel.java
2011-12-05 22:15:26 UTC (rev 27699)
@@ -429,7 +429,7 @@
logger.debug("Network view added to NetworkPanel: " +
nde.getNetworkView().getModel().getSUID());
// Set current network view to the new one.
-
appManager.setCurrentNetworkView(nde.getNetworkView().getModel().getSUID());
+ appManager.setCurrentNetworkView(nde.getNetworkView());
this.treeNodeMap.get(nde.getNetworkView().getModel().getSUID()).setNodeColor(Color.black);
treeTable.getTree().updateUI();
}
@@ -536,22 +536,22 @@
if (node.getNetwork() == null)
return;
- appManager.setCurrentNetwork(node.getNetwork().getSUID());
+ appManager.setCurrentNetwork(node.getNetwork());
// creates a list of all selected networks
- List<Long> networkList = new LinkedList<Long>();
+ List<CyNetwork> networkList = new LinkedList<CyNetwork>();
try {
for (int i = mtree.getMinSelectionRow(); i <=
mtree.getMaxSelectionRow(); i++) {
NetworkTreeNode n = (NetworkTreeNode)
mtree.getPathForRow(i).getLastPathComponent();
if (n != null && n.getUserObject() != null &&
mtree.isRowSelected(i))
-
networkList.add(n.getNetwork().getSUID());
+ networkList.add(n.getNetwork());
}
} catch (Exception ex) {
ex.printStackTrace();
}
if (networkList.size() > 0)
- appManager.setSelectedNetworkViews(networkList);
+ appManager.setSelectedNetworks(networkList);
}
/**
Modified:
core3/impl/trunk/swing-application-impl/src/main/java/org/cytoscape/internal/view/NetworkViewManager.java
===================================================================
---
core3/impl/trunk/swing-application-impl/src/main/java/org/cytoscape/internal/view/NetworkViewManager.java
2011-12-05 22:14:54 UTC (rev 27698)
+++
core3/impl/trunk/swing-application-impl/src/main/java/org/cytoscape/internal/view/NetworkViewManager.java
2011-12-05 22:15:26 UTC (rev 27699)
@@ -111,13 +111,13 @@
private final JDesktopPane desktopPane;
// Key is MODEL ID
- private final Map<Long, JInternalFrame> presentationContainerMap;
- private final Map<Long, RenderingEngine<CyNetwork>> presentationMap;
+ private final Map<CyNetworkView, JInternalFrame>
presentationContainerMap;
+ private final Map<CyNetworkView, RenderingEngine<CyNetwork>>
presentationMap;
- private final Map<JInternalFrame, Long> iFrameMap;
+ private final Map<JInternalFrame, CyNetworkView> iFrameMap;
private final Properties props;
- private Long currentPresentationContainerID;
+ private CyNetworkView currentView;
// Supports multiple presentations
private final Map<String, RenderingEngineFactory<CyNetwork>> factories;
@@ -159,10 +159,10 @@
// add Help hooks
help.getHelpBroker().enableHelp(desktopPane,
"network-view-manager", null);
- presentationContainerMap = new HashMap<Long, JInternalFrame>();
- presentationMap = new HashMap<Long,
RenderingEngine<CyNetwork>>();
- iFrameMap = new HashMap<JInternalFrame, Long>();
- currentPresentationContainerID = null;
+ presentationContainerMap = new HashMap<CyNetworkView,
JInternalFrame>();
+ presentationMap = new HashMap<CyNetworkView,
RenderingEngine<CyNetwork>>();
+ iFrameMap = new HashMap<JInternalFrame, CyNetworkView>();
+ currentView = null;
nameTables = new HashMap<CyTable, CyNetwork>();
}
@@ -219,22 +219,22 @@
}
// outta here
- return presentationContainerMap.get(view.getModel().getSUID());
+ return presentationContainerMap.get(view);
}
/**
* View switched
*/
public void internalFrameActivated(InternalFrameEvent e) {
- final Long networkId = iFrameMap.get(e.getInternalFrame());
- if (networkId == null)
+ final CyNetworkView view = iFrameMap.get(e.getInternalFrame());
+ if (view == null)
return;
final RenderingEngine<CyNetwork> currentEngine =
applicationManager.getCurrentRenderingEngine();
- applicationManager.setCurrentNetworkView(networkId);
+ applicationManager.setCurrentNetworkView(view);
- if (currentEngine == null ||
currentEngine.getViewModel().getModel().getSUID() != networkId)
-
applicationManager.setCurrentRenderingEngine(presentationMap.get(networkId));
+ if (currentEngine == null || currentEngine.getViewModel() !=
view)
+
applicationManager.setCurrentRenderingEngine(presentationMap.get(view));
}
/**
@@ -253,7 +253,7 @@
}
logger.info("Attempting to set current network view model: View
Model ID = " + e.getNetworkView().getSUID());
- setFocus(e.getNetworkView().getModel().getSUID());
+ setFocus(e.getNetworkView());
}
public void handleEvent(SetCurrentNetworkEvent e) {
@@ -263,7 +263,7 @@
}
logger.info("Attempting to set current network model: Model ID
= " + e.getNetwork().getSUID());
- setFocus(e.getNetwork().getSUID());
+
setFocus(networkViewManager.getNetworkView(e.getNetwork().getSUID()));
}
public void handleEvent(NetworkViewAboutToBeDestroyedEvent nvde) {
@@ -313,9 +313,9 @@
protected void removeView(final CyNetworkView view) {
try {
- final JInternalFrame frame =
presentationContainerMap.get(view.getModel().getSUID());
+ final JInternalFrame frame =
presentationContainerMap.get(view);
if (frame != null) {
- RenderingEngine<CyNetwork> removed =
this.presentationMap.remove(view.getModel().getSUID());
+ RenderingEngine<CyNetwork> removed =
this.presentationMap.remove(view);
logger.debug("#### Removing rendering engine: "
+ removed);
removed = null;
frame.dispose();
@@ -324,7 +324,7 @@
logger.error("Network View unable to be killed", e);
}
- presentationContainerMap.remove(view.getModel().getSUID());
+ presentationContainerMap.remove(view);
nameTables.remove(view.getModel().getDefaultNetworkTable());
logger.debug("Network View Model removed.");
@@ -335,10 +335,8 @@
*
*/
private void render(final CyNetworkView view) {
- final Long modelID = view.getModel().getSUID();
-
// If already registered in this manager, do not render.
- if (presentationContainerMap.containsKey(modelID))
+ if (presentationContainerMap.containsKey(view))
return;
// Create a new InternalFrame and put the CyNetworkView
Component into
@@ -372,14 +370,14 @@
});
desktopPane.add(iframe);
- presentationContainerMap.put(modelID, iframe);
- iFrameMap.put(iframe, modelID);
+ presentationContainerMap.put(view, iframe);
+ iFrameMap.put(iframe, view);
final long start = System.currentTimeMillis();
logger.debug("Rendering start: view model = " + view.getSUID());
final RenderingEngine<CyNetwork> renderingEngine =
currentRenderingEngineFactory.createRenderingEngine(iframe, view);
logger.debug("Rendering finished in " +
(System.currentTimeMillis() - start) + " m sec.");
- presentationMap.put(modelID, renderingEngine);
+ presentationMap.put(view, renderingEngine);
iframe.pack();
@@ -422,7 +420,7 @@
} else {
int w =
view.getVisualProperty(MinimalVisualLexicon.NETWORK_WIDTH).intValue();
int h =
view.getVisualProperty(MinimalVisualLexicon.NETWORK_HEIGHT).intValue();
- updateNetworkSize(modelID, w, h);
+ updateNetworkSize(view, w, h);
}
// Display it and add listeners
@@ -439,25 +437,25 @@
return;
final String title = n.getCyRow().get(CyTableEntry.NAME,
String.class);
- updateNetworkTitle(n.getSUID(), title);
+ updateNetworkTitle(n, title);
}
@Override
public void handleEvent(NetworkViewChangedEvent e) {
for ( ViewChangeRecord<CyNetwork> record :
e.getPayloadCollection()) {
- Long id = record.getView().getModel().getSUID();
- JInternalFrame iframe =
presentationContainerMap.get(id);
+ CyNetworkView view = (CyNetworkView)(record.getView());
+ JInternalFrame iframe =
presentationContainerMap.get(view);
if ( iframe == null )
return;
if
(record.getVisualProperty().equals(MinimalVisualLexicon.NETWORK_WIDTH)) {
int w = ((Double) record.getValue()).intValue();
int h = iframe.getSize().height;
- updateNetworkSize(id, w, h);
+ updateNetworkSize(view, w, h);
} else if
(record.getVisualProperty().equals(MinimalVisualLexicon.NETWORK_HEIGHT)) {
int w = iframe.getSize().width;
int h = ((Double) record.getValue()).intValue();
- updateNetworkSize(id, w, h);
+ updateNetworkSize(view, w, h);
}
}
}
@@ -521,17 +519,21 @@
}
}
- private void updateNetworkTitle(Long networkModelID, String title) {
- JInternalFrame frame =
presentationContainerMap.get(networkModelID);
+ private void updateNetworkTitle(CyNetwork net, String title) {
+ CyNetworkView view =
networkViewManager.getNetworkView(net.getSUID());
+ if ( view == null )
+ return;
- if (frame != null) {
- frame.setTitle(title);
- frame.repaint();
- }
+ JInternalFrame frame = presentationContainerMap.get(view);
+ if (frame == null)
+ return;
+
+ frame.setTitle(title);
+ frame.repaint();
}
- private void updateNetworkSize(final Long networkModelID, int width,
int height) {
- final JInternalFrame frame =
presentationContainerMap.get(networkModelID);
+ private void updateNetworkSize(final CyNetworkView view, int width, int
height) {
+ final JInternalFrame frame = presentationContainerMap.get(view);
if (frame == null)
return;
@@ -540,25 +542,19 @@
frame.setSize(new Dimension(width, height));
}
- private void setFocus(Long networkModelID) {
- if (networkModelID == null) {
- logger.warn("Set Focus method got a null as target
ID.");
- return;
- }
-
- final CyNetworkView targetViewModel =
networkViewManager.getNetworkView(networkModelID);
+ private void setFocus(CyNetworkView targetViewModel) {
if (targetViewModel == null) {
- logger.debug("View model does not exist for model ID: "
+ networkModelID);
+ logger.warn("Set Focus method got a null vew.");
return;
}
// make sure we're not redundant
- if (currentPresentationContainerID != null &&
currentPresentationContainerID.equals(networkModelID)) {
- logger.debug("Same as current focus. No need to update
focus: model ID = " + networkModelID);
+ if (currentView != null && currentView.equals(targetViewModel))
{
+ logger.debug("Same as current focus. No need to update
focus view model: " + targetViewModel);
return;
}
- currentPresentationContainerID = networkModelID;
+ currentView = targetViewModel;
// Reset focus on frames
for (JInternalFrame f : presentationContainerMap.values()) {
@@ -570,10 +566,10 @@
}
// Set focus
- if (presentationContainerMap.containsKey(networkModelID)) {
+ if (presentationContainerMap.containsKey(targetViewModel)) {
try {
logger.debug("Updating JInternalFrame
selection");
- final JInternalFrame curr =
presentationContainerMap.get(networkModelID);
+ final JInternalFrame curr =
presentationContainerMap.get(targetViewModel);
curr.setIcon(false);
curr.show();
Modified:
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/DefaultTableBrowser.java
===================================================================
---
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/DefaultTableBrowser.java
2011-12-05 22:14:54 UTC (rev 27698)
+++
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/DefaultTableBrowser.java
2011-12-05 22:15:26 UTC (rev 27699)
@@ -101,7 +101,7 @@
if (network == null || currentNetwork == network)
return;
- applicationManager.setCurrentNetwork(network.getSUID());
+ applicationManager.setCurrentNetwork(network);
}
@Override
--
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.