Author: kono
Date: 2012-03-05 12:31:51 -0800 (Mon, 05 Mar 2012)
New Revision: 28427
Modified:
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/loadnetwork/GenerateNetworkViewsTask.java
core3/impl/trunk/layout-impl/src/main/java/org/cytoscape/view/layout/internal/CyLayoutsImpl.java
core3/impl/trunk/welcome-impl/pom.xml
core3/impl/trunk/welcome-impl/src/main/java/org/cytoscape/welcome/internal/CreateNewNetworkPanel.java
core3/impl/trunk/welcome-impl/src/main/java/org/cytoscape/welcome/internal/WelcomeScreenDialog.java
Log:
fixes #714 Force-directed layout will be applied when user check "Apply layout"
box.
Modified:
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/loadnetwork/GenerateNetworkViewsTask.java
===================================================================
---
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/loadnetwork/GenerateNetworkViewsTask.java
2012-03-05 19:58:26 UTC (rev 28426)
+++
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/loadnetwork/GenerateNetworkViewsTask.java
2012-03-05 20:31:51 UTC (rev 28427)
@@ -29,22 +29,17 @@
*/
package org.cytoscape.task.internal.loadnetwork;
-import java.net.URI;
import java.text.DecimalFormat;
import java.text.NumberFormat;
-import java.util.Properties;
import org.cytoscape.io.read.CyNetworkReader;
-import org.cytoscape.io.read.CyNetworkReaderManager;
import org.cytoscape.model.CyNetwork;
import org.cytoscape.model.CyNetworkManager;
import org.cytoscape.model.CyTableEntry;
import org.cytoscape.session.CyNetworkNaming;
-import org.cytoscape.task.creation.ImportNetworksTaskFactory;
import org.cytoscape.view.model.CyNetworkView;
import org.cytoscape.view.model.CyNetworkViewManager;
import org.cytoscape.work.AbstractTask;
-import org.cytoscape.work.ProvidesTitle;
import org.cytoscape.work.TaskMonitor;
class GenerateNetworkViewsTask extends AbstractTask {
Modified:
core3/impl/trunk/layout-impl/src/main/java/org/cytoscape/view/layout/internal/CyLayoutsImpl.java
===================================================================
---
core3/impl/trunk/layout-impl/src/main/java/org/cytoscape/view/layout/internal/CyLayoutsImpl.java
2012-03-05 19:58:26 UTC (rev 28426)
+++
core3/impl/trunk/layout-impl/src/main/java/org/cytoscape/view/layout/internal/CyLayoutsImpl.java
2012-03-05 20:31:51 UTC (rev 28427)
@@ -47,11 +47,11 @@
*/
public class CyLayoutsImpl implements CyLayoutAlgorithmManager {
- private HashMap<String, CyLayoutAlgorithm> layoutMap;
- private final Properties props;
+ private final Map<String, CyLayoutAlgorithm> layoutMap;
+ private final CyProperty<Properties> cyProps;
- public CyLayoutsImpl(CyProperty<Properties> p) {
- props = p.getProperties();
+ public CyLayoutsImpl(final CyProperty<Properties> p) {
+ this.cyProps = p;
layoutMap = new HashMap<String,CyLayoutAlgorithm>();
addLayout(new GridNodeLayout(null), new HashMap());
}
@@ -114,14 +114,10 @@
@Override
public CyLayoutAlgorithm getDefaultLayout() {
// See if the user has set the layout.default property
- String defaultLayout =
props.getProperty(CyLayoutAlgorithmManager.DEFAULT_LAYOUT_PROPERTY_NAME);
+ String defaultLayout =
cyProps.getProperties().getProperty(CyLayoutAlgorithmManager.DEFAULT_LAYOUT_PROPERTY_NAME);
+ if (defaultLayout == null ||
layoutMap.containsKey(defaultLayout) == false)
+ defaultLayout =
CyLayoutAlgorithmManager.DEFAULT_LAYOUT_NAME;
- if ((defaultLayout == null) ||
!layoutMap.containsKey(defaultLayout)) {
- defaultLayout = "grid";
- }
- defaultLayout = CyLayoutAlgorithmManager.DEFAULT_LAYOUT_NAME;
-
- CyLayoutAlgorithm l = layoutMap.get(defaultLayout);
- return l;
+ return layoutMap.get(defaultLayout);
}
}
Modified: core3/impl/trunk/welcome-impl/pom.xml
===================================================================
--- core3/impl/trunk/welcome-impl/pom.xml 2012-03-05 19:58:26 UTC (rev
28426)
+++ core3/impl/trunk/welcome-impl/pom.xml 2012-03-05 20:31:51 UTC (rev
28427)
@@ -101,6 +101,10 @@
<groupId>org.cytoscape</groupId>
<artifactId>swing-application-api</artifactId>
</dependency>
+ <dependency>
+ <groupId>org.cytoscape</groupId>
+ <artifactId>layout-api</artifactId>
+ </dependency>
<!-- Testing -->
<dependency>
Modified:
core3/impl/trunk/welcome-impl/src/main/java/org/cytoscape/welcome/internal/CreateNewNetworkPanel.java
===================================================================
---
core3/impl/trunk/welcome-impl/src/main/java/org/cytoscape/welcome/internal/CreateNewNetworkPanel.java
2012-03-05 19:58:26 UTC (rev 28426)
+++
core3/impl/trunk/welcome-impl/src/main/java/org/cytoscape/welcome/internal/CreateNewNetworkPanel.java
2012-03-05 20:31:51 UTC (rev 28427)
@@ -35,8 +35,10 @@
import org.cytoscape.datasource.DataSourceManager;
import org.cytoscape.io.DataCategory;
import org.cytoscape.model.CyNetwork;
+import org.cytoscape.property.CyProperty;
import org.cytoscape.task.NetworkTaskFactory;
import org.cytoscape.task.creation.ImportNetworksTaskFactory;
+import org.cytoscape.view.layout.CyLayoutAlgorithmManager;
import org.cytoscape.work.AbstractTask;
import org.cytoscape.work.TaskFactory;
import org.cytoscape.work.TaskIterator;
@@ -54,6 +56,7 @@
private static final Logger logger =
LoggerFactory.getLogger(CreateNewNetworkPanel.class);
+ private static final String LAYOUT_ALGORITHM = "force-directed";
private static final String VIEW_THRESHOLD = "viewThreshold";
private static final int DEF_VIEW_THRESHOLD = 3000;
@@ -83,20 +86,23 @@
private final int viewThreshold;
private boolean firstSelection = false;
+
+ private final CyProperty<Properties> props;
CreateNewNetworkPanel(Window parent, final BundleContext bc, final
TaskManager guiTaskManager,
final TaskFactory importNetworkFileTF, final
ImportNetworksTaskFactory loadTF,
final NetworkTaskFactory createViewTaskFactory, final
CyApplicationConfiguration config,
- final DataSourceManager dsManager, final Properties
props) {
+ final DataSourceManager dsManager, final
CyProperty<Properties> props) {
this.parent = parent;
this.bc = bc;
+ this.props = props;
this.importNetworkFromURLTF = loadTF;
this.createViewTaskFactory = createViewTaskFactory;
this.importNetworkFileTF = importNetworkFileTF;
this.guiTaskManager = guiTaskManager;
this.dsManager = dsManager;
- this.viewThreshold = getViewThreshold(props);
+ this.viewThreshold = getViewThreshold(props.getProperties());
this.dataSourceMap = new HashMap<String, String>();
this.networkList = new JComboBox();
@@ -205,6 +211,9 @@
parent.dispose();
+ if(layout.isSelected())
+
props.getProperties().setProperty(CyLayoutAlgorithmManager.DEFAULT_LAYOUT_PROPERTY_NAME,
LAYOUT_ALGORITHM);
+
// TODO REFACTOR!!!!!!!!!!!!!!!!!!!
guiTaskManager.execute(new TaskFactory() {
@@ -251,19 +260,8 @@
final Set<CyNetwork> networks =
this.loadNetworkFileTF.loadCyNetworks(url);
taskMonitor.setProgress(1.0d);
- /*
- if (networks.size() != 0) {
- taskMonitor.setTitle("Creating View for the new
network");
- CyNetwork network = networks.iterator().next();
- final int numGraphObjects =
network.getNodeCount() + network.getEdgeCount();
- if (numGraphObjects >= viewThreshold) {
- // Force to create view.
-
createViewTaskFactory.setNetwork(network);
- taskMonitor.setStatusMessage("Loading
done. Creating view for the network...");
-
insertTasksAfterCurrentTask(createViewTaskFactory.createTaskIterator());
- }
- }
- */
+
+
props.getProperties().setProperty(CyLayoutAlgorithmManager.DEFAULT_LAYOUT_PROPERTY_NAME,
CyLayoutAlgorithmManager.DEFAULT_LAYOUT_NAME);
}
}
Modified:
core3/impl/trunk/welcome-impl/src/main/java/org/cytoscape/welcome/internal/WelcomeScreenDialog.java
===================================================================
---
core3/impl/trunk/welcome-impl/src/main/java/org/cytoscape/welcome/internal/WelcomeScreenDialog.java
2012-03-05 19:58:26 UTC (rev 28426)
+++
core3/impl/trunk/welcome-impl/src/main/java/org/cytoscape/welcome/internal/WelcomeScreenDialog.java
2012-03-05 20:31:51 UTC (rev 28427)
@@ -184,7 +184,7 @@
"Open a Recent Session");
buildHelpPanel(panel2,
new CreateNewNetworkPanel(this, bc,
guiTaskManager, importNetworkFileTF, loadNetworkTF, networkTaskFactory,
- config, dsManager,
cyProps.getProperties()),
+ config, dsManager, cyProps),
"Create New Network");
buildHelpPanel(panel3, new HelpPanel(openBrowserServiceRef,
cyProps), "Help");
buildHelpPanel(panel4, new LogoPanel(), "Latest News");
--
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.