package de.ugoe.cs.swe.memos.gui.menu;

import org.eclipse.core.commands.ExecutionEvent;
import org.eclipse.core.commands.ExecutionException;
import org.eclipse.core.commands.IHandler;
import org.eclipse.core.commands.IHandlerListener;
import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.CTabItem;

import de.ugoe.cs.swe.memos.Utils;
import de.ugoe.cs.swe.memos.gui.mainview.ArticleComposite;

public class createHandler implements IHandler {
	private static boolean enabled = true;

	public static void setEnabled(boolean state) {
		enabled = state;
	}

	@Override
	public void addHandlerListener(IHandlerListener handlerListener) {
		// TODO Auto-generated method stub

	}

	@Override
	public void dispose() {
		// TODO Auto-generated method stub

	}

	@Override
	public Object execute(ExecutionEvent event) throws ExecutionException {
		CTabItem memoTab = Utils.getMainView().addTabItem("Neu");
		Utils.getMainView().SetTabItemActive(memoTab);
		ArticleComposite articleComposite = new ArticleComposite(Utils
				.getMainView().getTabFolder(), SWT.NONE, null, Utils
				.getMainView().getCatBrowser(), ArticleComposite.MODE.WRITE);
		articleComposite.setContent(Utils.getMainView().getSearchField()
				.getText());
		Utils.getMainView().getCatBrowser().getTreeMouseListener()
				.setActiveCategoryField(articleComposite.getCategoryField());
		memoTab.setControl(articleComposite);
		//memoTab.addDisposeListener(new DisposeArticleListene(Utils.getMainView().getTabFolder()));
		return null;
	}

	@Override
	public boolean isEnabled() {
		// TODO Auto-generated method stub
		return enabled;
	}

	@Override
	public boolean isHandled() {
		// TODO Auto-generated method stub
		return true;
	}

	@Override
	public void removeHandlerListener(IHandlerListener handlerListener) {
		// TODO Auto-generated method stub

	}

}
