Search in sources :

Example 11 with EditingDomain

use of org.eclipse.emf.edit.domain.EditingDomain in project InformationSystem by ObeoNetwork.

the class CustomEditingPolicy method execute.

/**
 * (non-Javadoc)
 *
 * @see org.eclipse.emf.eef.runtime.policies.PropertiesEditingPolicy#execute()
 */
@Override
public void execute() {
    EditingDomain editingDomain = EEFUtils.getEditingDomain(editionContext);
    if (editingDomain != null) {
        DomainPropertiesEditionContext domainPropertiesEditionContext = new DomainPropertiesEditionContext(null, null, editingDomain, editionContext.getAdapterFactory(), editionContext.getEObject());
        WizardEditingOperation operation = new WizardEditingOperation(domainPropertiesEditionContext);
        try {
            operation.execute(new NullProgressMonitor(), null);
        } catch (ExecutionException e) {
            EEFRuntimePlugin.getDefault().logError("An error occured during wizard editing.", e);
        }
    } else {
        super.execute();
    }
}
Also used : NullProgressMonitor(org.eclipse.core.runtime.NullProgressMonitor) EditingDomain(org.eclipse.emf.edit.domain.EditingDomain) DomainPropertiesEditionContext(org.eclipse.emf.eef.runtime.context.impl.DomainPropertiesEditionContext) ExecutionException(org.eclipse.core.commands.ExecutionException) WizardEditingOperation(org.eclipse.emf.eef.runtime.impl.operation.WizardEditingOperation)

Example 12 with EditingDomain

use of org.eclipse.emf.edit.domain.EditingDomain in project InformationSystem by ObeoNetwork.

the class GenerateVsmHandler method execute.

/**
 * the command has been executed, so extract extract the needed information
 * from the application context.
 */
public Object execute(ExecutionEvent event) throws ExecutionException {
    IEditorPart activeEditor = HandlerUtil.getActiveEditor(event);
    Configuration configuration = getConfiguration(activeEditor);
    EditingDomain editingDomain = getEditingDomainFromEditor(activeEditor);
    ClassDiagramGenerator generator = new ClassDiagramGenerator(configuration, editingDomain);
    Collection<RepresentationDescription> newDescriptions = generator.generate();
    if (!newDescriptions.isEmpty() && activeEditor instanceof ISelectionProvider) {
        ((ISelectionProvider) activeEditor).setSelection(new StructuredSelection(newDescriptions));
    }
    return null;
}
Also used : RepresentationDescription(org.eclipse.sirius.viewpoint.description.RepresentationDescription) Configuration(org.obeonetwork.tools.classdiagramconfiguration.Configuration) ISelectionProvider(org.eclipse.jface.viewers.ISelectionProvider) StructuredSelection(org.eclipse.jface.viewers.StructuredSelection) IEditorPart(org.eclipse.ui.IEditorPart) EditingDomain(org.eclipse.emf.edit.domain.EditingDomain)

Example 13 with EditingDomain

use of org.eclipse.emf.edit.domain.EditingDomain in project InformationSystem by ObeoNetwork.

the class FlowActionBarContributor method selectionChanged.

/**
 * This implements {@link org.eclipse.jface.viewers.ISelectionChangedListener},
 * handling {@link org.eclipse.jface.viewers.SelectionChangedEvent}s by querying for the children and siblings
 * that can be added to the selected object and updating the menus accordingly.
 * <!-- begin-user-doc -->
 * <!-- end-user-doc -->
 * @generated
 */
public void selectionChanged(SelectionChangedEvent event) {
    // 
    if (createChildMenuManager != null) {
        depopulateManager(createChildMenuManager, createChildActions);
    }
    if (createSiblingMenuManager != null) {
        depopulateManager(createSiblingMenuManager, createSiblingActions);
    }
    // Query the new selection for appropriate new child/sibling descriptors
    // 
    Collection<?> newChildDescriptors = null;
    Collection<?> newSiblingDescriptors = null;
    ISelection selection = event.getSelection();
    if (selection instanceof IStructuredSelection && ((IStructuredSelection) selection).size() == 1) {
        Object object = ((IStructuredSelection) selection).getFirstElement();
        EditingDomain domain = ((IEditingDomainProvider) activeEditorPart).getEditingDomain();
        newChildDescriptors = domain.getNewChildDescriptors(object, null);
        newSiblingDescriptors = domain.getNewChildDescriptors(null, object);
    }
    // Generate actions for selection; populate and redraw the menus.
    // 
    createChildActions = generateCreateChildActions(newChildDescriptors, selection);
    createSiblingActions = generateCreateSiblingActions(newSiblingDescriptors, selection);
    if (createChildMenuManager != null) {
        populateManager(createChildMenuManager, createChildActions, null);
        createChildMenuManager.update(true);
    }
    if (createSiblingMenuManager != null) {
        populateManager(createSiblingMenuManager, createSiblingActions, null);
        createSiblingMenuManager.update(true);
    }
}
Also used : ISelection(org.eclipse.jface.viewers.ISelection) IStructuredSelection(org.eclipse.jface.viewers.IStructuredSelection) EditingDomain(org.eclipse.emf.edit.domain.EditingDomain) IEditingDomainProvider(org.eclipse.emf.edit.domain.IEditingDomainProvider)

Example 14 with EditingDomain

use of org.eclipse.emf.edit.domain.EditingDomain in project InformationSystem by ObeoNetwork.

the class AddUserStoryHandler method execute.

/**
 * {@inheritDoc}
 * @see org.eclipse.core.commands.IHandler#execute(org.eclipse.core.commands.ExecutionEvent)
 */
public Object execute(ExecutionEvent event) throws ExecutionException {
    IWorkbenchPart activePart = HandlerUtil.getActivePart(event);
    if (activePart instanceof UserStoriesView) {
        UserStoriesView view = (UserStoriesView) activePart;
        EditingDomain editingDomain = view.getEditingDomain();
        if (editingDomain != null) {
            UserStoryDialog dialog = new UserStoryDialog(HandlerUtil.getActiveShell(event));
            int open = dialog.open();
            if (open == Window.OK) {
                UserStory story = GraalFactory.eINSTANCE.createUserStory();
                story.setName(dialog.getName());
                story.setDescription(dialog.getDescription());
                Date createdOn = new Date();
                story.setCreatedOn(createdOn);
                story.setModifiedOn(createdOn);
                EObject eObject = EcoreUtil.getRootContainer(view.getInput().get(0));
                if (eObject instanceof org.obeonetwork.graal.System) {
                    editingDomain.getCommandStack().execute(AddCommand.create(editingDomain, eObject, GraalPackage.eINSTANCE.getSystem_UserStories(), story));
                    view.refresh();
                }
            }
        }
    }
    return null;
}
Also used : UserStoriesView(org.obeonetwork.graal.design.ui.view.UserStoriesView) IWorkbenchPart(org.eclipse.ui.IWorkbenchPart) EObject(org.eclipse.emf.ecore.EObject) EditingDomain(org.eclipse.emf.edit.domain.EditingDomain) UserStoryDialog(org.obeonetwork.graal.design.ui.dialog.UserStoryDialog) Date(java.util.Date) UserStory(org.obeonetwork.graal.UserStory)

Example 15 with EditingDomain

use of org.eclipse.emf.edit.domain.EditingDomain in project InformationSystem by ObeoNetwork.

the class CustomEEFEditorSettings method getOrCreateSignificantObject.

public EObject getOrCreateSignificantObject() {
    EObject object = getSignificantObject();
    if (object == null) {
        if (getSource() instanceof ObeoDSMObject) {
            ObeoDSMObject source = (ObeoDSMObject) getSource();
            EditingDomain domain = context.getEditingDomain();
            if (source.getMetadatas() == null) {
                // Create MetaDataContainer
                MetaDataContainer mdContainer = EnvironmentFactory.eINSTANCE.createMetaDataContainer();
                domain.getCommandStack().execute(SetCommand.create(domain, source, EnvironmentPackage.eINSTANCE.getObeoDSMObject_Metadatas(), mdContainer));
            }
            // Create Risk
            Risk risk = GraalExtensionsFactory.eINSTANCE.createRisk();
            domain.getCommandStack().execute(AddCommand.create(domain, source.getMetadatas(), EnvironmentPackage.eINSTANCE.getMetaDataContainer_Metadatas(), risk));
            significantObject = getSignificantObject();
            return significantObject;
        }
    }
    return object;
}
Also used : EObject(org.eclipse.emf.ecore.EObject) ObeoDSMObject(org.obeonetwork.dsl.environment.ObeoDSMObject) Risk(fr.gouv.mindef.safran.graalextensions.Risk) EditingDomain(org.eclipse.emf.edit.domain.EditingDomain) MetaDataContainer(org.obeonetwork.dsl.environment.MetaDataContainer)

Aggregations

EditingDomain (org.eclipse.emf.edit.domain.EditingDomain)42 IEditingDomainProvider (org.eclipse.emf.edit.domain.IEditingDomainProvider)32 ISelection (org.eclipse.jface.viewers.ISelection)30 IStructuredSelection (org.eclipse.jface.viewers.IStructuredSelection)30 ExecutionException (org.eclipse.core.commands.ExecutionException)4 NullProgressMonitor (org.eclipse.core.runtime.NullProgressMonitor)4 EObject (org.eclipse.emf.ecore.EObject)4 DomainPropertiesEditionContext (org.eclipse.emf.eef.runtime.context.impl.DomainPropertiesEditionContext)3 WizardEditingOperation (org.eclipse.emf.eef.runtime.impl.operation.WizardEditingOperation)3 IWorkbenchPart (org.eclipse.ui.IWorkbenchPart)3 UserStory (org.obeonetwork.graal.UserStory)3 UserStoriesView (org.obeonetwork.graal.design.ui.view.UserStoriesView)3 IEditorPart (org.eclipse.ui.IEditorPart)2 UserStoryDialog (org.obeonetwork.graal.design.ui.dialog.UserStoryDialog)2 Risk (fr.gouv.mindef.safran.graalextensions.Risk)1 Date (java.util.Date)1 CompoundCommand (org.eclipse.emf.common.command.CompoundCommand)1 TransactionalEditingDomain (org.eclipse.emf.transaction.TransactionalEditingDomain)1 ISelectionProvider (org.eclipse.jface.viewers.ISelectionProvider)1 StructuredSelection (org.eclipse.jface.viewers.StructuredSelection)1