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