Author: kono
Date: 2011-10-05 15:04:10 -0700 (Wed, 05 Oct 2011)
New Revision: 27075

Modified:
   
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/AbstractTableBrowser.java
   
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/GlobalTableBrowser.java
Log:
Some minor updates had been done to browser view.

Modified: 
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/AbstractTableBrowser.java
===================================================================
--- 
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/AbstractTableBrowser.java
  2011-10-05 21:56:42 UTC (rev 27074)
+++ 
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/AbstractTableBrowser.java
  2011-10-05 22:04:10 UTC (rev 27075)
@@ -4,6 +4,7 @@
 import java.awt.BorderLayout;
 import java.awt.Color;
 import java.awt.Component;
+import java.awt.Dimension;
 import java.awt.event.ActionListener;
 import java.util.HashMap;
 import java.util.Iterator;
@@ -40,11 +41,14 @@
 
        private static final long serialVersionUID = 1968196123280466989L;
        
+       static final Dimension SELECTOR_SIZE = new Dimension(350, 20);
+       
        // Color theme for table browser.
-       
        static final Color NETWORK_COLOR = new Color(0xA5, 0x2A, 0x2A);
        static final Color SELECTED_ITEM_BACKGROUND_COLOR = new Color(0xA0, 
0xA0, 0xA0, 80);
        
+       private static final Dimension PANEL_SIZE = new Dimension(550, 400);
+       
        protected final CyNetworkTableManager networkTableManager;
        protected final CyServiceRegistrar serviceRegistrar;
        private final EquationCompiler compiler;
@@ -83,6 +87,9 @@
                browserTable.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
                browserTable.getTableHeader().setBackground(Color.LIGHT_GRAY);
                add(new JScrollPane(browserTable), BorderLayout.CENTER);
+               
+               this.setPreferredSize(PANEL_SIZE);
+               this.setSize(PANEL_SIZE);
        }
 
        /**

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-10-05 21:56:42 UTC (rev 27074)
+++ 
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/DefaultTableBrowser.java
   2011-10-05 22:04:10 UTC (rev 27075)
@@ -1,10 +1,17 @@
 package org.cytoscape.browser.internal;
 
+import static 
org.cytoscape.browser.internal.AbstractTableBrowser.SELECTED_ITEM_BACKGROUND_COLOR;
+
 import java.awt.BorderLayout;
+import java.awt.Color;
+import java.awt.Component;
 import java.awt.Dimension;
 import java.awt.event.ActionEvent;
 
 import javax.swing.JComboBox;
+import javax.swing.JLabel;
+import javax.swing.JList;
+import javax.swing.ListCellRenderer;
 
 import org.cytoscape.application.CyApplicationManager;
 import org.cytoscape.application.events.SetCurrentNetworkEvent;
@@ -44,8 +51,14 @@
                this.objType = objType;
 
                networkChooser = new JComboBox();
+               networkChooser.setRenderer(new NetworkChooserCustomRenderer());
                networkChooser.addActionListener(this);
-               networkChooser.setSize(new Dimension(100, 20));
+               networkChooser.setMaximumSize(SELECTOR_SIZE);
+               networkChooser.setMinimumSize(SELECTOR_SIZE);
+               networkChooser.setPreferredSize(SELECTOR_SIZE);
+               networkChooser.setSize(SELECTOR_SIZE);
+               networkChooser.setEnabled(false);
+               
                this.attributeBrowserToolBar = new 
AttributeBrowserToolBar(serviceRegistrar, compiler,
                                deleteTableTaskFactoryService, 
guiTaskManagerServiceRef, networkChooser);
 
@@ -76,7 +89,6 @@
                        currentTable = currentNetwork.getDefaultNetworkTable();
                networkChooser.setSelectedItem(currentNetwork);
                showSelectedTable();
-               return;
        }
        
        
@@ -85,12 +97,44 @@
                final CyNetwork network = e.getNetwork();
                this.networkChooser.addItem(network);
                this.networkChooser.setSelectedItem(network);
+               
+               if(networkChooser.isEnabled() == false)
+                       networkChooser.setEnabled(true);
        }
 
        @Override
        public void handleEvent(NetworkAboutToBeDestroyedEvent e) {
                final CyNetwork network = e.getNetwork();
                this.networkChooser.removeItem(network);
+               
+               if(networkChooser.getItemCount() == 0)
+                       networkChooser.setEnabled(false);
        }
+       
+       private static final class NetworkChooserCustomRenderer extends JLabel 
implements ListCellRenderer {
 
+               private static final long serialVersionUID = 
7103666112352192698L;
+
+               @Override
+               public Component getListCellRendererComponent(JList list, 
Object item, int index, boolean isSelected,
+                               boolean hasFocus) {
+                       
+                       if(item instanceof CyNetwork == false) {
+                               this.setText("No Network");
+                               return this;
+                       }
+                       
+                       final CyNetwork network = (CyNetwork) item;
+                       if(isSelected || hasFocus) {
+                               setBackground(SELECTED_ITEM_BACKGROUND_COLOR);
+                       } else {
+                               setBackground(Color.WHITE);
+                       }
+                       
+                       this.setText(network.getCyRow().get(CyTableEntry.NAME, 
String.class));
+                       return this;
+               }
+
+       }
+
 }

Modified: 
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/GlobalTableBrowser.java
===================================================================
--- 
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/GlobalTableBrowser.java
    2011-10-05 21:56:42 UTC (rev 27074)
+++ 
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/GlobalTableBrowser.java
    2011-10-05 22:04:10 UTC (rev 27075)
@@ -52,10 +52,14 @@
 
                tableChooser = new TableChooser();
                tableChooser.addActionListener(this);
-               tableChooser.setSize(new Dimension(100, 20));
+               tableChooser.setMaximumSize(SELECTOR_SIZE);
+               tableChooser.setMinimumSize(SELECTOR_SIZE);
+               tableChooser.setPreferredSize(SELECTOR_SIZE);
+               tableChooser.setSize(SELECTOR_SIZE);
                tableChooser.setFont(GLOBAL_FONT);
                tableChooser.setForeground(GLOBAL_TABLE_COLOR);
                tableChooser.setToolTipText("\"Global Tables\" are data tables 
not associated with specific networks.");
+               tableChooser.setEnabled(false);
                
                browserTable.setForeground(GLOBAL_TABLE_ENTRY_COLOR);
                browserTable.setEnabled(false);
@@ -86,6 +90,9 @@
                final GlobalTableComboBoxModel comboBoxModel = 
(GlobalTableComboBoxModel) tableChooser.getModel();
                comboBoxModel.removeItem(cyTable);
                tableToMetadataMap.remove(cyTable);
+               
+               if(comboBoxModel.getSize() == 0)
+                       tableChooser.setEnabled(false);
        }
 
        
@@ -102,6 +109,9 @@
                
                if(isGlobalTable(newTable))
                        comboBoxModel.addAndSetSelectedItem(newTable);
+               
+               if(tableChooser.getItemCount() != 0)
+                       tableChooser.setEnabled(true);
        }
        
        

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