Package gui

Source Code of gui.JRObjectTreeCellRenderer

package gui;


import java.awt.Component;

import javax.swing.Icon;
import javax.swing.ImageIcon;
import javax.swing.JTree;
import javax.swing.ToolTipManager;
import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.tree.DefaultTreeCellRenderer;

import dao.Controller;
import dao.IViewport;
import dao.IViewportPlot;
import dao.RObject;
import dao.RObjectViewportPlot;
import dao.RObjectViewportTable;


public class JRObjectTreeCellRenderer extends DefaultTreeCellRenderer {
    private ImageIcon iconTable;
    private ImageIcon iconPlot; 
    private ImageIcon iconLatex;
    private ImageIcon iconTableAndLatex;
 
    public JRObjectTreeCellRenderer() {
        this.iconTable = new ImageIcon("./images/i32x32/eval.png");
        this.iconLatex = new ImageIcon("./images/i32x32/tex.png");
        this.iconTableAndLatex = new ImageIcon(
                "./images/i32x32/texeval.png");
       
    }

    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 (leaf /*&& isTutorialBook(value)*/) {
        // setIcon(icon);
        // setToolTipText("This book is in the Tutorial series.");
        // } else {
        // setToolTipText(null); //no tool tip
        // }
        ToolTipManager.sharedInstance().registerComponent(tree);
       
        if (((DefaultMutableTreeNode) value).getLevel() == 1) {
            setIcon(null);
        }
       
        if (((DefaultMutableTreeNode) value).getLevel() == 2) {
            Icon icon = getAccordingIcon(value);

            setIcon(icon);
        }
         
        return this;
    }

    protected Icon getAccordingIcon(Object value) {
      IViewport ro = (IViewport) ((DefaultMutableTreeNode) value).getUserObject();
     
        // TODO: do not set tooltip in icon function
        setToolTipText(ro.getSummaryHtmlString());
        if (ro.getAttachedRObject().isEvaled()
                && (ro.getSweaveTag() != null)) {
            return iconTableAndLatex;
        }
        if (ro.getAttachedRObject().isEvaled()) {
            return iconTable;
        }
        if (ro.isInReport()) {
            return iconLatex;
        }
        return null
       
        /*
        if (((DefaultMutableTreeNode) value).getParent()
                == JRObjectTreePane.getDataFilesNode()) {
           
        }
     
        if (((DefaultMutableTreeNode) value).getParent()
                == JRObjectTreePane.getTablesNode()) {
            RObjectViewportTable ro = Controller.getRTableObjectfromVarname(
                    ((DefaultMutableTreeNode) value).toString(),
                    Controller.getTables(), true);

            setToolTipText(ro.getSummaryHtmlString());
            if (ro.getAttachedRObject().isEvaled()
                    && (ro.getAttachedRObject().getSweaveTag() != null)) {
                return iconTableAndLatex;
            } // TODO combiicon
            if (ro.getAttachedRObject().isEvaled()) {
                return iconTable;
            }
            if ((ro.getAttachedRObject().getSweaveTag() != null)) {
                return iconLatex;
            }
            return null;   
        }
   
        if (((DefaultMutableTreeNode) value).getParent()
                == JRObjectTreePane.getPlotsNode()) {
            IViewportPlot rpo = (IViewportPlot) ((DefaultMutableTreeNode) value).getUserObject();

            setToolTipText(rpo.getSummaryHtmlString());
            if (rpo.getAttachedRObject().isEvaled()
                    && (rpo.getAttachedRObject().getSweaveTag() != null)) {
                return iconTableAndLatex;
            } // TODO combiicon
            if (rpo.getAttachedRObject().isEvaled()) {
                return iconTable;
            }
            if ((rpo.getAttachedRObject().getSweaveTag() != null)) {
                return iconLatex;
            }
            return null;   
        }

        return null; 
    */ 
    }

}
TOP

Related Classes of gui.JRObjectTreeCellRenderer

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.