Author: kono
Date: 2009-07-07 15:24:56 -0700 (Tue, 07 Jul 2009)
New Revision: 17262

Added:
   http:/chianti.ucsd.edu/svn/csplugins/trunk/ucsd/kono/NetworkBrowser/images/
   
http:/chianti.ucsd.edu/svn/csplugins/trunk/ucsd/kono/NetworkBrowser/src/org/cytoscape/view/ui/networkpanel/ImageFactory.java
   
http:/chianti.ucsd.edu/svn/csplugins/trunk/ucsd/kono/NetworkBrowser/src/org/cytoscape/view/ui/networkpanel/internal/NetworkTreeTableModel.java
Modified:
   
http:/chianti.ucsd.edu/svn/csplugins/trunk/ucsd/kono/NetworkBrowser/src/org/cytoscape/view/ui/networkpanel/NetworkBrowserPlugin.java
   
http:/chianti.ucsd.edu/svn/csplugins/trunk/ucsd/kono/NetworkBrowser/src/org/cytoscape/view/ui/networkpanel/internal/NetworkBrowserImpl.java
   
http:/chianti.ucsd.edu/svn/csplugins/trunk/ucsd/kono/NetworkBrowser/src/org/cytoscape/view/ui/networkpanel/internal/cellrenderer/ImageCellRenderer.java
Log:
Still under design phase.  Need to figure out how to handle parent-child 
relationships.

Added: 
http:/chianti.ucsd.edu/svn/csplugins/trunk/ucsd/kono/NetworkBrowser/src/org/cytoscape/view/ui/networkpanel/ImageFactory.java
===================================================================
--- 
http:/chianti.ucsd.edu/svn/csplugins/trunk/ucsd/kono/NetworkBrowser/src/org/cytoscape/view/ui/networkpanel/ImageFactory.java
                                (rev 0)
+++ 
http:/chianti.ucsd.edu/svn/csplugins/trunk/ucsd/kono/NetworkBrowser/src/org/cytoscape/view/ui/networkpanel/ImageFactory.java
        2009-07-07 22:24:56 UTC (rev 17262)
@@ -0,0 +1,13 @@
+package org.cytoscape.view.ui.networkpanel;
+
+import java.awt.Image;
+
+public interface ImageFactory {
+       
+       public Image getImage(Object viewObject);
+       
+       // For adding/removing OSGi services.  Will be used in 3.0
+       public void addImageRenderer();
+       public void removeImageRenderer();
+
+}

Modified: 
http:/chianti.ucsd.edu/svn/csplugins/trunk/ucsd/kono/NetworkBrowser/src/org/cytoscape/view/ui/networkpanel/NetworkBrowserPlugin.java
===================================================================
--- 
http:/chianti.ucsd.edu/svn/csplugins/trunk/ucsd/kono/NetworkBrowser/src/org/cytoscape/view/ui/networkpanel/NetworkBrowserPlugin.java
        2009-07-07 22:00:39 UTC (rev 17261)
+++ 
http:/chianti.ucsd.edu/svn/csplugins/trunk/ucsd/kono/NetworkBrowser/src/org/cytoscape/view/ui/networkpanel/NetworkBrowserPlugin.java
        2009-07-07 22:24:56 UTC (rev 17262)
@@ -1,8 +1,12 @@
 package org.cytoscape.view.ui.networkpanel;
 
+import java.util.ArrayList;
+import java.util.List;
+
 import javax.swing.SwingConstants;
 
 import org.cytoscape.view.ui.networkpanel.internal.NetworkBrowserImpl;
+import org.jdesktop.swingx.treetable.DefaultMutableTreeTableNode;
 import org.jdesktop.swingx.treetable.DefaultTreeTableModel;
 
 import com.vlsolutions.swing.docking.DockingDesktop;
@@ -11,6 +15,12 @@
 import cytoscape.plugin.CytoscapePlugin;
 import cytoscape.view.cytopanels.CytoPanel;
 
+/**
+ * In 3.0, this setting will be done by Spring.
+ * 
+ * @author kono
+ *
+ */
 public class NetworkBrowserPlugin extends CytoscapePlugin {
        
        private NetworkBrowserImpl browser;
@@ -19,12 +29,29 @@
        
        public NetworkBrowserPlugin() {
                
-               model = new DefaultTreeTableModel();
+               model = buildModel();
                browser = new NetworkBrowserImpl(model);
                //desk = new DockingDesktop();
                //desk.addDockable(browser);
                final CytoPanel cytoPanel = 
Cytoscape.getDesktop().getCytoPanel(SwingConstants.WEST);
                cytoPanel.add("Network Browser", browser);
        }
+       
+       public DefaultTreeTableModel buildModel() {
+               DefaultTreeTableModel newModel = new DefaultTreeTableModel();
+               final List<String> columnIDs = new ArrayList<String>();
+               columnIDs.add("Network");
+               columnIDs.add("Image");
+               columnIDs.add("Nodes");
+               columnIDs.add("Edges");
+               
+               newModel.setColumnIdentifiers(columnIDs);
+               
+               DefaultMutableTreeTableNode root = new 
DefaultMutableTreeTableNode();
+               root.setValueAt("Networks", 0);
+               newModel.setRoot(root);
+               return newModel;
+       }
+       
 
 }

Modified: 
http:/chianti.ucsd.edu/svn/csplugins/trunk/ucsd/kono/NetworkBrowser/src/org/cytoscape/view/ui/networkpanel/internal/NetworkBrowserImpl.java
===================================================================
--- 
http:/chianti.ucsd.edu/svn/csplugins/trunk/ucsd/kono/NetworkBrowser/src/org/cytoscape/view/ui/networkpanel/internal/NetworkBrowserImpl.java
 2009-07-07 22:00:39 UTC (rev 17261)
+++ 
http:/chianti.ucsd.edu/svn/csplugins/trunk/ucsd/kono/NetworkBrowser/src/org/cytoscape/view/ui/networkpanel/internal/NetworkBrowserImpl.java
 2009-07-07 22:24:56 UTC (rev 17262)
@@ -21,6 +21,13 @@
        public NetworkBrowserImpl(AbstractTreeTableModel model) {
                this.model = model;
                initComponents();
+               
+               networkTreeTable.setTreeTableModel(model);
+               networkTreeTable.setRootVisible(true);
+//             networkTreeTable.getColumn("Network").setPreferredWidth(100);
+//             networkTreeTable.getColumn("Nodes").setPreferredWidth(45);
+//             networkTreeTable.getColumn("Edges").setPreferredWidth(45);
+               
        }
 
        /**

Added: 
http:/chianti.ucsd.edu/svn/csplugins/trunk/ucsd/kono/NetworkBrowser/src/org/cytoscape/view/ui/networkpanel/internal/NetworkTreeTableModel.java
===================================================================
--- 
http:/chianti.ucsd.edu/svn/csplugins/trunk/ucsd/kono/NetworkBrowser/src/org/cytoscape/view/ui/networkpanel/internal/NetworkTreeTableModel.java
                              (rev 0)
+++ 
http:/chianti.ucsd.edu/svn/csplugins/trunk/ucsd/kono/NetworkBrowser/src/org/cytoscape/view/ui/networkpanel/internal/NetworkTreeTableModel.java
      2009-07-07 22:24:56 UTC (rev 17262)
@@ -0,0 +1,42 @@
+package org.cytoscape.view.ui.networkpanel.internal;
+
+import org.jdesktop.swingx.treetable.DefaultTreeTableModel;
+
+import cytoscape.groups.CyGroup;
+import cytoscape.groups.CyGroupChangeListener;
+
+public class NetworkTreeTableModel extends DefaultTreeTableModel implements
+               CyGroupChangeListener {
+
+       public NetworkTreeTableModel() {
+
+       }
+
+       public void groupChanged(CyGroup group, ChangeType change) {
+               if (change == CyGroupChangeListener.ChangeType.GROUP_CREATED) {
+                       groupCreated(group);
+
+               } else if (change == 
CyGroupChangeListener.ChangeType.GROUP_DELETED) {
+                       groupRemoved(group);
+               } else if (change == 
CyGroupChangeListener.ChangeType.GROUP_MODIFIED) {
+                       groupChanged(group);
+               } else {
+                       System.err.println("unsupported change type: " + 
change);
+               }
+       }
+
+       private void groupCreated(CyGroup group) {
+
+       }
+
+       private void groupChanged(CyGroup group) {
+               // TODO Auto-generated method stub
+
+       }
+
+       private void groupRemoved(CyGroup group) {
+               // TODO Auto-generated method stub
+
+       }
+
+}

Modified: 
http:/chianti.ucsd.edu/svn/csplugins/trunk/ucsd/kono/NetworkBrowser/src/org/cytoscape/view/ui/networkpanel/internal/cellrenderer/ImageCellRenderer.java
===================================================================
--- 
http:/chianti.ucsd.edu/svn/csplugins/trunk/ucsd/kono/NetworkBrowser/src/org/cytoscape/view/ui/networkpanel/internal/cellrenderer/ImageCellRenderer.java
     2009-07-07 22:00:39 UTC (rev 17261)
+++ 
http:/chianti.ucsd.edu/svn/csplugins/trunk/ucsd/kono/NetworkBrowser/src/org/cytoscape/view/ui/networkpanel/internal/cellrenderer/ImageCellRenderer.java
     2009-07-07 22:24:56 UTC (rev 17262)
@@ -1,8 +1,12 @@
 package org.cytoscape.view.ui.networkpanel.internal.cellrenderer;
 
+import java.awt.Color;
 import java.awt.Component;
 import java.awt.Image;
 
+import javax.swing.Icon;
+import javax.swing.ImageIcon;
+import javax.swing.JLabel;
 import javax.swing.JTable;
 
 import org.cytoscape.view.ui.networkpanel.CyTableCellRenderer;
@@ -15,7 +19,22 @@
 
        public Component getTableCellRendererComponent(JTable table, Object 
value,
                        boolean isSelected, boolean hasFocus, int row, int 
column) {
-               return null;
+
+               if (value instanceof Image == false)
+                       return null;
+               
+               final Image image = (Image) value;
+               final JLabel iconCell = new JLabel();
+               final Icon icon = new ImageIcon(image);
+               
+               iconCell.setSize(icon.getIconWidth(), icon.getIconHeight());
+               iconCell.setIcon(icon);
+
+               if(isSelected) {
+                       iconCell.setBackground(Color.red);
+               }
+               
+               return iconCell;
        }
 
 }


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