/*******************************************************************************
 * Copyright (c) 2009, 2014 Xored Software Inc 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:
 *     Xored Software Inc - initial API and implementation and/or initial documentation
 *******************************************************************************/
package org.eclipse.rcptt.tesla.ecl.model.diagram;


/**
 * <!-- begin-user-doc -->
 * A representation of the model object '<em><b>Activate Direct Edit</b></em>'.
 * <!-- end-user-doc -->
 *
 *
 * @see org.eclipse.rcptt.tesla.ecl.model.diagram.DiagramPackage#getActivateDirectEdit()
 * @model annotation="http://www.eclipse.org/ecl/docs description='Activates direct editing.' returns='value of <code>control</code> parameter' example='get-editor SO | get-diagram | get-edit-part -className ProcessEditPart | get-edit-part -name Invoke \r\n    | activate-direct-edit'"
 * @generated
 */
public interface ActivateDirectEdit extends DirectEdit {
} // ActivateDirectEdit
