package testingapplication.menu;

import com.softaspects.framework.galileo.components.menu.MenuItem;
import com.softaspects.framework.galileo.components.menu.MenuItemImpl;

/**
 * Title: MenuDataModelBean
 * Description: Data model for the Menu component sample
 */
public class MenuDataModelBean extends MenuItemImpl
{
	/**
	 * Constructor - model assembling	
	 */
	public MenuDataModelBean()
	{
		super();
		this.addElement(createFirstMenu());
		this.addElement(createSecondMenu());
		this.addElement(createThirdMenu());
		this.addElement(createFourthMenu());
	}

	/**
	 * Assembling of the first submenu
	 * @return com.softaspects.framework.galileo.components.menu.MenuItem
	 */
	private MenuItem createFirstMenu()
	{
		MenuItem example1 = new MenuItemImpl();
		example1.setIndex("0");
		example1.setData("Example1");
		example1.setText("Example1");
		example1.setWidth("100");

		MenuItem example2 = new MenuItemImpl();
		example2.setIndex("0");
		example2.setData("Example2");
		example2.setText("Example2");
		example1.addElement(example2);

		MenuItem example3 = new MenuItemImpl();
		example3.setIndex("1");
		example3.setData("Example3");
		example3.setText("Example3");
		example3.setWidth("100");

		MenuItem example4 = new MenuItemImpl();
		example4.setIndex("0");
		example4.setData("Example4");
		example4.setText("Example4");

		MenuItem example5 = new MenuItemImpl();
		example5.setIndex("0");
		example5.setData("Example5");
		example5.setText("Example5");
		example4.addElement(example5);

		MenuItem example6 = new MenuItemImpl();
		example6.setIndex("1");
		example6.setData("Example6");
		example6.setText("Example6");
		example4.addElement(example6);

		example3.addElement(example4);

		MenuItem example7 = new MenuItemImpl();
		example7.setIndex("1");
		example7.setData("Example7");
		example7.setText("Example7");

		MenuItem example8 = new MenuItemImpl();
		example8.setIndex("0");
		example8.setData("Example8");
		example8.setText("Example8");
		example7.addElement(example8);

		MenuItem example9 = new MenuItemImpl();
		example9.setIndex("1");
		example9.setData("Example9");
		example9.setText("Example9");
		example7.addElement(example9);

		example3.addElement(example7);

		example1.addElement(example3);

		return example1;
	}

	/**
	 * Assembling of the second submenu
	 * @return com.softaspects.framework.galileo.components.menu.MenuItem
	 */
	private MenuItem createSecondMenu()
	{
		MenuItem example10 = new MenuItemImpl();
		example10.setIndex("1");
		example10.setData("Example10");
		example10.setText("Example10");
		example10.setWidth("100");

		MenuItem example11 = new MenuItemImpl();
		example11.setIndex("0");
		example11.setData("Example11");
		example11.setText("Example11");
		example10.addElement(example11);

		MenuItem example12 = new MenuItemImpl();
		example12.setIndex("1");
		example12.setData("Example12");
		example12.setText("Example12");
		example10.addElement(example12);

		MenuItem example13 = new MenuItemImpl();
		example13.setIndex("2");
		example13.setData("Example13");
		example13.setText("Example13");
		example10.addElement(example13);

		MenuItem example14 = new MenuItemImpl();
		example14.setIndex("3");
		example14.setData("Example14");
		example14.setText("Example14");
		example10.addElement(example14);

		MenuItem example15 = new MenuItemImpl();
		example15.setIndex("4");
		example15.setData("Example15");
		example15.setText("Example15");
		example10.addElement(example15);

		return example10;
	}

	/**
	 * Assembling of the third submenu
	 * @return com.softaspects.framework.galileo.components.menu.MenuItem
	 */
	private MenuItem createThirdMenu()
	{
		MenuItem example16 = new MenuItemImpl();
		example16.setIndex("2");
		example16.setData("Example16");
		example16.setText("Example16");
		example16.setWidth("110");

		MenuItem example17 = new MenuItemImpl();
		example17.setIndex("0");
		example17.setData("Example17");
		example17.setText("Example17");
		example16.addElement(example17);

		MenuItem example18 = new MenuItemImpl();
		example18.setIndex("1");
		example18.setData("Example18");
		example18.setText("Example18");
		example16.addElement(example18);

		return example16;

	}

	/**
	 * Assembling of the fourth submenu
	 * @return com.softaspects.framework.galileo.components.menu.MenuItem
	 */
	private MenuItem createFourthMenu()
	{
		MenuItem example19 = new MenuItemImpl();
		example19.setIndex("3");
		example19.setData("Example19");
		example19.setText("Example19");
		example19.setWidth("90");

		MenuItem example20 = new MenuItemImpl();
		example20.setIndex("0");
		example20.setData("Example20");
		example20.setText("Example20");
		example19.addElement(example20);

		MenuItem example21 = new MenuItemImpl();
		example21.setIndex("1");
		example21.setData("Example21");
		example21.setText("Example21");
		example19.addElement(example21);

		MenuItem example22 = new MenuItemImpl();
		example22.setIndex("2");
		example22.setData("Example22");
		example22.setText("Example22");
		example19.addElement(example22);

		return example19;

	}

}
