secondtreepage.java

来自「经典Tapestry教程 经典Tapestry教程」· Java 代码 · 共 101 行

JAVA
101
字号
/*
 * Created on Oct 21, 2004
 *
 */
package tapestrytrees;

import org.apache.tapestry.IEngine;
import org.apache.tapestry.contrib.tree.components.INodeRenderFactory;
import org.apache.tapestry.contrib.tree.model.ITreeDataModel;
import org.apache.tapestry.contrib.tree.model.ITreeModel;
import org.apache.tapestry.contrib.tree.model.ITreeSessionStateManager;
import org.apache.tapestry.contrib.tree.model.ITreeStateListener;
import org.apache.tapestry.contrib.tree.model.ITreeStateModel;
import org.apache.tapestry.contrib.tree.model.TreeStateEvent;
import org.apache.tapestry.contrib.tree.simple.SimpleNodeRenderFactory;
import org.apache.tapestry.contrib.tree.simple.SimpleSessionStateManager;
import org.apache.tapestry.contrib.tree.simple.SimpleTreeModel;
import org.apache.tapestry.contrib.tree.simple.SimpleTreeStateModel;
import org.apache.tapestry.html.BasePage;




/**
 * @author John Reynolds
 *
 */
public class SecondTreePage 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;
    }

	/* (non-Javadoc)
	 * @see org.apache.tapestry.contrib.tree.model.ITreeStateListener#treeStateChanged(org.apache.tapestry.contrib.tree.model.TreeStateEvent)
	 */
	public void treeStateChanged(TreeStateEvent objEvent) {
		System.out.println("TreeStateChanged: " + objEvent.getEventType());
		ITreeStateModel tsm = objEvent.getTreeStateModel();
		if (tsm instanceof SimpleTreeStateModel)
		{
			System.out.println("The ITreeStateModel is a SimpleTreeStateModel");
		}
		tsm.expandPath(objEvent.getNodeUID());
	}
	
	ITreeDataModel getTreeDataModel()
	{
		if(treeDataModel==null)
		{
			StringTreeSource firstTreeSource = new StringTreeSource();
			treeDataModel = firstTreeSource.getTreeDataModel();
		}
		return treeDataModel;
	}
	
	public ITreeModel getTreeModel()
	{
		if(treeModel == null)
		{
			treeModel = new SimpleTreeModel(getTreeDataModel());
			System.out.println("creating SimpleTreeModel");
		} else {
			System.out.println("getting SimpleTreeModel");
		}
		return treeModel;
	}
/*
	ITreeSessionStateManager treeSessionStateManager;
	public ITreeSessionStateManager getTreeSessionStateManager()
	{
		if(treeSessionStateManager == null)
		{
			treeSessionStateManager = new SimpleSessionStateManager();
			System.out.println("creating SimpleSessionStateManager");
		} else {
			System.out.println("getting SimpleSessionStateManager");
		}
		return treeSessionStateManager;
	}
*/
	public ITreeStateListener getTreeStateListener(){
		return this;
	}
/*
    public INodeRenderFactory getNodeRenderFactory() {
		System.out.println("creating SimpleNodeRenderFactory");
		return new SimpleNodeRenderFactory();
    }
*/
}

⌨️ 快捷键说明

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