| /* |
| * Copyright (c) 2011-2013 Eike Stepper (Berlin, Germany) 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: |
| * Martin Fluegge - initial API and implementation |
| * |
| */ |
| package org.eclipse.emf.cdo.dawn.examples.acore.graphiti.diagram; |
| |
| import org.eclipse.emf.cdo.dawn.examples.acore.graphiti.util.DawnGraphitiAcoreResourceUtil; |
| |
| import org.eclipse.graphiti.dt.AbstractDiagramTypeProvider; |
| import org.eclipse.graphiti.mm.pictograms.Diagram; |
| import org.eclipse.graphiti.platform.IDiagramBehavior; |
| import org.eclipse.graphiti.tb.IToolBehaviorProvider; |
| |
| /** |
| * @author Martin Fluegge |
| */ |
| public class AcoreDiagramTypeProvider extends AbstractDiagramTypeProvider |
| { |
| public AcoreDiagramTypeProvider() |
| { |
| super(); |
| setFeatureProvider(new AcoreFeatureProvider(this)); |
| } |
| |
| @Override |
| public boolean isAutoUpdateAtStartup() |
| { |
| return super.isAutoUpdateAtStartup(); |
| } |
| |
| private IToolBehaviorProvider[] toolBehaviorProviders; |
| |
| @Override |
| public IToolBehaviorProvider[] getAvailableToolBehaviorProviders() |
| { |
| if (toolBehaviorProviders == null) |
| { |
| toolBehaviorProviders = new IToolBehaviorProvider[] { new AcoreToolBehaviorProvider(this) }; |
| } |
| return toolBehaviorProviders; |
| } |
| |
| @Override |
| public void init(Diagram diagram, IDiagramBehavior diagramEditor) |
| { |
| super.init(diagram, diagramEditor); |
| DawnGraphitiAcoreResourceUtil.wireDomainModel(diagram, diagram.eResource().getResourceSet(), |
| getDiagramBehavior().getEditingDomain()); |
| } |
| } |