package com.vci.client.framework.systemConfig.stafforgmanage; import java.awt.Component; import javax.swing.JTree; import javax.swing.ToolTipManager; import javax.swing.tree.DefaultTreeCellRenderer; import com.vci.client.common.objects.DeptObject; import com.vci.client.common.objects.RoleObject; import com.vci.client.common.objects.UserObject; import com.vci.client.framework.systemConfig.object.PasswordStrategyObject; import com.vci.client.ui.image.BundleImage; import com.vci.client.ui.tree.VCIBaseTreeNode; import com.vci.client.workflow.template.object.TasksAssignedObject; /** *
Title: RightManagementTreeCellRenderer
*Description: 人员组织树节点显示
*Copyright: Copyright (c) 2012
*Company: VCI
* @author wangxl * @time 2012-5-9 * @version 1.0 */ public class RightManagementTreeCellRenderer extends DefaultTreeCellRenderer { private static final long serialVersionUID = 8393197719527584042L; public RightManagementTreeCellRenderer() { } 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); try { ToolTipManager.sharedInstance().registerComponent(tree); VCIBaseTreeNode node = (VCIBaseTreeNode)value; if (node.getObj().equals("root")) { //根节点 setIcon(new BundleImage().createImageIcon ("grouplist.gif")); } else if (node.getObj() instanceof DeptObject) {//部门 setIcon(new BundleImage().createImageIcon ("book.png")); } else if (node.getObj() instanceof RoleObject) {//角色 setIcon(new BundleImage().createImageIcon ("star.png")); } else if (node.getObj() instanceof UserObject) {//成员 setIcon(new BundleImage().createImageIcon ("user_suit.png")); } else if (node.getObj() instanceof PasswordStrategyObject){ //密码策略 setIcon(new BundleImage().createImageIcon ("folder_wrench.png")); } else if (node.getObj() instanceof TasksAssignedObject){ //代办人配置 setIcon(new BundleImage().createImageIcon ("group_go.png")); } } catch (Exception e) { e.printStackTrace(); } return this; } }