Author: paperwing
Date: 2012-04-19 17:41:04 -0700 (Thu, 19 Apr 2012)
New Revision: 28893

Modified:
   
csplugins/trunk/toronto/yuedong/app_manager/impl/app-impl/src/main/java/org/cytoscape/app/internal/net/ResultsFilterer.java
   
csplugins/trunk/toronto/yuedong/app_manager/impl/app-impl/src/main/java/org/cytoscape/app/internal/ui/AppManagerDialog.java
   
csplugins/trunk/toronto/yuedong/app_manager/impl/app-impl/src/main/java/org/cytoscape/app/internal/ui/CheckForUpdatesPanel.java
   
csplugins/trunk/toronto/yuedong/app_manager/impl/app-impl/src/main/java/org/cytoscape/app/internal/ui/CurrentlyInstalledAppsPanel.java
   
csplugins/trunk/toronto/yuedong/app_manager/impl/app-impl/src/main/java/org/cytoscape/app/internal/ui/InstallFromStorePanel.java
Log:
UI layout updated; install from file now merged with install from store tab, 
JTextArea replaced with JTextPane to support HTML formatting along with 
hyperlinking, ResultsFilterer class expanded to be able to filter a set of 
WebApp objects given a substring to look for

Modified: 
csplugins/trunk/toronto/yuedong/app_manager/impl/app-impl/src/main/java/org/cytoscape/app/internal/net/ResultsFilterer.java
===================================================================
--- 
csplugins/trunk/toronto/yuedong/app_manager/impl/app-impl/src/main/java/org/cytoscape/app/internal/net/ResultsFilterer.java
 2012-04-20 00:29:29 UTC (rev 28892)
+++ 
csplugins/trunk/toronto/yuedong/app_manager/impl/app-impl/src/main/java/org/cytoscape/app/internal/net/ResultsFilterer.java
 2012-04-20 00:41:04 UTC (rev 28893)
@@ -1,9 +1,36 @@
 package org.cytoscape.app.internal.net;
 
+import java.util.HashSet;
+import java.util.Set;
+
 /**
  * This class is capable of filtering a set of {@link WebApp} objects to 
create a subset
  * containing only elements that match a given search.
  */
 public class ResultsFilterer {
-
+       
+       public Set<WebApp> findMatches(String text, Set<WebApp> webApps) {
+               Set<WebApp> result = new HashSet<WebApp>();
+               
+               for (WebApp webApp : webApps) {
+                       if (matches(text, webApp)) {
+                               result.add(webApp);
+                       }
+               }
+               
+               return result;
+       }
+       
+       // Return true if the app matches the filter text
+       public boolean matches(String text, WebApp webApp) {
+               String lowerCaseText = text.toLowerCase();
+               
+               if (webApp.getFullName().toLowerCase().indexOf(lowerCaseText) 
!= -1) {
+                       return true;
+               } else if 
(webApp.getDescription().toLowerCase().indexOf(lowerCaseText) != -1) {
+                       return true;
+               } 
+               
+               return false;
+       }
 }

Modified: 
csplugins/trunk/toronto/yuedong/app_manager/impl/app-impl/src/main/java/org/cytoscape/app/internal/ui/AppManagerDialog.java
===================================================================
--- 
csplugins/trunk/toronto/yuedong/app_manager/impl/app-impl/src/main/java/org/cytoscape/app/internal/ui/AppManagerDialog.java
 2012-04-20 00:29:29 UTC (rev 28892)
+++ 
csplugins/trunk/toronto/yuedong/app_manager/impl/app-impl/src/main/java/org/cytoscape/app/internal/ui/AppManagerDialog.java
 2012-04-20 00:41:04 UTC (rev 28893)
@@ -10,7 +10,6 @@
 
        private CheckForUpdatesPanel checkForUpdatesPanel1;
     private CurrentlyInstalledAppsPanel currentlyInstalledAppsPanel1;
-    private InstallAppsPanel installAppsPanel2;
     private InstallFromStorePanel installNewAppsPanel1;
     private javax.swing.JTabbedPane mainTabbedPane;
     
@@ -32,14 +31,12 @@
 
        mainTabbedPane = new javax.swing.JTabbedPane();
         installNewAppsPanel1 = new InstallFromStorePanel(appManager);
-        installAppsPanel2 = new InstallAppsPanel(appManager, fileUtil, this);
         currentlyInstalledAppsPanel1 = new 
CurrentlyInstalledAppsPanel(appManager);
         checkForUpdatesPanel1 = new CheckForUpdatesPanel();
 
         setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
 
-        mainTabbedPane.addTab("Install from App Store", installNewAppsPanel1);
-        mainTabbedPane.addTab("Install Directly", installAppsPanel2);
+        mainTabbedPane.addTab("Install Apps", installNewAppsPanel1);
         mainTabbedPane.addTab("Currently Installed", 
currentlyInstalledAppsPanel1);
         mainTabbedPane.addTab("Check for Updates", checkForUpdatesPanel1);
 

Modified: 
csplugins/trunk/toronto/yuedong/app_manager/impl/app-impl/src/main/java/org/cytoscape/app/internal/ui/CheckForUpdatesPanel.java
===================================================================
--- 
csplugins/trunk/toronto/yuedong/app_manager/impl/app-impl/src/main/java/org/cytoscape/app/internal/ui/CheckForUpdatesPanel.java
     2012-04-20 00:29:29 UTC (rev 28892)
+++ 
csplugins/trunk/toronto/yuedong/app_manager/impl/app-impl/src/main/java/org/cytoscape/app/internal/ui/CheckForUpdatesPanel.java
     2012-04-20 00:41:04 UTC (rev 28893)
@@ -23,7 +23,6 @@
     private javax.swing.JButton installSelectedButton;
     private javax.swing.JLabel lastCheckForUpdatesLabel;
     private javax.swing.JLabel updateCheckTimeLabel;
-    private javax.swing.JLabel updatesAvailableCountLabel;
     private javax.swing.JLabel updatesAvailableLabel;
     private javax.swing.JScrollPane updatesScrollPane;
     private javax.swing.JTable updatesTable;
@@ -35,7 +34,6 @@
     private void initComponents() {
 
         updatesAvailableLabel = new javax.swing.JLabel();
-        updatesAvailableCountLabel = new javax.swing.JLabel();
         installSelectedButton = new javax.swing.JButton();
         installAllTable = new javax.swing.JButton();
         updatesScrollPane = new javax.swing.JScrollPane();
@@ -46,10 +44,8 @@
         descriptionScrollPane = new javax.swing.JScrollPane();
         descriptionTextArea = new javax.swing.JTextArea();
 
-        updatesAvailableLabel.setText("Updates available:");
+        updatesAvailableLabel.setText("0 updates available.");
 
-        updatesAvailableCountLabel.setText("0");
-
         installSelectedButton.setText("Update Selected");
         installSelectedButton.addActionListener(new 
java.awt.event.ActionListener() {
             public void actionPerformed(java.awt.event.ActionEvent evt) {
@@ -88,9 +84,7 @@
 
         descriptionLabel.setText("Update Description:");
 
-        descriptionTextArea.setColumns(20);
         descriptionTextArea.setEditable(false);
-        descriptionTextArea.setRows(5);
         descriptionTextArea.setFocusable(false);
         descriptionScrollPane.setViewportView(descriptionTextArea);
 
@@ -101,30 +95,26 @@
             .add(layout.createSequentialGroup()
                 .addContainerGap()
                 
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
-                    .add(updatesScrollPane, 
org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 658, Short.MAX_VALUE)
                     .add(layout.createSequentialGroup()
                         
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
                             .add(layout.createSequentialGroup()
-                                .add(installSelectedButton)
+                                .add(updatesAvailableLabel)
                                 
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
-                                .add(installAllTable))
-                            .add(layout.createSequentialGroup()
                                 .add(lastCheckForUpdatesLabel)
                                 
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
-                                .add(updateCheckTimeLabel)))
-                        .add(0, 0, Short.MAX_VALUE))
+                                .add(updateCheckTimeLabel)
+                                .add(0, 0, Short.MAX_VALUE))
+                            .add(updatesScrollPane, 
org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 652, Short.MAX_VALUE)
+                            .add(descriptionScrollPane))
+                        .addContainerGap())
                     .add(layout.createSequentialGroup()
                         
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
-                            .add(descriptionScrollPane, 
org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 652, Short.MAX_VALUE)
                             .add(layout.createSequentialGroup()
-                                
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
-                                    .add(layout.createSequentialGroup()
-                                        .add(updatesAvailableLabel)
-                                        
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
-                                        .add(updatesAvailableCountLabel))
-                                    .add(descriptionLabel))
-                                .add(0, 0, Short.MAX_VALUE)))
-                        .addContainerGap())))
+                                .add(installSelectedButton)
+                                
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
+                                .add(installAllTable))
+                            .add(descriptionLabel))
+                        .add(0, 0, Short.MAX_VALUE))))
         );
         layout.setVerticalGroup(
             layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
@@ -132,17 +122,14 @@
                 .addContainerGap()
                 
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
                     .add(updatesAvailableLabel)
-                    .add(updatesAvailableCountLabel))
-                .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
-                
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
                     .add(lastCheckForUpdatesLabel)
                     .add(updateCheckTimeLabel))
                 .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
-                .add(updatesScrollPane, 
org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 309, Short.MAX_VALUE)
-                .addPreferredGap(org.jdesktop.layout.LayoutStyle.UNRELATED)
+                .add(updatesScrollPane, 
org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 327, Short.MAX_VALUE)
+                .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
                 .add(descriptionLabel, 
org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 16, 
org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                 .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
-                .add(descriptionScrollPane, 
org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 96, 
org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+                .add(descriptionScrollPane, 
org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 106, 
org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                 .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
                 
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
                     .add(installSelectedButton)

Modified: 
csplugins/trunk/toronto/yuedong/app_manager/impl/app-impl/src/main/java/org/cytoscape/app/internal/ui/CurrentlyInstalledAppsPanel.java
===================================================================
--- 
csplugins/trunk/toronto/yuedong/app_manager/impl/app-impl/src/main/java/org/cytoscape/app/internal/ui/CurrentlyInstalledAppsPanel.java
      2012-04-20 00:29:29 UTC (rev 28892)
+++ 
csplugins/trunk/toronto/yuedong/app_manager/impl/app-impl/src/main/java/org/cytoscape/app/internal/ui/CurrentlyInstalledAppsPanel.java
      2012-04-20 00:41:04 UTC (rev 28893)
@@ -22,19 +22,14 @@
        /** Long serial version identifier required by the Serializable class */
        private static final long serialVersionUID = 7096775814942183176L;
        
-       private javax.swing.JLabel appsAvailableCountLabel;
-    private javax.swing.JLabel appsAvailableLabel;
     private javax.swing.JScrollPane appsAvailableScrollPane;
     private javax.swing.JTable appsAvailableTable;
-    private javax.swing.JLabel appsInstalledCountLabel;
     private javax.swing.JLabel appsInstalledLabel;
     private javax.swing.JLabel descriptionLabel;
     private javax.swing.JScrollPane descriptionScrollPane;
     private javax.swing.JTextArea descriptionTextArea;
     private javax.swing.JButton disableSelectedButton;
-    private javax.swing.JButton enableSelectedButton;
-    private javax.swing.JComboBox showTypeComboxBox;
-    private javax.swing.JLabel showTypeLabel;
+    private javax.swing.JButton enableSelectedButton;;
        
     private AppManager appManager;
     private AppsChangedListener appListener;
@@ -54,13 +49,8 @@
         appsAvailableScrollPane = new javax.swing.JScrollPane();
         appsAvailableTable = new javax.swing.JTable();
         appsInstalledLabel = new javax.swing.JLabel();
-        appsAvailableLabel = new javax.swing.JLabel();
-        appsInstalledCountLabel = new javax.swing.JLabel();
-        appsAvailableCountLabel = new javax.swing.JLabel();
         enableSelectedButton = new javax.swing.JButton();
         disableSelectedButton = new javax.swing.JButton();
-        showTypeComboxBox = new javax.swing.JComboBox();
-        showTypeLabel = new javax.swing.JLabel();
         descriptionLabel = new javax.swing.JLabel();
         descriptionScrollPane = new javax.swing.JScrollPane();
         descriptionTextArea = new javax.swing.JTextArea();
@@ -70,7 +60,7 @@
 
             },
             new String [] {
-                "App", "Name", "Version", "Author", "Status"
+                "App", "Name", "Author", "Version", "Status"
             }
         ) {
             boolean[] canEdit = new boolean [] {
@@ -81,17 +71,12 @@
                 return canEdit [columnIndex];
             }
         });
-        appsAvailableTable.removeColumn(appsAvailableTable.getColumn("App"));
         appsAvailableScrollPane.setViewportView(appsAvailableTable);
+        
appsAvailableTable.getColumnModel().getColumn(1).setPreferredWidth(195);
+        appsAvailableTable.removeColumn(appsAvailableTable.getColumn("App"));
+        
+        appsInstalledLabel.setText("0 Apps installed.");
 
-        appsInstalledLabel.setText("Number of Apps Installed:");
-
-        appsAvailableLabel.setText("Apps available: ");
-
-        appsInstalledCountLabel.setText("0");
-
-        appsAvailableCountLabel.setText("0");
-
         enableSelectedButton.setText("Reinstall");
         enableSelectedButton.addActionListener(new 
java.awt.event.ActionListener() {
             public void actionPerformed(java.awt.event.ActionEvent evt) {
@@ -106,15 +91,6 @@
             }
         });
 
-        showTypeComboxBox.setModel(new javax.swing.DefaultComboBoxModel(new 
String[] { "All", "Installed", "Uninstalled" }));
-        showTypeComboxBox.addActionListener(new 
java.awt.event.ActionListener() {
-            public void actionPerformed(java.awt.event.ActionEvent evt) {
-                showTypeComboxBoxActionPerformed(evt);
-            }
-        });
-
-        showTypeLabel.setText("Show:");
-
         descriptionLabel.setText("App Information:");
 
         descriptionTextArea.setEditable(false);
@@ -132,23 +108,12 @@
                     .add(descriptionScrollPane)
                     .add(layout.createSequentialGroup()
                         
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
-                            .add(layout.createSequentialGroup()
-                                .add(appsAvailableLabel)
-                                
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
-                                .add(appsAvailableCountLabel))
-                            .add(layout.createSequentialGroup()
-                                .add(appsInstalledLabel)
-                                
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
-                                .add(appsInstalledCountLabel))
-                            .add(layout.createSequentialGroup()
-                                .add(showTypeLabel)
-                                
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
-                                .add(showTypeComboxBox, 
org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 165, 
org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
                             .add(descriptionLabel)
                             .add(layout.createSequentialGroup()
                                 .add(disableSelectedButton)
                                 
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
-                                .add(enableSelectedButton)))
+                                .add(enableSelectedButton))
+                            .add(appsInstalledLabel))
                         .add(0, 0, Short.MAX_VALUE)))
                 .addContainerGap())
         );
@@ -156,23 +121,13 @@
             layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
             .add(layout.createSequentialGroup()
                 .addContainerGap()
-                
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
-                    .add(appsInstalledLabel)
-                    .add(appsInstalledCountLabel))
+                .add(appsInstalledLabel)
                 .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
-                
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
-                    .add(appsAvailableLabel)
-                    .add(appsAvailableCountLabel))
+                .add(appsAvailableScrollPane, 
org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 311, Short.MAX_VALUE)
                 .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
-                
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
-                    .add(showTypeLabel)
-                    .add(showTypeComboxBox, 
org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 
org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 
org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
-                .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
-                .add(appsAvailableScrollPane, 
org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 260, Short.MAX_VALUE)
-                .addPreferredGap(org.jdesktop.layout.LayoutStyle.UNRELATED)
                 .add(descriptionLabel)
                 .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
-                .add(descriptionScrollPane, 
org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 96, 
org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+                .add(descriptionScrollPane, 
org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 106, 
org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                 .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
                 
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
                     .add(enableSelectedButton)
@@ -180,7 +135,8 @@
                 .addContainerGap())
         );
     }
-
+        
+        
     private void 
enableSelectedButtonActionPerformed(java.awt.event.ActionEvent evt) {
        // Obtain App objects corresponding to currently selected table entries
         Set<App> selectedApps = getSelectedApps();
@@ -277,8 +233,7 @@
      * Update the labels that display the number of currently installed and 
available apps.
      */
     private void updateLabels() {
-       
appsInstalledCountLabel.setText(String.valueOf(appManager.getApps().size()));
-       
appsAvailableCountLabel.setText(String.valueOf(appManager.getApps().size()));
+       appsInstalledLabel.setText(String.valueOf(appManager.getApps().size()) 
+ " Apps installed.");
     }
     
     /**

Modified: 
csplugins/trunk/toronto/yuedong/app_manager/impl/app-impl/src/main/java/org/cytoscape/app/internal/ui/InstallFromStorePanel.java
===================================================================
--- 
csplugins/trunk/toronto/yuedong/app_manager/impl/app-impl/src/main/java/org/cytoscape/app/internal/ui/InstallFromStorePanel.java
    2012-04-20 00:29:29 UTC (rev 28892)
+++ 
csplugins/trunk/toronto/yuedong/app_manager/impl/app-impl/src/main/java/org/cytoscape/app/internal/ui/InstallFromStorePanel.java
    2012-04-20 00:41:04 UTC (rev 28893)
@@ -47,19 +47,16 @@
        /** Long serial version identifier required by the Serializable class */
        private static final long serialVersionUID = -1208176142084829272L;
        
-       private javax.swing.JScrollPane descriptionScrollPane;
-    private javax.swing.JTextArea descriptionTextArea;
+    private javax.swing.JScrollPane descriptionScrollPane;
+    private javax.swing.JTextPane descriptionTextPane;
     private javax.swing.JButton installSelectedButton;
-    private javax.swing.JButton resetButton;
-    private javax.swing.JLabel resultsLabel;
+    private javax.swing.JButton jButton1;
     private javax.swing.JScrollPane resultsScrollPane;
     private javax.swing.JSplitPane resultsSplitPane;
     private javax.swing.JTree resultsTree;
     private javax.swing.JLabel searchAppsLabel;
-    private javax.swing.JButton searchButton;
     private javax.swing.JComboBox searchComboBox;
     private javax.swing.JCheckBox showCompatibleCheckBox;
-    private javax.swing.JButton viewOnWebStoreButton;
        
        private JFileChooser fileChooser;
        
@@ -77,28 +74,18 @@
     private void initComponents() {
 
         searchComboBox = new javax.swing.JComboBox();
-        searchButton = new javax.swing.JButton();
         installSelectedButton = new javax.swing.JButton();
-        viewOnWebStoreButton = new javax.swing.JButton();
         searchAppsLabel = new javax.swing.JLabel();
         resultsSplitPane = new javax.swing.JSplitPane();
         resultsScrollPane = new javax.swing.JScrollPane();
         resultsTree = new javax.swing.JTree();
         descriptionScrollPane = new javax.swing.JScrollPane();
-        descriptionTextArea = new javax.swing.JTextArea();
+        descriptionTextPane = new javax.swing.JTextPane();
         showCompatibleCheckBox = new javax.swing.JCheckBox();
-        resetButton = new javax.swing.JButton();
-        resultsLabel = new javax.swing.JLabel();
+        jButton1 = new javax.swing.JButton();
 
         searchComboBox.setEditable(true);
 
-        searchButton.setText("Search");
-        searchButton.addActionListener(new java.awt.event.ActionListener() {
-            public void actionPerformed(java.awt.event.ActionEvent evt) {
-                searchButtonActionPerformed(evt);
-            }
-        });
-
         installSelectedButton.setText("Install Selected");
         installSelectedButton.addActionListener(new 
java.awt.event.ActionListener() {
             public void actionPerformed(java.awt.event.ActionEvent evt) {
@@ -106,33 +93,57 @@
             }
         });
 
-        viewOnWebStoreButton.setText("View on Web Store");
- 
-        searchAppsLabel.setText("Search by Keyword:");
+        searchAppsLabel.setText("Filter Apps:");
 
         resultsSplitPane.setDividerLocation(215);
 
+        javax.swing.tree.DefaultMutableTreeNode treeNode1 = new 
javax.swing.tree.DefaultMutableTreeNode("JTree");
+        javax.swing.tree.DefaultMutableTreeNode treeNode2 = new 
javax.swing.tree.DefaultMutableTreeNode("colors");
+        javax.swing.tree.DefaultMutableTreeNode treeNode3 = new 
javax.swing.tree.DefaultMutableTreeNode("blue");
+        treeNode2.add(treeNode3);
+        treeNode3 = new javax.swing.tree.DefaultMutableTreeNode("violet");
+        treeNode2.add(treeNode3);
+        treeNode3 = new javax.swing.tree.DefaultMutableTreeNode("red");
+        treeNode2.add(treeNode3);
+        treeNode3 = new javax.swing.tree.DefaultMutableTreeNode("yellow");
+        treeNode2.add(treeNode3);
+        treeNode1.add(treeNode2);
+        treeNode2 = new javax.swing.tree.DefaultMutableTreeNode("sports");
+        treeNode3 = new javax.swing.tree.DefaultMutableTreeNode("basketball");
+        treeNode2.add(treeNode3);
+        treeNode3 = new javax.swing.tree.DefaultMutableTreeNode("soccer");
+        treeNode2.add(treeNode3);
+        treeNode3 = new javax.swing.tree.DefaultMutableTreeNode("football");
+        treeNode2.add(treeNode3);
+        treeNode3 = new javax.swing.tree.DefaultMutableTreeNode("hockey test");
+        treeNode2.add(treeNode3);
+        treeNode1.add(treeNode2);
+        treeNode2 = new javax.swing.tree.DefaultMutableTreeNode("food");
+        treeNode3 = new javax.swing.tree.DefaultMutableTreeNode("hot dogs");
+        treeNode2.add(treeNode3);
+        treeNode3 = new javax.swing.tree.DefaultMutableTreeNode("pizza");
+        treeNode2.add(treeNode3);
+        treeNode3 = new javax.swing.tree.DefaultMutableTreeNode("ravioli");
+        treeNode2.add(treeNode3);
+        treeNode3 = new javax.swing.tree.DefaultMutableTreeNode("bananas");
+        treeNode2.add(treeNode3);
+        treeNode1.add(treeNode2);
+        resultsTree.setModel(new javax.swing.tree.DefaultTreeModel(treeNode1));
         resultsScrollPane.setViewportView(resultsTree);
 
         resultsSplitPane.setLeftComponent(resultsScrollPane);
 
-        
descriptionScrollPane.setHorizontalScrollBarPolicy(javax.swing.ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
+        descriptionTextPane.setContentType("text/html");
+        descriptionTextPane.setEditable(false);
+        descriptionTextPane.setText("<html>   <head>    </head>   <body>     
<p style=\"margin-top: 0\"> App information is displayed here. <a 
href=\"http://www.w3schools.com/\";>Test link</a>          </p>   </body> 
</html> ");
+        descriptionScrollPane.setViewportView(descriptionTextPane);
 
-        descriptionTextArea.setColumns(20);
-        descriptionTextArea.setLineWrap(true);
-        descriptionTextArea.setRows(5);
-        descriptionTextArea.setText("App information is displayed here.");
-        descriptionTextArea.setWrapStyleWord(true);
-        descriptionScrollPane.setViewportView(descriptionTextArea);
-
         resultsSplitPane.setRightComponent(descriptionScrollPane);
 
-        showCompatibleCheckBox.setText("Only Show Apps Known to be 
Compatible");
+        showCompatibleCheckBox.setText("Show only compatible apps");
 
-        resetButton.setText("Reset");
+        jButton1.setText("Browse File");
 
-        resultsLabel.setText("Search Results:");
-
         org.jdesktop.layout.GroupLayout layout = new 
org.jdesktop.layout.GroupLayout(this);
         this.setLayout(layout);
         layout.setHorizontalGroup(
@@ -140,45 +151,36 @@
             .add(layout.createSequentialGroup()
                 .addContainerGap()
                 
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
-                    .add(resultsSplitPane)
                     .add(layout.createSequentialGroup()
                         
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
                             .add(layout.createSequentialGroup()
                                 .add(installSelectedButton)
                                 
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
-                                .add(viewOnWebStoreButton))
+                                .add(jButton1))
                             .add(searchAppsLabel)
                             .add(layout.createSequentialGroup()
                                 .add(searchComboBox, 
org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 269, 
org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                                 
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
-                                .add(searchButton)
-                                
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
-                                .add(resetButton))
-                            .add(resultsLabel)
-                            .add(showCompatibleCheckBox))
-                        .add(0, 0, Short.MAX_VALUE)))
+                                .add(showCompatibleCheckBox)))
+                        .add(0, 55, Short.MAX_VALUE))
+                    .add(resultsSplitPane))
                 .addContainerGap())
         );
         layout.setVerticalGroup(
             layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
-            .add(layout.createSequentialGroup()
+            .add(org.jdesktop.layout.GroupLayout.TRAILING, 
layout.createSequentialGroup()
                 .addContainerGap()
                 .add(searchAppsLabel)
                 .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
                 
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
-                    .add(searchComboBox, 
org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 
org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 
org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
-                    .add(searchButton)
-                    .add(resetButton))
+                    .add(searchComboBox, 
org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 28, 
org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
+                    .add(showCompatibleCheckBox))
                 .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
-                .add(showCompatibleCheckBox)
-                .addPreferredGap(org.jdesktop.layout.LayoutStyle.UNRELATED)
-                .add(resultsLabel)
+                .add(resultsSplitPane, 
org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 321, Short.MAX_VALUE)
                 .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
-                .add(resultsSplitPane, 
org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 260, Short.MAX_VALUE)
-                .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
-                
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
-                    .add(installSelectedButton)
-                    .add(viewOnWebStoreButton))
+                
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE, false)
+                    .add(installSelectedButton, 
org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 
org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                    .add(jButton1, 
org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 
org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                 .addContainerGap())
         );
     }

-- 
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.

Reply via email to