Author: pwang
Date: 2009-04-01 10:33:23 -0700 (Wed, 01 Apr 2009)
New Revision: 16377

Modified:
   
csplugins/trunk/ucsd/pwang/cyprovision/org.eclipse.equinox.p2.ui2/src/org/eclipse/equinox/internal/provisional/p2/ui2/dialogs/CheckBoxTreeCellRenderer.java
Log:
Add a new method clearCheckedPaths() to reset the chedkedPath

Modified: 
csplugins/trunk/ucsd/pwang/cyprovision/org.eclipse.equinox.p2.ui2/src/org/eclipse/equinox/internal/provisional/p2/ui2/dialogs/CheckBoxTreeCellRenderer.java
===================================================================
--- 
csplugins/trunk/ucsd/pwang/cyprovision/org.eclipse.equinox.p2.ui2/src/org/eclipse/equinox/internal/provisional/p2/ui2/dialogs/CheckBoxTreeCellRenderer.java
 2009-04-01 17:19:30 UTC (rev 16376)
+++ 
csplugins/trunk/ucsd/pwang/cyprovision/org.eclipse.equinox.p2.ui2/src/org/eclipse/equinox/internal/provisional/p2/ui2/dialogs/CheckBoxTreeCellRenderer.java
 2009-04-01 17:33:23 UTC (rev 16377)
@@ -15,6 +15,7 @@
 */
 import java.awt.BasicStroke;
 import java.awt.BorderLayout;
+import java.awt.Color;
 import java.awt.Component;
 import java.awt.ComponentOrientation;
 import java.awt.Dimension;
@@ -38,7 +39,7 @@
 import javax.swing.AbstractAction;
 import javax.swing.Icon;
 import javax.swing.JCheckBox;
-import javax.swing.JComponent;
+//import javax.swing.JComponent;
 import javax.swing.JFrame;
 import javax.swing.JLabel;
 import javax.swing.JScrollPane;
@@ -47,14 +48,26 @@
 import javax.swing.KeyStroke;
 import javax.swing.SwingUtilities;
 import javax.swing.UIManager;
-import javax.swing.tree.DefaultTreeCellRenderer;
+//import javax.swing.tree.DefaultTreeCellRenderer;
 import javax.swing.tree.TreeCellRenderer;
 import javax.swing.tree.TreePath;
+import javax.swing.tree.DefaultTreeCellRenderer;
+import javax.swing.tree.TreeNode;
+import javax.swing.tree.DefaultMutableTreeNode;
+import javax.swing.ImageIcon;
+import java.awt.Image;
 
+import org.eclipse.equinox.internal.p2.ui2.model.AvailableIUElement;
+import org.eclipse.equinox.internal.p2.ui2.model.ProvElement;
+
+
+
 /** Provides checkbox-based selection of tree nodes.  Override the protected
  * methods to adapt this renderer's behavior to your local tree table flavor.
  * No change listener notifications are provided.
  */
+//public class CheckBoxTreeCellRenderer extends DefaultTreeCellRenderer {
+
 public class CheckBoxTreeCellRenderer implements TreeCellRenderer {
     
     public static final int UNCHECKABLE = 0;
@@ -72,7 +85,7 @@
     private Set checkedPaths;
     private JTree tree;
     private MouseHandler handler;
-
+    
     /** Create a per-tree instance of the checkbox renderer. */
     public CheckBoxTreeCellRenderer(JTree tree, TreeCellRenderer original) {
         this.tree = tree;
@@ -135,11 +148,11 @@
         return tree.getRowForPath(path);
     }
     
-    protected void repaint(Rectangle r) {
+    public void repaint(Rectangle r) {
         tree.repaint(r);
     }
     
-    protected void repaint() {
+    public void repaint() {
         tree.repaint();
     }
     
@@ -150,7 +163,8 @@
     }
     
     public Component getTreeCellRendererComponent(JTree tree, Object value, 
boolean selected, boolean expanded, boolean leaf, int row, boolean hasFocus) {
-        installMouseHandler();
+        
+       installMouseHandler();
         TreePath path = getPathForRow(row);
         state = UNCHECKABLE; 
         if (path != null) {
@@ -170,12 +184,16 @@
         checkBox.getModel().setRollover(mouseRow == row && mouseInCheck);
 
         Component c = renderer.getTreeCellRendererComponent(tree, value, 
selected, expanded, leaf, row, hasFocus);
+        
         checkBox.setForeground(c.getForeground());
+        checkBox.setBackground(c.getBackground());
+        
         if (c instanceof JLabel) {
             JLabel label = (JLabel)c;
             // Augment the icon to include the checkbox
             label.setIcon(new CompoundIcon(label.getIcon()));
         }
+
         return c;
     }
     
@@ -313,6 +331,10 @@
         return (TreePath[]) checkedPaths.toArray(new 
TreePath[checkedPaths.size()]);
     }
     
+    public void clearCheckedPaths(){
+       checkedPaths = new HashSet();
+    }
+    
     protected class MouseHandler extends MouseAdapter implements 
MouseMotionListener {
         public void mouseEntered(MouseEvent e) {
             updateMouseLocation(e.getPoint());
@@ -428,7 +450,7 @@
             checked += paths[i] + "\n";
         }
         return checked;
-    }
+    } 
     
     public static void main(String[] args) {
         try {


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