package com.vci.client.uif.engine.client.compare.dialog.treenode; import javax.swing.tree.DefaultMutableTreeNode; /** * 树节点 * @author VCI-STGK006 * */ public class CompareTreeNode extends DefaultMutableTreeNode { /** * serialVersionUID */ private static final long serialVersionUID = -2984056831085506041L; /** * 节点显示名称 */ private String showName = null; /** * 构造器 */ public CompareTreeNode() { super(); } /** * 构造器 * @param userObject */ public CompareTreeNode(String userObject) { super(userObject); } /** * 构造器 * @param userObject */ public CompareTreeNode(TreeNodeObject userObject) { super(userObject); userObject.setOwnedTreeNode(this); } /** * 构造器 * @param showName 显示名称 * @param userObject */ public CompareTreeNode(String showName, TreeNodeObject userObject) { super(userObject); this.showName = showName; userObject.setOwnedTreeNode(this); } /** * 构造器 * @param userObject * @param allowsChildren */ public CompareTreeNode(TreeNodeObject userObject, boolean allowsChildren) { super(userObject, allowsChildren); userObject.setOwnedTreeNode(this); } @Override public void setUserObject(Object userObject) { if(userObject != null && userObject instanceof TreeNodeObject) { throw new IllegalArgumentException("数据类型错误 : " + userObject.getClass().getName()); } if(this.getUserObject() != null) { ((CompareTreeNode)getUserObject()).remove(this); } super.setUserObject(userObject); TreeNodeObject tno = (TreeNodeObject) userObject; tno.setOwnedTreeNode(this); } /** * 得到显示名称 * @return */ public String getShowName() { return showName; } /** * 设置显示名称 * * @param showName 设置 showName为null时,将返回userObject.toString(); */ public void setShowName(String showName) { this.showName = showName; } @Override public String toString() { if(this.showName == null) { return getUserObject().toString(); } else { return this.showName; } } }