Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 354220 - [collaborative work] ability to load/unload a submodel from model explorer
Summary: [collaborative work] ability to load/unload a submodel from model explorer
Status: CLOSED FIXED
Alias: None
Product: Papyrus
Classification: Modeling
Component: Core (show other bugs)
Version: 0.8.0   Edit
Hardware: PC Windows XP
: P3 major (vote)
Target Milestone: ---   Edit
Assignee: Vincent Hémery CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-08-09 04:30 EDT by Raphael Faudou CLA
Modified: 2011-10-04 09:04 EDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Raphael Faudou CLA 2011-08-09 04:30:54 EDT
It should be possible for the end user to decide on loading sub model by right click from a package in model explorer view
Comment 1 Vincent Hémery CLA 2011-08-18 08:32:57 EDT
This modification should come with the possibility to also unload a resource.
Both actions should be available by right-clicking in Model Explorer view.
Comment 2 Vincent Hémery CLA 2011-08-18 08:44:57 EDT
Fixed problems with not loaded resources before contributing these functionalities. Without these fix, the application does not support correctly not loaded resources.

on trunk in r5260
on 0.8.X in r5261
Comment 3 Vincent Hémery CLA 2011-08-18 08:58:02 EDT
Plugin and patch to integrate it correctly have been added on trunk in incoming (r5263-5265)
Comment 4 Vincent Hémery CLA 2011-08-25 07:49:01 EDT
This functionality has been integrated on 0.8.X branch and trunk.
It will be available in next releases (0.8.1 and upper).
Comment 5 Raphael Faudou CLA 2011-09-24 09:43:34 EDT
Seems to work in many cases but sometimes there is an error that occurs when selecting a package not loaded in a package diagram:

org.eclipse.papyrus.core.services.ServiceException: EObject, EClass or IElementType expected in method parameter.
	at org.eclipse.papyrus.service.edit.internal.ElementEditServiceProvider.getEditService(ElementEditServiceProvider.java:91)
	at org.eclipse.papyrus.service.edit.service.ElementEditServiceUtils.getCommandProvider(ElementEditServiceUtils.java:50)
	at org.eclipse.papyrus.diagram.clazz.edit.policies.PackageItemSemanticEditPolicy.getDestroyElementCommand(PackageItemSemanticEditPolicy.java:103)
	at org.eclipse.papyrus.diagram.clazz.custom.policies.itemsemantic.CustomPackageItemSemanticEditPolicy.getDestroyElementCommand(CustomPackageItemSemanticEditPolicy.java:111)
	at org.eclipse.papyrus.diagram.clazz.edit.policies.UMLBaseItemSemanticEditPolicy.getSemanticCommandSwitch(UMLBaseItemSemanticEditPolicy.java:215)
	at org.eclipse.papyrus.diagram.clazz.edit.policies.UMLBaseItemSemanticEditPolicy.getSemanticCommand(UMLBaseItemSemanticEditPolicy.java:157)
	at org.eclipse.gmf.runtime.diagram.ui.editpolicies.SemanticEditPolicy.getCommand(SemanticEditPolicy.java:69)
	at org.eclipse.papyrus.diagram.clazz.edit.policies.UMLBaseItemSemanticEditPolicy.getCommand(UMLBaseItemSemanticEditPolicy.java:139)
	at org.eclipse.gef.editparts.AbstractEditPart.getCommand(AbstractEditPart.java:502)
	at org.eclipse.gmf.runtime.diagram.ui.editparts.GraphicalEditPart.access$1(GraphicalEditPart.java:1)
	at org.eclipse.gmf.runtime.diagram.ui.editparts.GraphicalEditPart$1.run(GraphicalEditPart.java:482)
	at org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl.runExclusive(TransactionalEditingDomainImpl.java:328)
	at org.eclipse.gmf.runtime.diagram.ui.editparts.GraphicalEditPart.getCommand(GraphicalEditPart.java:477)
	at org.eclipse.papyrus.diagram.common.handlers.DeleteFromModelCommandHandler.getCommand(DeleteFromModelCommandHandler.java:55)
	at org.eclipse.papyrus.diagram.common.handlers.GraphicalCommandHandler.isEnabled(GraphicalCommandHandler.java:106)
	at org.eclipse.ui.internal.handlers.HandlerProxy.isEnabled(HandlerProxy.java:320)
	at org.eclipse.core.commands.Command.isEnabled(Command.java:833)
	at org.eclipse.core.commands.Command.setHandler(Command.java:996)
	at org.eclipse.ui.internal.handlers.HandlerAuthority.updateCommand(HandlerAuthority.java:459)
	at org.eclipse.ui.internal.handlers.HandlerAuthority.processChangedCommands(HandlerAuthority.java:638)
	at org.eclipse.ui.internal.handlers.HandlerAuthority.access$1(HandlerAuthority.java:610)
	at org.eclipse.ui.internal.handlers.HandlerAuthority$1.propertyChange(HandlerAuthority.java:175)
	at org.eclipse.ui.internal.services.EvaluationAuthority$1.run(EvaluationAuthority.java:252)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.ui.internal.services.EvaluationAuthority.fireServiceChange(EvaluationAuthority.java:246)
	at org.eclipse.ui.internal.services.EvaluationAuthority.endSourceChange(EvaluationAuthority.java:197)
	at org.eclipse.ui.internal.services.EvaluationAuthority.sourceChanged(EvaluationAuthority.java:135)
	at org.eclipse.ui.internal.services.ExpressionAuthority.sourceChanged(ExpressionAuthority.java:311)
	at org.eclipse.ui.internal.services.ExpressionAuthority.sourceChanged(ExpressionAuthority.java:290)
	at org.eclipse.ui.AbstractSourceProvider.fireSourceChanged(AbstractSourceProvider.java:99)
	at org.eclipse.papyrus.diagram.common.providers.ActionStateSourceProvider.refreshDeleteAction(ActionStateSourceProvider.java:69)
	at org.eclipse.papyrus.diagram.common.providers.ActionStateSourceProvider.refreshActions(ActionStateSourceProvider.java:92)
	at org.eclipse.papyrus.diagram.common.providers.AbstractActionStateSourceProvider$SelectionListener.selectionChanged(AbstractActionStateSourceProvider.java:270)
	at org.eclipse.ui.internal.AbstractSelectionService.fireSelection(AbstractSelectionService.java:156)
	at org.eclipse.ui.internal.AbstractSelectionService$1.selectionChanged(AbstractSelectionService.java:62)
	at org.eclipse.papyrus.sasheditor.internal.eclipsecopy.MultiPageSelectionProvider$1.run(MultiPageSelectionProvider.java:116)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.papyrus.sasheditor.internal.eclipsecopy.MultiPageSelectionProvider.fireEventChange(MultiPageSelectionProvider.java:113)
	at org.eclipse.papyrus.sasheditor.internal.eclipsecopy.MultiPageSelectionProvider.fireSelectionChanged(MultiPageSelectionProvider.java:94)
	at org.eclipse.papyrus.sasheditor.internal.eclipsecopy.MultiPageEditorSite.handleSelectionChanged(MultiPageEditorSite.java:471)
	at org.eclipse.papyrus.sasheditor.internal.eclipsecopy.MultiPageEditorSite$3.selectionChanged(MultiPageEditorSite.java:391)
	at org.eclipse.gmf.runtime.diagram.ui.parts.DiagramGraphicalViewer.flushSelectionEvents(DiagramGraphicalViewer.java:256)
	at org.eclipse.gmf.runtime.diagram.ui.parts.DiagramGraphicalViewer$1.run(DiagramGraphicalViewer.java:234)
	at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
	at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:135)
	at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4140)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3757)
	at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2696)
	at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2660)
	at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2494)
	at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:674)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:667)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:123)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:344)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1410)
Comment 6 Raphael Faudou CLA 2011-10-04 09:04:56 EDT
verified->OK closed