/*************************************************************************************************** * Copyright (c) 2003, 2004 IBM Corporation and others. All rights reserved. This program and the * accompanying materials are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: IBM Corporation - initial API and implementation **************************************************************************************************/ package org.eclipse.jst.j2ee.internal.provider; import org.eclipse.emf.common.command.Command; import org.eclipse.emf.common.command.CommandStack; import org.eclipse.emf.ecore.EObject; import org.eclipse.emf.edit.command.CopyToClipboardCommand; import org.eclipse.emf.edit.command.PasteFromClipboardCommand; import org.eclipse.emf.edit.command.RemoveCommand; import org.eclipse.jst.j2ee.internal.command.J2EEClipboard; import org.eclipse.jst.j2ee.internal.command.J2EECopyToClipboardOverrideCommand; import org.eclipse.jst.j2ee.internal.command.J2EEPasteFromClipboardOverrideCommand; import org.eclipse.jst.j2ee.internal.command.J2EERemoveOverrideCommand; public class J2EEUIEditingDomain extends J2EEEditingDomain { /** * J2EEUIEditingDomain constructor comment. * * @param adapterFactory * org.eclipse.emf.common.notify.AdapterFactory * @param commandStack * CommandStack */ public J2EEUIEditingDomain(org.eclipse.emf.common.notify.AdapterFactory adapterFactory, CommandStack commandStack) { super(adapterFactory, commandStack); turnTraceOnIfDebugging(); } @Override protected Command createCopyToClipboardOverrideCommand(CopyToClipboardCommand copyToClipboardCommand) { if (copyToClipboardCommand instanceof J2EECopyToClipboardOverrideCommand) return null; return new J2EECopyToClipboardOverrideCommand(copyToClipboardCommand); } @Override protected Command createPasteFromClipboardOverrideCommand(PasteFromClipboardCommand pasteFromClipboardCommand) { if (pasteFromClipboardCommand instanceof J2EEPasteFromClipboardOverrideCommand) return null; if (!(getClipboard() instanceof J2EEClipboard)) return null; return new J2EEPasteFromClipboardOverrideCommand(pasteFromClipboardCommand); } @Override protected Command createRemoveOverrideCommand(RemoveCommand removeCommand) { return new J2EERemoveOverrideCommand(removeCommand); } public J2EEClipboard getJ2EEClipboard() { return (J2EEClipboard) getClipboard(); } @Override public Object getParent(Object object) { Object parent = super.getParent(object); if (parent != null) return parent; if (object instanceof EObject) return ((EObject) object).eContainer(); return null; } protected void turnTraceOnIfDebugging() { //AbstractCommand.Trace.enable(); } }