package de.wuerth.phoenix.phxip.base.development.bugULC;

import com.ulcjava.base.application.AbstractApplication;
import com.ulcjava.base.application.ULCDesktopPane;
import com.ulcjava.base.application.ULCList;
import com.ulcjava.base.application.ULCSplitPane;

import de.wuerth.phoenix.phxip.base.application.ui.ULCInternalFrame;

public class ULCBUG_ULCList extends AbstractApplication {

	private com.ulcjava.base.application.ULCFrame ulcFrame = null; //  @jve:decl-index=0:visual-constraint="20,0"
	private com.ulcjava.base.application.ULCMenuBar ulcMenuBar = null;
	private com.ulcjava.base.application.ULCMenu fileMenu = null;
	private com.ulcjava.base.application.ULCMenuItem exitMenuItem = null;
	private ULCDesktopPane ulcDesktopPane = null;
	private ULCInternalFrame ulcInternalFrame1 = null;

	public void start() {
		getUlcFrame().setVisible(true);
	}

	private com.ulcjava.base.application.ULCFrame getUlcFrame() {
		if (ulcFrame == null) {
			ulcFrame = new com.ulcjava.base.application.ULCFrame();
			ulcFrame.setSize(new com.ulcjava.base.application.util.Dimension(317, 207));
			ulcFrame.setTitle("ULCBUG ULCList");
			ulcFrame.setDefaultCloseOperation(com.ulcjava.base.application.ULCFrame.TERMINATE_ON_CLOSE);
			ulcFrame.setMenuBar(getUlcMenuBar());
			ulcFrame.add(getUlcDesktopPane());
		}
		return ulcFrame;
	}

	private com.ulcjava.base.application.ULCMenuBar getUlcMenuBar() {
		if (ulcMenuBar == null) {
			ulcMenuBar = new com.ulcjava.base.application.ULCMenuBar();
			ulcMenuBar.add(getFileMenu());
		}
		return ulcMenuBar;
	}

	private com.ulcjava.base.application.ULCMenu getFileMenu() {
		if (fileMenu == null) {
			fileMenu = new com.ulcjava.base.application.ULCMenu();
			fileMenu.setText("File");
			fileMenu.setMnemonic(com.ulcjava.base.application.event.KeyEvent.VK_F);
			fileMenu.add(getExitMenuItem());
			fileMenu.addSeparator();
		}
		return fileMenu;
	}

	private com.ulcjava.base.application.ULCMenuItem getExitMenuItem() {
		if (exitMenuItem == null) {
			exitMenuItem = new com.ulcjava.base.application.ULCMenuItem();
			exitMenuItem.setText("Exit");
			exitMenuItem.setAccelerator(com.ulcjava.base.application.util.KeyStroke.getKeyStroke(com.ulcjava.base.application.event.KeyEvent.VK_X, com.ulcjava.base.application.event.KeyEvent.ALT_MASK | com.ulcjava.base.application.event.KeyEvent.SHIFT_MASK, false));
			exitMenuItem.addActionListener(new com.ulcjava.base.application.event.IActionListener() {

				public void actionPerformed(com.ulcjava.base.application.event.ActionEvent e) {
					com.ulcjava.base.application.ApplicationContext.terminate();
				}
			});
		}
		return exitMenuItem;
	}

	/**
	 * This method initializes ulcDesktopPane	
	 * 	
	 * @return com.ulcjava.base.application.ULCDesktopPane	
	 */
	ULCSplitPane p = null;
	private ULCSplitPane getUlcDesktopPane() {
		if (p == null) {
			p = new ULCSplitPane();
			ulcDesktopPane = new ULCDesktopPane();
			ulcDesktopPane.add(getUlcInternalFrame1());
			getUlcInternalFrame1().setVisible(true);
			p.setRightComponent(ulcDesktopPane);
		}
		return p;
	}

	/**
	 * This method initializes ulcInternalFrame1	
	 * 	
	 * @return com.ulcjava.base.application.ULCInternalFrame	
	 */
	private ULCInternalFrame getUlcInternalFrame1() {
		if (ulcInternalFrame1 == null) {
			ulcInternalFrame1 = new ULCInternalFrame("ulcInternalFrame1");
			ulcInternalFrame1.setMaximum(true);
			ulcInternalFrame1.setMaximizable(true);
			ulcInternalFrame1.setResizable(true);
			ulcInternalFrame1.setIconifiable(true);
			ulcInternalFrame1.setClosable(true);
			ulcInternalFrame1.setDefaultCloseOperation(ULCInternalFrame.DISPOSE_ON_CLOSE);
			
			//ErrorLine
			ulcInternalFrame1.getContentPane().add(new ULCList());
		}
		return ulcInternalFrame1;
	}

	public static void main(String[] args) {
		com.ulcjava.base.development.DevelopmentRunner.setApplicationClass(ULCBUG_ULCList.class);
		com.ulcjava.base.development.DevelopmentRunner.run();
	}

}
