⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dockingnode.java

📁 定要上载质量高而定要上载质量高而定要上载质量高而定要上载质量高而定要上载质量高而
💻 JAVA
字号:
/*
 * Created on May 28, 2005
 */
package org.flexdock.docking.state.tree;

import java.util.Enumeration;

import javax.swing.tree.DefaultMutableTreeNode;

import org.flexdock.docking.DockingConstants;
import org.flexdock.docking.state.LayoutNode;

/**
 * @author Christopher Butler
 */
public abstract class DockingNode extends DefaultMutableTreeNode implements LayoutNode, DockingConstants {

	public Object getUserObject() {
		Object obj = super.getUserObject();
		if(obj==null) {
			obj = getDockingObject();
			setUserObject(obj);
		}
		return obj;
	}

	public abstract Object getDockingObject();

    protected abstract DockingNode shallowClone();
	
	public Object clone() {
		return deepClone();
	}
	
	public DockingNode deepClone() {
		DockingNode clone = shallowClone();
		for(Enumeration en=children(); en.hasMoreElements();) {
			DockingNode child = (DockingNode)en.nextElement();
			clone.add(child.deepClone());
		}
		return clone;		
	}
    
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -