view src/treecms/proto/test/EditableTreeBuilderTest1.java @ 22:92637ef791b7

added MergedTreeBuilder.java
author ShoshiTAMAKI
date Sat, 23 Oct 2010 01:14:45 +0900
parents cce963b8a4fd
children 99346c04a3cf
line wrap: on
line source

package treecms.proto.test;

import java.util.Iterator;

import treecms.proto.edit.*;
import treecms.proto.api.*;
import treecms.proto.simple.*;

public class EditableTreeBuilderTest1 
{
	public static void main(String _args[])
	{
		TreeBuilder builder = new SimpleTreeBuilder();
		Node root = builder.getContents();
		root.setTitle("root");
		
		Node child1 = builder.createNode();
		child1.setTitle("+-child1");
		Node child2 = builder.createNode();
		child2.setTitle("+-child2");
		
		root.addChild(child1);
		root.addChild(child2);
		
		Node child11 = builder.createNode(); 
		child11.setTitle(" +-child11");
		Node child12 = builder.createNode();
		child12.setTitle(" +-child12");
		Node child13 = builder.createNode();
		child13.setTitle(" +-child13");
		
		child1.addChild(child11);
		child1.addChild(child12);
		child1.addChild(child13);
		
		Node child21 = builder.createNode();
		child21.setTitle(" +-child21");
		
		child2.addChild(child21);
		
		Node child211 = builder.createNode();
		child211.setTitle("  +-child211");
		Node child212 = builder.createNode();
		child212.setTitle("  +-child212");
		
		child21.addChild(child211);
		child21.addChild(child212);
	
		//i want to edit child22
		
		System.out.println("original");
		PreOrderTreeWalkerRecursive walker = new PreOrderTreeWalkerRecursive(builder.getContents());
		for(Node node : walker){
			System.out.println(node.getTitle() + "\t\tID:" + node.getID());
		}
		
		
		System.out.println("clonedtree");
		
		//check that tree correctly copied.
		EditableTreeBuilder builder2 = new EditableTreeBuilder(child212,builder);
		builder2.getTargetNode().setTitle("cloned child212");
		walker = new PreOrderTreeWalkerRecursive(builder2.getContents());
		for(Node node : walker){
			System.out.println(node.getTitle() + "\t\tID:" + node.getID());
		}
	}
}