Author: paperwing
Date: 2012-06-18 10:33:57 -0700 (Mon, 18 Jun 2012)
New Revision: 29597
Modified:
core3/impl/trunk/app-impl/src/main/java/org/cytoscape/app/internal/manager/AppManager.java
core3/impl/trunk/app-impl/src/main/java/org/cytoscape/app/internal/ui/InstallFromStorePanel.java
Log:
refs #1122 Tags now sorted by number of apps; use tree folder icon. Apps list
sorted alphabetically
Modified:
core3/impl/trunk/app-impl/src/main/java/org/cytoscape/app/internal/manager/AppManager.java
===================================================================
---
core3/impl/trunk/app-impl/src/main/java/org/cytoscape/app/internal/manager/AppManager.java
2012-06-18 15:50:37 UTC (rev 29596)
+++
core3/impl/trunk/app-impl/src/main/java/org/cytoscape/app/internal/manager/AppManager.java
2012-06-18 17:33:57 UTC (rev 29597)
@@ -428,7 +428,7 @@
return path.getCanonicalPath();
} catch (IOException e) {
- // TODO: Record error in logger
+ logger.warn("Failed to obtain path to installed apps
directory");
return null;
}
}
@@ -449,7 +449,7 @@
return path.getCanonicalPath();
} catch (IOException e) {
- // TODO: Record error in logger
+ logger.warn("Failed to obtain path to uninstalled apps
directory");
return null;
}
}
@@ -471,7 +471,7 @@
return path.getCanonicalPath();
} catch (IOException e) {
- // TODO: Record in logger
+ logger.warn("Failed to obtain path to downloaded apps
directory");
return null;
}
}
@@ -502,7 +502,7 @@
try {
installApp(parsedApp);
} catch (AppInstallException e) {
- DebugHelper.print("Unable to install app: " +
e.getMessage());
+ logger.warn("Unable to install app from
installed apps directory: " + e.getMessage());
}
}
Modified:
core3/impl/trunk/app-impl/src/main/java/org/cytoscape/app/internal/ui/InstallFromStorePanel.java
===================================================================
---
core3/impl/trunk/app-impl/src/main/java/org/cytoscape/app/internal/ui/InstallFromStorePanel.java
2012-06-18 15:50:37 UTC (rev 29596)
+++
core3/impl/trunk/app-impl/src/main/java/org/cytoscape/app/internal/ui/InstallFromStorePanel.java
2012-06-18 17:33:57 UTC (rev 29597)
@@ -13,9 +13,12 @@
import java.net.URISyntaxException;
import java.net.URL;
import java.util.Collection;
+import java.util.Collections;
+import java.util.Comparator;
import java.util.HashMap;
import java.util.HashSet;
import java.util.LinkedList;
+import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
@@ -36,6 +39,7 @@
import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.tree.DefaultTreeCellRenderer;
import javax.swing.tree.DefaultTreeModel;
+import javax.swing.tree.TreeCellRenderer;
import javax.swing.tree.TreeNode;
import javax.swing.tree.TreePath;
@@ -106,6 +110,10 @@
}
});
+ DefaultTreeCellRenderer tagsTreeCellRenderer = new
DefaultTreeCellRenderer();
+
tagsTreeCellRenderer.setLeafIcon(tagsTreeCellRenderer.getDefaultClosedIcon());
+ tagsTree.setCellRenderer(tagsTreeCellRenderer);
+
resultsTree.addTreeSelectionListener(new
TreeSelectionListener() {
@Override
@@ -137,7 +145,7 @@
//
populateTree(appManager.getWebQuerier().getAllApps());
buildTagsTree();
- fillResultsTree(null);
+
fillResultsTree(appManager.getWebQuerier().getAllApps());
}
});
@@ -422,6 +430,17 @@
Set<WebApp> availableApps = webQuerier.getAllApps();
Set<WebQuerier.AppTag> availableTags = webQuerier.getAllTags();
+ List<WebQuerier.AppTag> sortedTags = new
LinkedList<WebQuerier.AppTag>(availableTags);
+
+ Collections.sort(sortedTags, new Comparator<WebQuerier.AppTag>() {
+
+ @Override
+ public int compare(AppTag tag, AppTag other) {
+ return other.getCount() - tag.getCount();
+ }
+ });
+
+
DefaultMutableTreeNode root = new DefaultMutableTreeNode("root");
DefaultMutableTreeNode allAppsTreeNode = new
DefaultMutableTreeNode("all apps"
@@ -436,7 +455,7 @@
}
DefaultMutableTreeNode treeNode = null;
- for (final WebQuerier.AppTag appTag : availableTags) {
+ for (final WebQuerier.AppTag appTag : sortedTags) {
if (appTag.getCount() > 0) {
treeNode = new DefaultMutableTreeNode(appTag);
appsByTagTreeNode.add(treeNode);
@@ -462,7 +481,7 @@
// Check if the "all apps" node is selected
if (selectedNode.getLevel() == 1
&&
String.valueOf(selectedNode.getUserObject()).startsWith("all apps")) {
- fillResultsTree(null);
+
fillResultsTree(appManager.getWebQuerier().getAllApps());
} else if (selectedNode.getUserObject() instanceof
WebQuerier.AppTag) {
WebQuerier.AppTag selectedTag = (WebQuerier.AppTag)
selectedNode.getUserObject();
@@ -478,14 +497,21 @@
private void fillResultsTree(Set<WebApp> webApps) {
Set<WebApp> appsToShow = webApps;
- if (appsToShow == null) {
- appsToShow = appManager.getWebQuerier().getAllApps();
- }
+ List<WebApp> sortedApps = new LinkedList<WebApp>(appsToShow);
+ // Sort apps by alphabetical order
+ Collections.sort(sortedApps, new Comparator<WebApp>() {
+ @Override
+ public int compare(WebApp webApp, WebApp other) {
+
+ return
(webApp.getName().compareToIgnoreCase(other.getName()));
+ }
+ });
+
DefaultMutableTreeNode root = new DefaultMutableTreeNode("root");
DefaultMutableTreeNode treeNode;
- for (WebApp webApp : appsToShow) {
+ for (WebApp webApp : sortedApps) {
treeNode = new DefaultMutableTreeNode(webApp);
root.add(treeNode);
}
--
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.