• Views
  • Iteration Report
  • My Iteration Report
  •  
OMERO.clients
  • Login
  • Help/Guide
  • About Trac
  • Preferences
  • Wiki
  • Timeline
  • Roadmap
  • Browse Source
  • View Tickets
  • Search

Context Navigation

  • ← Previous Change
  • Next Change →

Changeset 5543 for branches/OmeroEditor/src/treeModel/FieldRenderer.java

Show
Ignore:
Timestamp:
07/17/08 16:32:21 (4 months ago)
Author:
will
Message:

Basically working JTree, with custom Rendering, Editing and Selection behavior

Files:
1 modified

  • branches/OmeroEditor/src/treeModel/FieldRenderer.java (modified) (4 diffs)

Legend:

Unmodified
Added
Removed
  • branches/OmeroEditor/src/treeModel/FieldRenderer.java

    r5536 r5543  
    2323package treeModel; 
    2424 
     25//Java imports 
     26 
    2527import java.awt.Component; 
    2628 
    2729import javax.swing.Icon; 
     30import javax.swing.JLabel; 
    2831import javax.swing.JTree; 
     32import javax.swing.tree.DefaultMutableTreeNode; 
    2933import javax.swing.tree.DefaultTreeCellRenderer; 
    30 import javax.swing.tree.TreeCellRenderer; 
    31  
    32 import util.ImageFactory; 
    33  
    34 //Java imports 
    3534 
    3635//Third-party libraries 
    … …  
    3837//Application-internal dependencies 
    3938 
     39import fields.FieldPanel; 
     40import fields.IField; 
     41 
     42 
     43 
    4044/**  
     45 * The Renderer for JTree, to build the "Form" of hierarchical fields. 
    4146 *  
     47 * The getTreeCellRendererComponent() method returns a JPanel, which is  
     48 * used to build the Non-Editable tree UI (before editing starts).  
     49 * This JPanel is created by obtaining the UserObject for the node of 
     50 * the tree. If this is an instance of IField, it is used to create 
     51 * a JPanel. Otherwise it returns a JLabel.  
    4252 * 
    4353 * @author  William Moore      
    … …  
    5161public class FieldRenderer  
    5262        extends DefaultTreeCellRenderer { 
     63         
     64        public FieldRenderer() { 
     65                super(); 
     66        } 
    5367 
    5468        public Component getTreeCellRendererComponent(JTree tree, Object value, 
    … …  
    5670                        boolean hasFocus) { 
    5771                 
    58                         super.getTreeCellRendererComponent( 
    59                 tree, value, selected, 
    60                 expanded, leaf, row, 
    61                 hasFocus); 
    62                          
    63                         Icon bigIcon = ImageFactory.getInstance().getIcon( 
    64                                         ImageFactory.ALARM_ICON_64); 
    65                          
    66                         setIcon(bigIcon); 
    67                          
    68                         return this; 
     72                 
     73                if (value instanceof DefaultMutableTreeNode) { 
     74                        DefaultMutableTreeNode node = (DefaultMutableTreeNode)value; 
     75                        Object object = node.getUserObject(); 
     76                        if (object instanceof IField) { 
     77                                IField field = (IField)object; 
     78                                FieldPanel fieldPanel = new FieldPanel(field, tree, node); 
     79                                 
     80                                 
     81                                //fieldPanel.setTree(tree); 
     82                                //fieldPanel.setTreeNode(node); 
     83                                 
     84                                fieldPanel.setSelected(selected); 
     85                                 
     86                                return fieldPanel; 
     87                        } 
     88                } 
     89                 
     90                System.out.println(value.getClass()); 
     91                return new JLabel(value.toString()); 
    6992        } 
    7093         
     94        public Icon getLeafIcon() { 
     95                return null; 
     96        } 
     97         
     98        public Icon getOpenIcon() { 
     99                return null; 
     100        } 
     101         
     102        public Icon getClosedIcon() { 
     103                return null; 
     104        } 
     105         
     106        public int getIconTextGap() { 
     107                return 0; 
     108        } 
    71109 
    72110} 

Download in other formats:

  • Unified Diff
  • Zip Archive

Trac Powered

Powered by Trac 0.11
By Edgewall Software.

Visit the Trac open source project at
http://trac.edgewall.org/