/******************************************************************************* * Copyright (c) 2011, 2012 Red Hat, Inc. * All rights reserved. * This program is 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: * Red Hat, Inc. - initial API and implementation * * @author Bob Brodt ******************************************************************************/ package org.eclipse.bpmn2.modeler.ui.property.events; import org.eclipse.bpmn2.Bpmn2Package; import org.eclipse.bpmn2.CatchEvent; import org.eclipse.bpmn2.Event; import org.eclipse.bpmn2.LinkEventDefinition; import org.eclipse.bpmn2.modeler.core.merrimac.clad.AbstractBpmn2PropertySection; import org.eclipse.bpmn2.modeler.core.merrimac.clad.DefaultDetailComposite; import org.eclipse.emf.ecore.EObject; import org.eclipse.swt.widgets.Composite; /** * @author Bob Brodt * */ public class LinkEventDefinitionDetailComposite extends DefaultDetailComposite { /** * @param parent * @param style */ public LinkEventDefinitionDetailComposite(Composite parent, int style) { super(parent, style); } /** * @param section */ public LinkEventDefinitionDetailComposite(AbstractBpmn2PropertySection section) { super(section); } @Override public void cleanBindings() { super.cleanBindings(); } @Override public void createBindings(EObject be) { final LinkEventDefinition eventDefinition = (LinkEventDefinition)be; if (eventDefinition.eContainer() instanceof Event) { Event event = (Event) eventDefinition.eContainer(); this.bindAttribute(getAttributesParent(), eventDefinition, Bpmn2Package.eINSTANCE.getLinkEventDefinition_Name()); if (event instanceof CatchEvent) { bindReference(eventDefinition, Bpmn2Package.eINSTANCE.getLinkEventDefinition_Source()); } else { bindReference(eventDefinition, Bpmn2Package.eINSTANCE.getLinkEventDefinition_Target()); } } } }