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

📄 treetag.java

📁 管理公司合同
💻 JAVA
字号:
/*
 * Created on 2006-7-4 17:00:05
 *
 * By SinoBest
 * Copyright hnisi.com.cn, 2005-2006, All rights reserved.
 */

package cn.com.juneng.system.common.taglib.tree;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import javax.servlet.jsp.JspException;

import cn.com.juneng.system.common.taglib.HtmlTag;

/**
 * @author yehailong
 * 
 */

public class TreeTag extends HtmlTag {

	private ITreeNode root;

	private ITreeService treeService;

	private String treeName;

	private String selectType;

	private boolean selectAll;

	private String checkedId;

	private boolean expand;

	private boolean lazy;

	public String getCheckedId() {
		return checkedId;
	}

	public void setCheckedId(String checkedId) {
		this.checkedId = checkedId;
	}

	public boolean isExpand() {
		return expand;
	}

	public void setExpand(boolean expand) {
		this.expand = expand;
	}

	public boolean isLazy() {
		return lazy;
	}

	public void setLazy(boolean lazy) {
		this.lazy = lazy;
	}

	public ITreeNode getRoot() {
		return root;
	}

	public void setRoot(ITreeNode root) {
		this.root = root;
	}

	public boolean isSelectAll() {
		return selectAll;
	}

	public void setSelectAll(boolean selectAll) {
		this.selectAll = selectAll;
	}

	public String getSelectType() {
		return selectType;
	}

	public void setSelectType(String selectType) {
		this.selectType = selectType;
	}

	public String getTreeName() {
		return treeName;
	}

	public void setTreeName(String treeName) {
		this.treeName = treeName;
	}

	public ITreeService getTreeService() {
		return treeService;
	}

	public void setTreeService(ITreeService treeService) {
		this.treeService = treeService;
	}

	public int doStartTag() throws JspException {
		HttpServletResponse response = (HttpServletResponse) pageContext
				.getResponse();
		response.setHeader("Pragma", "No-cache");// HTTP 1.1
		response.setHeader("Cache-Control", "no-cache");// HTTP 1.0
		response.setHeader("Expires", "0");// 防止被proxy
		response.setDateHeader("Expires", (new java.util.Date(0)).getTime());

		outputWebFxTree();
		return SKIP_BODY;
	}

	public int doEndTag() throws JspException {
		this.cleanUp();
		try {
			// super.getOutput().flush();
		} catch (Exception e) {
			// ignore
		}
		return EVAL_PAGE;
	}

	// WebFxTree
	private void outputWebFxTree() throws JspException {
		HttpServletRequest request = (HttpServletRequest) pageContext
				.getRequest();
		println("<script src=\"" + request.getContextPath()
				+ "/common/tree/jsre.js\"></script>");

		println("<script  language=\"javascript\">");

		println("_import(\"com.eae.webfx.xtree.WebFXLoadTree\");");
		println("_import(\"com.eae.webfx.xtree.WebFXTree\");");
		println("_import(\"com.eae.webfx.xtree.WebFXTreeItem\");");
		println("_import(\"com.eae.webfx.xtree.WebFXUtil\");");
		println("_import(\"com.eae.webfx.xtree.WebFXTreeHandler\");");
		println("</script>");

		println("<script type=\"text/javascript\">");
		// ServletRequest request = pageContext.getRequest();
		HttpSession session = pageContext.getSession();
		session.setAttribute("TreeService", this.getTreeService());
		if (root != null) {
			session.setAttribute("ParentNode", root);
		} else {
			session.removeAttribute("ParentNode");
		}
          			
		println("var atree = new WebFXLoadTree(\"" + treeName + "\",\""
				+ request.getContextPath() + "/treexml?time="
				+ System.currentTimeMillis() + "&lazy=" + this.lazy + ""
				+ (checkedId == null ? "" : "&checkedId=" + checkedId + "")
				+ "\");");
         
		println("atree.build()");
		if (this.selectType != null) {
			println("WebFXUtil.setSelectType(\"" + this.selectType + "\");");
		}
		println("WebFXUtil.setSelectAll(" + this.selectAll + ");");
		println("atree.onCheck = function (node, tree)");
		println("{");
		println("node.checkit();");
		println("}");
		println("function selectNode(){}");
		println("var expandFlag = false;");
		println("document.ondblclick=function(){");
		println("if(!expandFlag){");
		println("try{atree.expandAll();}catch(e){}");
		println("expandFlag = true;");
		println("}else{");
		println("try{atree.collapseAll();}catch(e){}");
		println("expandFlag = false;");
		println("}");
		println("}");
		// this.expand = false;
		if(!this.expand&&!lazy){
			this.expand = true;
		}
		if (this.expand) {
			println("var timer;\r\n");
			println("function lookup(){\r\n");
			println("if(timer)clearTimeout(timer);\r\n");
			println("window.status='start to expand the tree...'");
			println("timer=setTimeout(goLookup,1000);\r\n");
			println("}\r\n");
			println("function goLookup(){\r\n");
			println("window.status=new Date();\r\n");
			println("atree.expandAll();\r\n");
			println("window.status='expand the tree is ok!'");
			println("expandFlag = true;\r\n");
			println("}\r\n");
			println("lookup();\r\n");
		}
		println("window.onerror = function fnErrorTrap(sMsg,sUrl,sLine){\r\n");
		println("if(sMsg == \"由于该控件目前不可见、未启用或其类型不允许,因此无法将焦点移向它。\"){\r\n");
		println("return true;\r\n");
		println("}\r\n");
		println("return false;\r\n");
		println("}\r\n");

		println("</script>");
	}

	public void cleanUp() {

	}

}

⌨️ 快捷键说明

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