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

📄 firsttreepage.java

📁 经典Tapestry教程 经典Tapestry教程
💻 JAVA
字号:
/*
 * Created on Oct 21, 2004
 *
 */
package tapestrytrees;

import org.apache.tapestry.IEngine;
import org.apache.tapestry.contrib.tree.components.TreeView;
import org.apache.tapestry.contrib.tree.model.ITreeDataModel;
import org.apache.tapestry.contrib.tree.model.ITreeModel;
import org.apache.tapestry.contrib.tree.model.ITreeStateListener;
import org.apache.tapestry.contrib.tree.model.TreeStateEvent;
import org.apache.tapestry.contrib.tree.simple.SimpleTreeDataModel;
import org.apache.tapestry.contrib.tree.simple.SimpleTreeModel;
import org.apache.tapestry.contrib.tree.simple.TreeNode;
import org.apache.tapestry.html.BasePage;

/**
 * @author John Reynolds
 *  
 */
public class FirstTreePage extends BasePage implements ITreeStateListener {
	private ITreeDataModel treeDataModel;

	private ITreeModel treeModel;

	private Object value;

	public void attach(IEngine value) {
		super.attach(value);
	}

	public void detach() {
		super.detach();
		treeDataModel = null;
		value = null;
	}

	public ITreeStateListener getTreeStateListener() {
		return this;
	}

	/*
	 * @see org.apache.tapestry.contrib.tree.model.ITreeStateListener#treeStateChanged(org.apache.tapestry.contrib.tree.model.TreeStateEvent)
	 */
	public void treeStateChanged(TreeStateEvent objEvent) {
        // Get the StringTreeNode object that was selected 
        TreeView treeView = (TreeView)getComponent("treeView");
        if(treeView != null){
            ITreeDataModel thisTreeDataModel = treeView.getTreeModel().getTreeDataModel();
            Object selectedNode = thisTreeDataModel.getObject(objEvent.getNodeUID());
            if(selectedNode instanceof StringTreeNode){
               lastNodeSelectedValue = ((StringTreeNode)selectedNode).getValue();
            }
        } else { // This shouldn't happen
            lastNodeSelectedValue = objEvent.getNodeUID().toString();
        }
	}

    String lastNodeSelectedValue;
    public String getLastNodeSelectedMsg()
    {
        if(lastNodeSelectedValue==null){
            return null;
        }
        return lastNodeSelectedValue + " was the last node selected.";
    }
    
	ITreeDataModel getTreeDataModel() {
		if (treeDataModel == null) {
			StringTreeSource firstTreeSource = new StringTreeSource();
			treeDataModel = firstTreeSource.getTreeDataModel();
		}
		return treeDataModel;
	}
    /**
     * Get the TreeModel that contains the nodes to be rendered
     * 
     * @return ITreeModel
     */
     public ITreeModel getTreeModel() {
         if (treeModel == null) {
            System.out.println("creating SimpleTreeModel");

            // Create and "connect" all the nodes
            TreeNode node1 = new StringTreeNode("Root Node");
            TreeNode node2 = new StringTreeNode("Child One");
            TreeNode node2a = new StringTreeNode("Grandchild One");
            node2.insert(node2a);
            node1.insert(node2);
            TreeNode node3 = new StringTreeNode("Child Two");
            TreeNode node3a = new StringTreeNode("GrandChild Two");
            node3.insert(node3a);
            TreeNode node3a1 = new StringTreeNode("Great Grandchild One");
            node3a.insert(node3a1);
            node1.insert(node3);

            // Wrap the root node in a SimpleTreeDataModel
            treeDataModel = new SimpleTreeDataModel(node1);
            // Wrap the SimpleTreeDataModel in a SimpleTreeModel
            treeModel = new SimpleTreeModel(treeDataModel);
         }
         return treeModel;
     }
}

⌨️ 快捷键说明

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