Author: kono
Date: 2010-02-04 10:41:15 -0800 (Thu, 04 Feb 2010)
New Revision: 19177

Added:
   cytoscape/trunk/src/cytoscape/view/ColumnTypes.java
   cytoscape/trunk/src/cytoscape/view/NetworkTreeNode.java
   cytoscape/trunk/src/cytoscape/view/NetworkTreeTableModel.java
   cytoscape/trunk/src/cytoscape/view/TreeCellRenderer.java
Modified:
   cytoscape/trunk/src/cytoscape/view/NetworkPanel.java
Log:
Big NetworkPanel class is refactored.  Lots of inner classes are moved to top 
level.

Added: cytoscape/trunk/src/cytoscape/view/ColumnTypes.java
===================================================================
--- cytoscape/trunk/src/cytoscape/view/ColumnTypes.java                         
(rev 0)
+++ cytoscape/trunk/src/cytoscape/view/ColumnTypes.java 2010-02-04 18:41:15 UTC 
(rev 19177)
@@ -0,0 +1,27 @@
+package cytoscape.view;
+
+import javax.swing.Icon;
+
+import cytoscape.util.swing.TreeTableModel;
+
+public enum ColumnTypes {
+       NETWORK("Network", TreeTableModel.class), NETWORK_ICONS("Overview",
+                       Icon.class), NODES("Nodes", String.class), 
EDGES("Edges",
+                       String.class);
+
+       private final String displayName;
+       private final Class<?> type;
+
+       private ColumnTypes(final String displayName, final Class<?> type) {
+               this.displayName = displayName;
+               this.type = type;
+       }
+
+       public Class<?> getType() {
+               return type;
+       }
+
+       public String getDisplayName() {
+               return displayName;
+       }
+}

Modified: cytoscape/trunk/src/cytoscape/view/NetworkPanel.java
===================================================================
--- cytoscape/trunk/src/cytoscape/view/NetworkPanel.java        2010-02-04 
18:27:53 UTC (rev 19176)
+++ cytoscape/trunk/src/cytoscape/view/NetworkPanel.java        2010-02-04 
18:41:15 UTC (rev 19177)
@@ -47,11 +47,9 @@
 import java.beans.PropertyChangeListener;
 import java.util.ArrayList;
 import java.util.Enumeration;
-import java.util.HashMap;
 import java.util.Iterator;
 import java.util.LinkedList;
 import java.util.List;
-import java.util.Map;
 import java.util.Set;
 import java.util.TreeSet;
 
@@ -81,7 +79,6 @@
 import javax.swing.table.TableCellRenderer;
 import javax.swing.table.TableColumn;
 import javax.swing.tree.DefaultMutableTreeNode;
-import javax.swing.tree.DefaultTreeCellRenderer;
 import javax.swing.tree.TreeNode;
 import javax.swing.tree.TreePath;
 
@@ -94,9 +91,7 @@
 import cytoscape.data.SelectEventListener;
 import cytoscape.logger.CyLogger;
 import cytoscape.util.CyNetworkNaming;
-import cytoscape.util.swing.AbstractTreeTableModel;
 import cytoscape.util.swing.JTreeTable;
-import cytoscape.util.swing.TreeTableModel;
 import cytoscape.view.cytopanels.BiModalJSplitPane;
 import ding.view.DGraphView;
 
@@ -263,9 +258,9 @@
        
        
        private void resetTable() {
-               
treeTable.getColumn(ColumnModel.NETWORK.getDisplayName()).setPreferredWidth(170);
-               
treeTable.getColumn(ColumnModel.NODES.getDisplayName()).setPreferredWidth(45);
-               
treeTable.getColumn(ColumnModel.EDGES.getDisplayName()).setPreferredWidth(45);
+               
treeTable.getColumn(ColumnTypes.NETWORK.getDisplayName()).setPreferredWidth(170);
+               
treeTable.getColumn(ColumnTypes.NODES.getDisplayName()).setPreferredWidth(45);
+               
treeTable.getColumn(ColumnTypes.EDGES.getDisplayName()).setPreferredWidth(45);
                treeTable.setRowHeight(DEF_ROW_HEIGHT);
        }
        
@@ -283,11 +278,11 @@
        private void showIcons() {
                
                
-               treeTableModel.addColumn(ColumnModel.NETWORK_ICONS, 3);
+               treeTableModel.addColumn(ColumnTypes.NETWORK_ICONS, 3);
                if(iconColumn == null) {
                        iconColumn = new TableColumn(3);
-                       
iconColumn.setIdentifier(ColumnModel.NETWORK_ICONS.getDisplayName());
-                       
iconColumn.setHeaderValue(ColumnModel.NETWORK_ICONS.getDisplayName());
+                       
iconColumn.setIdentifier(ColumnTypes.NETWORK_ICONS.getDisplayName());
+                       
iconColumn.setHeaderValue(ColumnTypes.NETWORK_ICONS.getDisplayName());
                        iconColumn.setCellRenderer(new IconTableCellRenderer());
                }
                treeTable.setRowHeight(NETWORK_ICON_SIZE + 2);
@@ -484,14 +479,6 @@
        }
 
        /**
-        * @deprecated No longer used.  If you need to fire focus, call 
CytoscapeDesktop.setFocus().
-        * will be removed 11/2008.
-        */
-       @Deprecated
-       public void fireFocus(String network_id) {
-       }
-
-       /**
         * This method highlights a network in the NetworkPanel. 
         *
         * @param e DOCUMENT ME!
@@ -553,175 +540,8 @@
                        updateVSMenu();
                }
        }
-
        
-       private enum ColumnModel {
-               NETWORK("Network", TreeTableModel.class), 
NETWORK_ICONS("Overview", Icon.class),
-               NODES("Nodes", String.class), EDGES("Edges", String.class);
-               
-               private final String displayName;
-               private final Class<?> type;
-               
-               private ColumnModel(final String displayName, final Class<?> 
type) {
-                       this.displayName = displayName;
-                       this.type = type;
-               }
-               
-               public Class<?> getType() {
-                       return type;
-               }
-               
-               public String getDisplayName() {
-                       return displayName;
-               }
-       }
-       
-       
-       /**
-        * Inner class that extends the AbstractTreeTableModel
-        */
-       private final class NetworkTreeTableModel extends 
AbstractTreeTableModel {
-               
-               private List<ColumnModel> columnNames;
-               private final Map<String, Icon> networkIcons;
 
-               public NetworkTreeTableModel(Object root) {
-                       super(root);
-                       columnNames = new ArrayList<ColumnModel>();
-                       columnNames.add(ColumnModel.NETWORK);
-                       columnNames.add(ColumnModel.EDGES);
-                       columnNames.add(ColumnModel.NODES);
-                       
-                       networkIcons = new HashMap<String, Icon>();
-               }
-               
-               public void addColumn(final ColumnModel model, final int idx) {
-                       columnNames.add(idx, model);
-               }
-               
-               public void removeColumn(final int idx) {
-                       columnNames.remove(idx);
-               }
-
-               public Object getChild(Object parent, int index) {
-                       final Enumeration<?> tree_node_enum = 
((DefaultMutableTreeNode) getRoot())
-                                                                               
                                                                                
                                                                                
                                                                                
                                                                                
           .breadthFirstEnumeration();
-
-                       while (tree_node_enum.hasMoreElements()) {
-                               DefaultMutableTreeNode node = 
(DefaultMutableTreeNode) tree_node_enum.nextElement();
-
-                               if (node == parent) {
-                                       return node.getChildAt(index);
-                               }
-                       }
-
-                       return null;
-               }
-
-               public int getChildCount(Object parent) {
-                       Enumeration<?> tree_node_enum = 
((DefaultMutableTreeNode) getRoot())
-                                                                               
                                                                                
                                                                                
                                                                                
                                                                                
                          .breadthFirstEnumeration();
-
-                       while (tree_node_enum.hasMoreElements()) {
-                               DefaultMutableTreeNode node = 
(DefaultMutableTreeNode) tree_node_enum.nextElement();
-
-                               if (node == parent) {
-                                       return node.getChildCount();
-                               }
-                       }
-
-                       return 0;
-               }
-
-               public int getColumnCount() {
-                       return columnNames.size();
-               }
-
-               public String getColumnName(int column) {
-                       return columnNames.get(column).getDisplayName();
-               }
-
-               public Class<?> getColumnClass(int column) {
-                       return columnNames.get(column).getType();
-               }
-
-               public Object getValueAt(Object node, int column) {
-                       if (columnNames.get(column).equals(ColumnModel.NETWORK))
-                               return ((DefaultMutableTreeNode) 
node).getUserObject();
-                       else if 
(columnNames.get(column).equals(ColumnModel.NODES)) {
-                               CyNetwork cyNetwork = 
Cytoscape.getNetwork(((NetworkTreeNode) node).getNetworkID());
-
-                               return "" + cyNetwork.getNodeCount() + "(" + 
cyNetwork.getSelectedNodes().size()
-                                      + ")";
-                       } else if 
(columnNames.get(column).equals(ColumnModel.EDGES)) {
-                               CyNetwork cyNetwork = 
Cytoscape.getNetwork(((NetworkTreeNode) node).getNetworkID());
-
-                               return "" + cyNetwork.getEdgeCount() + "(" + 
cyNetwork.getSelectedEdges().size()
-                                      + ")";
-                       } else if 
(columnNames.get(column).equals(ColumnModel.NETWORK_ICONS)) {
-                               
-                               return networkIcons.get(((NetworkTreeNode) 
node).getNetworkID());
-                       }
-
-                       return "";
-               }
-
-
-               public void setValueAt(Object aValue, Object node, int column) 
{                        
-                       if 
(columnNames.get(column).equals(ColumnModel.NETWORK)) {
-                               ((DefaultMutableTreeNode) 
node).setUserObject(aValue);
-                       } else 
if(columnNames.get(column).equals(ColumnModel.NETWORK_ICONS) && aValue 
instanceof Icon) {
-                               networkIcons.put(((NetworkTreeNode) 
node).getNetworkID(), (Icon) aValue);
-                       }
-               }
-       }
-
-       public class NetworkTreeNode extends DefaultMutableTreeNode {
-               protected String network_uid;
-
-               public NetworkTreeNode(Object userobj, String id) {
-                       super(userobj.toString());
-                       network_uid = id;
-               }
-
-               protected void setNetworkID(String id) {
-                       network_uid = id;
-               }
-
-               protected String getNetworkID() {
-                       return network_uid;
-               }
-       }
-
-       private class TreeCellRenderer extends DefaultTreeCellRenderer {
-               
-               private static final long serialVersionUID = 
-678559990857492912L;
-
-               public Component getTreeCellRendererComponent(JTree tree, 
Object value, boolean sel,
-                                                             boolean expanded, 
boolean leaf, int row,
-                                                             boolean hasFocus) 
{
-                       super.getTreeCellRendererComponent(tree, value, sel, 
expanded, leaf, row, hasFocus);
-
-                       if (hasView(value)) {
-                               
setBackgroundNonSelectionColor(java.awt.Color.green.brighter());
-                               
setBackgroundSelectionColor(java.awt.Color.green.darker());
-                       } else {
-                               
setBackgroundNonSelectionColor(java.awt.Color.red.brighter());
-                               
setBackgroundSelectionColor(java.awt.Color.red.darker());
-                       }
-
-                       return this;
-               }
-
-               private boolean hasView(Object value) {
-                       NetworkTreeNode node = (NetworkTreeNode) value;
-                       
setToolTipText(Cytoscape.getNetwork(node.getNetworkID()).getTitle());
-
-                       return Cytoscape.viewExists(node.getNetworkID());
-               }
-       }
-       
-       
        private class IconTableCellRenderer implements TableCellRenderer {
 
                public Component getTableCellRendererComponent(JTable table,

Added: cytoscape/trunk/src/cytoscape/view/NetworkTreeNode.java
===================================================================
--- cytoscape/trunk/src/cytoscape/view/NetworkTreeNode.java                     
        (rev 0)
+++ cytoscape/trunk/src/cytoscape/view/NetworkTreeNode.java     2010-02-04 
18:41:15 UTC (rev 19177)
@@ -0,0 +1,23 @@
+package cytoscape.view;
+
+import javax.swing.tree.DefaultMutableTreeNode;
+
+public class NetworkTreeNode extends DefaultMutableTreeNode {
+       
+       private static final long serialVersionUID = -1504239724666254584L;
+       
+       private String network_uid;
+
+       public NetworkTreeNode(Object userobj, String id) {
+               super(userobj.toString());
+               network_uid = id;
+       }
+
+       protected void setNetworkID(String id) {
+               network_uid = id;
+       }
+
+       protected String getNetworkID() {
+               return network_uid;
+       }
+}
\ No newline at end of file

Added: cytoscape/trunk/src/cytoscape/view/NetworkTreeTableModel.java
===================================================================
--- cytoscape/trunk/src/cytoscape/view/NetworkTreeTableModel.java               
                (rev 0)
+++ cytoscape/trunk/src/cytoscape/view/NetworkTreeTableModel.java       
2010-02-04 18:41:15 UTC (rev 19177)
@@ -0,0 +1,118 @@
+package cytoscape.view;
+
+import java.util.ArrayList;
+import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import javax.swing.Icon;
+import javax.swing.tree.DefaultMutableTreeNode;
+
+import cytoscape.CyNetwork;
+import cytoscape.Cytoscape;
+import cytoscape.util.swing.AbstractTreeTableModel;
+
+/**
+ * Inner class that extends the AbstractTreeTableModel
+ */
+public final class NetworkTreeTableModel extends AbstractTreeTableModel {
+
+       private List<ColumnTypes> columnNames;
+       private final Map<String, Icon> networkIcons;
+
+       public NetworkTreeTableModel(Object root) {
+               super(root);
+               columnNames = new ArrayList<ColumnTypes>();
+               columnNames.add(ColumnTypes.NETWORK);
+               columnNames.add(ColumnTypes.EDGES);
+               columnNames.add(ColumnTypes.NODES);
+
+               networkIcons = new HashMap<String, Icon>();
+       }
+
+       public void addColumn(final ColumnTypes model, final int idx) {
+               columnNames.add(idx, model);
+       }
+
+       public void removeColumn(final int idx) {
+               columnNames.remove(idx);
+       }
+
+       public Object getChild(Object parent, int index) {
+               final Enumeration<?> tree_node_enum = ((DefaultMutableTreeNode) 
getRoot())
+                               .breadthFirstEnumeration();
+
+               while (tree_node_enum.hasMoreElements()) {
+                       DefaultMutableTreeNode node = (DefaultMutableTreeNode) 
tree_node_enum
+                                       .nextElement();
+
+                       if (node == parent) {
+                               return node.getChildAt(index);
+                       }
+               }
+
+               return null;
+       }
+
+       public int getChildCount(Object parent) {
+               Enumeration<?> tree_node_enum = ((DefaultMutableTreeNode) 
getRoot())
+                               .breadthFirstEnumeration();
+
+               while (tree_node_enum.hasMoreElements()) {
+                       DefaultMutableTreeNode node = (DefaultMutableTreeNode) 
tree_node_enum
+                                       .nextElement();
+
+                       if (node == parent) {
+                               return node.getChildCount();
+                       }
+               }
+
+               return 0;
+       }
+
+       public int getColumnCount() {
+               return columnNames.size();
+       }
+
+       public String getColumnName(int column) {
+               return columnNames.get(column).getDisplayName();
+       }
+
+       public Class<?> getColumnClass(int column) {
+               return columnNames.get(column).getType();
+       }
+
+       public Object getValueAt(Object node, int column) {
+               if (columnNames.get(column).equals(ColumnTypes.NETWORK))
+                       return ((DefaultMutableTreeNode) node).getUserObject();
+               else if (columnNames.get(column).equals(ColumnTypes.NODES)) {
+                       CyNetwork cyNetwork = 
Cytoscape.getNetwork(((NetworkTreeNode) node)
+                                       .getNetworkID());
+
+                       return "" + cyNetwork.getNodeCount() + "("
+                                       + cyNetwork.getSelectedNodes().size() + 
")";
+               } else if (columnNames.get(column).equals(ColumnTypes.EDGES)) {
+                       CyNetwork cyNetwork = 
Cytoscape.getNetwork(((NetworkTreeNode) node)
+                                       .getNetworkID());
+
+                       return "" + cyNetwork.getEdgeCount() + "("
+                                       + cyNetwork.getSelectedEdges().size() + 
")";
+               } else if 
(columnNames.get(column).equals(ColumnTypes.NETWORK_ICONS)) {
+
+                       return networkIcons.get(((NetworkTreeNode) 
node).getNetworkID());
+               }
+
+               return "";
+       }
+
+       public void setValueAt(Object aValue, Object node, int column) {
+               if (columnNames.get(column).equals(ColumnTypes.NETWORK)) {
+                       ((DefaultMutableTreeNode) node).setUserObject(aValue);
+               } else if 
(columnNames.get(column).equals(ColumnTypes.NETWORK_ICONS)
+                               && aValue instanceof Icon) {
+                       networkIcons.put(((NetworkTreeNode) 
node).getNetworkID(),
+                                       (Icon) aValue);
+               }
+       }
+}
\ No newline at end of file

Added: cytoscape/trunk/src/cytoscape/view/TreeCellRenderer.java
===================================================================
--- cytoscape/trunk/src/cytoscape/view/TreeCellRenderer.java                    
        (rev 0)
+++ cytoscape/trunk/src/cytoscape/view/TreeCellRenderer.java    2010-02-04 
18:41:15 UTC (rev 19177)
@@ -0,0 +1,37 @@
+package cytoscape.view;
+
+import java.awt.Component;
+
+import javax.swing.JTree;
+import javax.swing.tree.DefaultTreeCellRenderer;
+
+import cytoscape.Cytoscape;
+
+public class TreeCellRenderer extends DefaultTreeCellRenderer {
+
+       private static final long serialVersionUID = -678559990857492912L;
+
+       public Component getTreeCellRendererComponent(JTree tree, Object value,
+                       boolean sel, boolean expanded, boolean leaf, int row,
+                       boolean hasFocus) {
+               super.getTreeCellRendererComponent(tree, value, sel, expanded, 
leaf,
+                               row, hasFocus);
+
+               if (hasView(value)) {
+                       
setBackgroundNonSelectionColor(java.awt.Color.green.brighter());
+                       
setBackgroundSelectionColor(java.awt.Color.green.darker());
+               } else {
+                       
setBackgroundNonSelectionColor(java.awt.Color.red.brighter());
+                       
setBackgroundSelectionColor(java.awt.Color.red.darker());
+               }
+
+               return this;
+       }
+
+       private boolean hasView(Object value) {
+               NetworkTreeNode node = (NetworkTreeNode) value;
+               
setToolTipText(Cytoscape.getNetwork(node.getNetworkID()).getTitle());
+
+               return Cytoscape.viewExists(node.getNetworkID());
+       }
+}
\ No newline at end of file

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