Skip to main content
AgeCommit message (Collapse)AuthorFilesLines
2017-01-19510683 [Sash Editor] should takes into account sash positioncommitters/cdumoulin/bugs/510683-Sash_EditorCedric Dumoulin4-216/+254
Task-Url: Add getInitialSachPosition() in SashPanelModel. Implements the methods in the differents implementations. Use the initialSashPosition when the sash is created. This allows th set the initialSashPosition in the di model. The value is taken into aaccount when the sash is created.
2017-01-19510683 [Sash Editor] should takes into account sash positionCedric Dumoulin2-588/+604
Task-Url: Set the sash position when new SashPanelPart is created.
2017-01-09Bug 508512 - [Core] respecting maven conventionFrancois Le Fevre7-7/+14
-adding pom.xml -adding the schema in the header enabling to remove the warning in eclipse Change-Id: I8ab35fb6c6a696c5feb44aa5236db1c02e86f08e Signed-off-by: Francois Le Fevre <>
2016-11-29[Releng] Update Papyrus setup for new CBI Aggregator.Christian W. Damus1-0/+3
Also fix a few plugins' metadata for Java compliance level etc. Change-Id: Ifea4a6c4af8c7e2fe08be4c8d1729740c5162045
2016-11-29Bug 508404: [Copy/Paste] Copy and paste does not use registered EFactoryChristian W. Damus2-17/+68
Update the ICopierFactory API to require a resource set context and get the registered factory from it when available. Change-Id: Iccca171716df658f310b2a8c7b7a319f991b2002
2016-11-29Bug 496905: [Diagram][ModelExplorer][Table][Dialog] Papyrus must integrateNicolas FAUVERGUE6-11/+160
the internationalization feature provided by UML. Commit of infra for internationalization. Change-Id: I1b1859bf111e1ef7a7522212fbe639cf2bd13890 Signed-off-by: Nicolas FAUVERGUE <>
2016-10-28Bug 502461: [Copy/Paste] Pasting UML-RT protocol container corrupts the modelChristian W. Damus8-0/+674 Never copy the Dependency::client reference property of an InterfaceRealization in copy/paste operations. Use the Element Types Framework to set the name of a pasted element when resolving name clashes, to allow for extensible editing behaviour of DSMLs such as UML-RT (for protocol containers). Change-Id: Iddfc4f7f4d5a9a412317f7fbe5db6a6ac7563be7
2016-08-28Bug 443799 - Fix potential bugs identified by FindBugs in oep.infra.*Florian Noyrit9-253/+217
Bug 499554 - Oxygen release version number moved to 3.0.0. Change-Id: I8e112db7175a5b89eb9b37973639627a6c29e007
2016-08-25Bug 461709: [Performances] Opening a model for the first time in a new ↵Christian W. Damus1-2/+6
workspace causes all dependencies to be resolved Revise the determination of 'legacy mode' to support also sub-models, as required by bug 497865. Change-Id: Ib9709cf01062204ce8170750298ee234b425e40b (cherry picked from commit de4b0f294afe2fb5cafcaf2daae6756d683ea600)
2016-08-25Bug 496842: ResourceException below ModelSet.demandLoadGéry Deloge1-4/+5
Change-Id: I0e65381e4f25cee9e9c045c72b9bc7f0a2ec8330 Signed-off-by: Géry Deloge <>
2016-07-19Bug 498140: Memory leak in validation privileged runnablesChristian W. Damus1-15/+70 Forget the privileged runnable and its transaction context after executing the wrapping runnable-with-progress. Clarify the one-shot nature of the API. Similar changes for the headless progress runnable/callable APIs in the core. Change-Id: I5ab1361032ea5c48e493b86823e46413f1d199d3 (cherry picked from commit 03dd4b0b4844e55d22563ba72eb8eaabb7a9ca49)
2016-07-16Bug 461709: [Performances] Opening a model for the first time in a new ↵Christian W. Damus3-6/+73
workspace causes all dependencies to be resolved When creating the *.sash resource initially, create it from a template resource so that it the SashWindowsMngr isn't added explicitly after the fact, which triggers many content adapters in the ModelSet including the ProxyModificationTrackingAdapter, which resolves all proxies in the resource set. Change-Id: Iee75d148f342b9f3c12e986eb88763294cbe6b6a (cherry picked from commit 69247471827b1fa1b11499983a771d048cb92d94)
2016-07-13Bug 496299: Controlled Units as Integral FragmentsChristian W. Damus12-67/+228 Implement a new mode of controlled unit in Papyrus dubbed "shards". A shard is like any other sub-unit created up to and including the Neon release, except that it cannot be opened independently in the editor. The Papyrus editor, when asked to open a "shard", will instead open the root resource of the model. Likewise, the editor matcher normalizes editor inputs to the root resource of any shard. The graph of shard dependencies is inferred from a new workspace- wide index of cross-resource containment references, when it is available. Otherwise, the linkage of shards to their parent references is parsed on-the-fly from the shard annotation's reference (with a relatively efficient XML parsing that terminates after reading only a few lines of the XMI text). A new ResourceLocator is implemented to provide a pluggable hook for resource loading (including proxy resolution), to ensure when loading a shard resource that its parent resource chain is first loaded from the top down to ensure that all context of profile applications is available before loading the shard, itself, which may have stereotype applications that depend on those profile applications. The CoreMultiDiagramEditor installs this resource locator on the ModelSet; other applications (including in a non-Eclipse context) can make similar use of it. Some additional fixes are required in other core components to make the loading of referenced sharded models as in bug 458837 work: * the SemanticUMLContentProvider did not detect the final resolution of containment proxies that changes what looks look a model root object into just another intermediate element in the content tree. Besides that it would schedule a large number of redundant UI refreshes asynchronously (deferred) on the UI thread * the DiModel and NotationModel would load their adjuncts to the *.uml resource when that resource is created, not after it has been loaded. This is much too early and ends up causing the transactional editing domain to detect the attachment of a resource's contents at the end of loading as an attempt to edit the model during a read-only transaction, which logs an exception and bombs the UI action. Instead, these models now have snippets that load the *.di and *.notation resources after the semantic resource has been loaded. * the new model snippets required an additional fix in the loading of IModels to handle contributions of snippets and dependencies to models that are overridden by other IModels registered under the same ID, such as is the case with the NotationModel and the CSSNotationModel, which latter needs the snippet declared by the former * the IModels additionally need to ensure that they start snippets on loading of an existing model even when it is already found to be loaded in the ModelSet (as happens often in JUnit tests) * the AbstractModelFixture in the JUnit test framework is updated to ensure that the ModelSet is properly initialized, with its own snippets started and its IModels loaded and their snippets started * the basic uncontrol command now removes the shard annotation from the uncontrolled element/resource, if there was one. Because this bundle now supports a new feature (that being shards), it seems appropriate to bump its minor version number General-purpose changes in the core workspace model index framework that improve overall performance, of particular significance in large and highly fragmented models: Implement persistent storage of the workspace model index at workspace save to support quick start-up without parsing the entire workspace. Consolidation of indices: * run a single pool of indexing jobs and a single resource change listener to trigger (re)-indexing of files * all indices matching any given file process it * includes a new extension point from which all indices are loaded into the shared index manager to initialize them and do the work (cherry-picked from streams/2.0-maintenance) Change-Id: Ifd65a71c57134b69d873f17139f3cedbf11c5ba5
2016-07-01Revert "Revert "Bug 496846: ArrayIndexOutOfBoundsException below ↵Patrick Tessier1-6/+3
TabFolderImpl.movePage"" This reverts commit d082d973cadde041281180b7038fc16287717f82. Change-Id: I215bf30a4dce9476e051135a0c5e862f7c615d01
2016-07-01Revert "Bug 496846: ArrayIndexOutOfBoundsException below TabFolderImpl.movePage"Patrick Tessier1-3/+6
This reverts commit 5dbfb78c34f96679acfd6a8a21cd2da4c8386615. Change-Id: Ie424ca525632bdf77c8c25137518e006874429b6
2016-07-01Bug 496846: ArrayIndexOutOfBoundsException below TabFolderImpl.movePageGéry Deloge1-6/+3
Change-Id: I44703fea2fbafac77c4659dadb77dded55f773f4 Signed-off-by: Géry Deloge <>
2016-05-25Bug 494543: [Source Repository] Compilation errors in developer workspaceChristian W. Damus2-7/+12 Delete a project that is no longer used/built and apply a work-around that should not be needed for spurious compilation errors in what appears to be a bug in the compiler's type inference. Change-Id: I6e350df8a5b87a6a7802e2ce661a4ff3bef850c9
2016-05-10Bug 493020: Papyrus SDK is not a "backbone"Christian W. Damus1-1/+1 Fix the bundle name of the org.eclipse.papyrus.infra.core bundle. Create a new branding plugin for the SDK to fix the branding of the SDK feature in the "Features" tab of the installation details dialog and restore the Papyrus-logo branding button in the About dialog. Change-Id: Ieac524d9976fcb593c5a1a3f1aca0d9c9400d4e3
2016-05-02bug 483357: [Table] Popup menu must be available in each context!Vincent Lorenzo1-1/+1
Change-Id: I6f89e92b9d8f9522652d191fea191ccb0ea6241f Signed-off-by: Vincent Lorenzo <>
2016-04-28Bug 492689: [Editor] ConcurrentModificationException in the ActivePageTrackerChristian W. Damus1-7/+9 Iterate stack-local copies of the listener lists when notifying to allow listeners to add/remove from the list. Change-Id: I19f27ca27e7a387d9074aa1f6aff6edd083aa748
2016-03-31Bug 490564 - [Papyrus DSML validation, Qompass, Designer] The DSML ↵Ansgar Radermacher4-1/+365
validation generator depends on a Qompass base plugin Change-Id: I6ad32354b166ff49ded17be8ebbaf38279445eed
2016-03-08Bug 487024: [Table] [CellEditor] The cell editors must manage datatypesNicolas FAUVERGUE1-8/+0
from EMF Remove the EMF constants from UML constants to use the the EMF constants available in the EMF plugin. Change-Id: I7f5009b3b5ff203b2e8ff3882d0b943db58c9287 Signed-off-by: Nicolas FAUVERGUE <>
2016-03-07Bug 488558: [Releng] Projects not included in the Main releaseChristian W. Damus1-0/+283 Implement a factory for shared service instances in the Service Registry. Use this new facility for the stateless object localizer service. Change-Id: I467c2d9c59243658b467697b099afa46af480fb2
2016-03-07Bug 488558: [Releng] Projects not included in the Main releaseChristian W. Damus331-58672/+0 Add facet customization model editor to the Papyrus distribution. Delete the modeled service-registry projects; they aren't needed. Change-Id: I032444009c96214625465fdcd5cecea6d8d5a7d3
2016-03-03Bug 487024 - [Table] [CellEditor] The cell editors must manage datatypesNicolas FAUVERGUE1-0/+8
from EMF - Manage the EBoolean, EInt and EString in the EMF cell editors. - Manage others cell editors: * Single UML Boolean * Multiple UML Boolean * Single UML Integer * Multiple UML Integer * Single UML String * Multiple UML String - Manage differently the existing UML Stereotypes cell editors: * UML Stereotype Single EMF Boolean * UML Stereotype Multiple EMF Boolean * UML Stereotype Single UML Boolean * UML Stereotype Multiple UML Boolean * UML Stereotype Single EMF Integer * UML Stereotype Multiple EMF Integer * UML Stereotype Single UML Integer * UML Stereotype Multiple UML Integer * UML Stereotype Single EMF String * UML Stereotype Multiple EMF String * UML Stereotype Single UML String * UML Stereotype Multiple UML String - Redefine the cell editors priority in the plugin.xml file. - Rewrite JUnit tests to test all UML Stereotypes cell editors. Change-Id: I31be7cc99c79ba10143fa758ab65c962b71ab5a4 Signed-off-by: Nicolas FAUVERGUE <>
2016-03-03Bug 488791: [Tests] Discontinue packaging of tests as fragment bundlesChristian W. Damus3-97/+110
Deprecate the FragmentTestSuiteClass. Convert all test fragments in the Papyrus Main Tests to plug-ins (does require some changes in the tests themselves, especially in the finding of test resources within the bundles and a few cases of making API accessible for testing). Update the aggregate suites accordingly. Change-Id: I91b38b3152fb147d3c4185b00240248344cce95b
2016-03-03Bug 485220: [Architecture] Provide a more modular architectureChristian W. Damus11-1/+981 Complete the configuration of PDE API Tooling in the Papyrus Main and Developer Tools projects, including: * adding the API Analysis nature and builder to .project where it was missing * adding a new menu action in the dev tools Project Management menu to ensure that all Oomph version-management projects in the workspace have API analysis also * fixing API version analysis problems, mostly by upversioning bundles to 2.0 but also applying API filters in some cases where it seems appropriate * implementing project-level API Analysis preferences for warning severity of missing @since doc tags (the default is error) and adding it to the Oomph project preferences management Change-Id: I3f5fad20ffc7bb66eec0abbb86b5cc52aacb1ff1
2016-03-02Bug 474467: Papyrus editors title do not update when their label changeChristian W. Damus3-753/+884
Add support for propagation of label-provider change events for labels that are dependent on other elements' labels. Implement such a dependent label for all notation views supported by the Viewpoints mechanism that have no names of their own, including * unnamed Diagrams * unnamed Tables Now that the table label provider depends on table prototypes, the broken prototype references in editor reload tests need to be updated (they were missed in the refactoring when all of the prototypes were removed from the builtin Viewpoints configuration model). Change-Id: I8a9c361129c996188f87ac2851db39e0f66f3acd
2016-02-26Bug 485220: [Architecture] Provide a more modular architectureChristian W. Damus6-57/+106
Missed a refactoring in a plug-in that evidently isn't in the build. Missed configuring version management on some plug-in projects. Change-Id: Ib91b7c09305495ecce7df3fe82acafbcb18a4c8e
2016-02-24Bug 485220: [Architecture] Provide a more modular architectureChristian W. Damus79-2042/+2433 Implement version management: PDE API Tooling and Oomph Version Management. Introduce two new plug-in projects to manage versioning using Oomph: * org.eclipse.papyrus.releng.main.release for the Main bundles and features * for the Dev Tools Add new menu actions to the Dev Tools: * main menu bar: * synchronize POM and manifest versions * "Configure" context menu on bundle projects and MANIFEST.MF * optimize bundle dependencies and re-exports * update dependency version ranges to match current workspace and PDE target Remove obsolete menu actions from the Dev Tools: * main menu bar: * Set all Papyrus feature versions * Set all Papyrus plug-in versions * Set versions of all Papyrus dependencies in Papyrus plug-ins Fix versioning errors reported by PDE and Oomph. Ensure proper version ranges consistent with latest build target. Optimize the dependencies of all Papyrus Main bundles and Dev Tools. Remove version- and reexport-checking tests in the BundlesTests that are now not needed because, on the one hand, we now implement discrete bundle versioning (managed by PDE/Oomph) and on the other, we now use re-exports properly to ensure classpath consistency in clients of a bundle's API. Thorough overhaul of the "project editors" API, including: * rationalize the API interfaces * refactor the all-in-one PluginEditor class from the customization bundle to the project-editors bundle * update clients in the Customization and DSML Validation components * fix a bunch of operations that didn't work * add missing operations required by the new Dev Tools actions * complete some unimplemented APIs * add a comprehensive JUnit test suite covering all of the project-editors API Change-Id: I6a699d93909f61099226ceb994140f03ea99a70f
2016-02-13Revert "Bug 485220: [Architecture] Provide a more modular architecture ↵Christian W. Damus8-16/+7" This reverts commit f050d4119a2316b27588076d4fc90152773fc019.
2016-02-13Bug 485220: [Architecture] Provide a more modular architectureChristian W. Damus8-7/+16 Fix build failure to resolve bundles in referenced p2 repositories by restoring the missing <groupId> elements in the POMs which, as it turns out, are not inherited from the parent module, despite what the m2e validator says. Change-Id: I62dacc9c70c940d28c3c02e1e35c8f874a7d3df0
2016-02-12Bug 485220: [Architecture] Provide a more modular architectureChristian W. Damus77-1516/+7696 Factor UI dependencies out of the UML Element Types bundle. This includes moving some advices that interact with the user into a new org.eclipse.papyrus.uml.service.types.ui bundle. Pull up the PasteCommandService and IPasteCommandProvider API into the Infra Diagram layer where the extension point is defined. Deprecate the old API in the UML layer. Introduce a service for participation of languages in CSS styling: * styling reset actions in the Reset Style command * access to semantic model classes and properties to make available to CSS Factor PapyrusObservableValue and cohorts out of the UML Tools bundle into the Infra Layer for more general reuse and to relieve the Diagram Infrastructure layer of UML dependencies. The old API remains as deprecated. Remove the Infra Diagram Layer dependency on UML Layer for property testers governing deletion in the diagram. Includes introduction of a new IGraphicalDeletionHelper OSGi service for delegation of the determination of whether an element can be deleted from the diagram and replacement of the XML expression properties * org.eclipse.papyrus.uml.diagram.common.isSemanticDeletion * org.eclipse.papyrus.uml.diagram.common.isReadOnly by * org.eclipse.papyrus.infra.gmfdiag.common.isSemanticDeletion * org.eclipse.papyrus.infra.gmfdiag.common.canDelete (where the latter is the negation of the property that it supersedes) Extract UML dependencies from the Diagram Outline and CSS Editor bundles. Remove unused MDTUtil APIs that referenced a UML-specific annotation. Move the Diagram Infrastructure CSS Palette bundle into the UML layer because it serves to provide extensions on the Palette Service, which is an overtly UML-specific capability. All client APIs for the Properties View are moved from bundle to a new bundle. This includes renaming of: * extension points * label-provider contexts * XWT namespaces Add an "all UI tests" suite. Define a componentized hierarchical build layout of the main plug-ins Change-Id: I43f8f3644857a18b69715f5a2f1da9b1cf286d67
2016-02-03Bug 487098: [ServiceUtils] NPE when closing PapyrusCamille Letavernier1-1/+8 Change-Id: I191dc51f9a33a164c69f42e0261af595963f7ab1 Signed-off-by: Camille Letavernier <>
2016-02-01Bug 486921: [CDO] Lots of new CDO Tests failuresChristian W. Damus1-1/+3 Update default language provider to implement safe iteration of resources in the CDO context.
2016-01-29Bug 486834: Language service doesn't understand new resourcesChristian W. Damus5-4/+142 A resource that is new (such as in the New Model Wizard) cannot provide a content-type via its persisted state because that doesn't yet exist, so it is necessary to infer (as much as possible) a content-type from the in-memory state. This also introduces a cache by schema that can help to avoid the cost of accessing persisted content redundantly for the purpose of descibing the content.
2016-01-22Bug 485220: [Architecture] Provide a more modular architectureChristian W. Damus14-306/+404 Decouple infra bundles from dependencies on UML, especially for access to the semantic model, using new APIs provided by the ILanguageService and IModel and also by the refined and new implementation of the SemanticService APIs defined in previous releases. Provide generalized access to SemanticEMFContentProviders for the semantic model content in the ModelSet by adaptation of IModels (semantic IModels per new Language Service API) to a new ISemanticContentProviderFactory protocol that creates content providers appropriate to the specific semantic model. Move the identifier of the Papyrus toolbar contribution out of the UML namespace: org.eclipse.papyrus.uml.diagram.ui.toolbar is now just org.eclipse.papyrus.ui.toolbar. Add a new XML enablement expression definition named org.eclipse.papyrus.ui.semanticModelActive as a generalization of the org.eclipse.papyrus.uml.diagram.common.IsPapyrusActiveWithUMLModel for more than just UML Papyrus editors. Tests all still pass (inasmuch as they do in the nightly master builds). Change-Id: I41af229742134428e9e00f41575c14ef1aaf5e09
2016-01-22Bug 485220: [Architecture] Provide a more modular architectureChristian W. Damus1-8/+30 Move UI-dependent APIs from the org.eclipse.papyrus.infra.constraints bundle to a new org.eclipse.papyrus.infra.constraints.ui bundle. Replace usage of ISelection and IStructuredSelection in Constraint and ConstraintEngine API methods with Object and Collection<?>, respectively. Move the ElementTypesPreferences class from the infra.elementtypesconfigurations bundle to a new infra.elementtypesconfigurations.ui bundle. For compatibility, it still persists its data via an `IMemento` in the preferences of the core `infra.elementtypesconfigurations` bundle. It implements a new provider extension interface that allows the core bundle's element-type registry to call out to it to get user-defined element types from the workspace. Move the RuntimeValuesEditionAdviceEditHelperAdvice class and some of its attendants from the infra.elementtypesconfigurations.emf bundle to the new infra.elementtypesconfigurations.ui bundle because it needs to open the EditionDialog to let the user edit objects. Likewise the similar APIs in the infra.extendedtypes bundle, including also the entire providers package for action-providers, with the ExtendedElementTypeActionService class, the IExtendedElementTypeActionProvider interface, and the corresponding extension point namespace. Move the ElementTypeValidator class from the bundle to a new bundle. Other fixes for simple inessential UI dependencies and also conflicts in bundle classpaths (such as in the Sequence Diagram particularly) that cause deadlocks in class loading in a complete Papyrus environment, such as the AllTests suite. Factor the UI dependencies out of the infra.onefile bundle into a new infra.onefile.ui bundle. Tests all still pass (inasmuch as they do in the nightly master builds). Change-Id: I43510c84f54c3e0e52cd7d2aa3ca6aca95b894a7
2016-01-22Bug 485220: [Architecture] Provide a more modular architectureChristian W. Damus173-23494/+12119 Move UI-dependent APIs from the bundle to org.eclipse.papyrus.infra.ui. Accordingly move tests into a new org.eclipse.papyrus.infra.ui.tests bundle. Two crucial UI dependencies are inverted by introduction of new OSGi services with core interfaces specified in the non-UI layer: * IExecutorService extends Java Platform's ExecutorService with APIs for synchronous execution (a la Display.syncExec). A new CoreExecutors class in the bundle supplies the instance provided by the OSGi service implementation in the infra.ui bundle. This provides compatibility for clients of various UIUtil APIs that they can no longer access * IContextualServiceRegistryTracker abstracts the concept of the default ServicesRegistry found in the currently active editor, which the ServiceUtilsForHandlers class (and hence all of its clients) relies on. Again an OSGi service implementation in the infra.ui bundle supplies the implementation of this tracker, which is exposed in infra.core through the service-utils API Also move UI-dependent APIs from the org.eclipse.papyrus.infra.core bundle into org.eclipse.papyrus.infra.ui. This includes * moving the 'papyrusDiagram' and 'papyrusContentOutline' extension points into the org.eclipse.papyrus.infra.ui namespace * moving various UI-related services such as EditorLifeycleManager, SaveLayoutBeforeClose, and the IMultiDiagramEditor, itself, into the org.eclipse.papyrus.infra.ui bundle This necessitates not only widespread refactorings on the moved APIs, but also concomitant move of other APIs in other bundles because they cannot plausibly use these moved APIs from their new home in org.eclipse.papyrus.infra.ui and/or they cannot reasonably also be moved to the UI bundle and/or they must be used by bundles that now have no UI dependency: * the DI/sash-windows EMF model is moved out of infra.core.sasheditor.di bundle into a new model-only org.eclipse.papyrus.infra.sashwindows.di bundle (which symbolic name incidentally now better reflects the contained Java package names) * the IPageManager and ILocalPageService interfaces are moved out of infra.core.sasheditor.di bundle because they need to remain accessible by headless code such as the edit advices that ensure deletion of sash-model pages for notations that are deleted. These are now in a package named org.eclipse.papyrus.infra.code.sashwindows.di.service. Accordingly the class hierarchy implementing the IPageManager interface is changed: the obsolete PageMngrImpl is deleted, replaced by a BasicPageManagerImpl which now the PageManagerImpl extends. A service factory creates the basic page manager in a headless context, but is overridden by the UI-aware implementation when the UI bundles are installed * the MultiDiagramEditorGefDelegate (which has a GEF 3 dependency) is moved from the org.eclipse.papyrus.infra.core.sasheditor bundle to a new org.eclipse.papyrus.infra.gmfdiag.gef bundle. Its usage for an adapter of ActionRegistry type is extracted out of the CoreMultiDiagramEditor class into a new external adapter-factory in the infra.gmfdiag.gef bundle Tests all still pass (inasmuch as they do in the nightly master builds). Change-Id: I573dee5d9312d6e5746d74575350d0152b591ab3
2016-01-06Bug 485220: Remove some unused dependencies in infra layerChristian W. Damus1-5/+1 Simple removal of dependencies declared in the manifests of infra layer bundles that aren't used by those bundles. Some of these dependencies are invalid (UI dependencies in core bundles, misplaced UML or GMF/GEF dependencies, etc.) that confuse the architectural analysis.
2015-12-09Bug 469188: [Editor] Page management improvements in the Papyrus multi-editorChristian W. Damus4-26/+205 Ensure that the "close all diagrams" command doesn't actually close the Welcome Page only to have it open again.
2015-12-08Bug 469188: [Editor] Page management improvements in the Papyrus multi-editorChristian W. Damus34-2008/+2977 This is a squashed commit comprising all of the changes on the committers/cdamus/469188-editor-welcome branch for the introduction of a Welcome Page in the Papyrus Editor. commit 51d64a198c2069b208b5231212a5514441514c54 Implement drag-and-drop rearrangement of the sections in the simple grid-wise layout of the Welcome Page. Persist the user's customization in the sash/di resource with the sash model, using new classes in the Welcome package. commit b59f057cf1e08b51942aac1f45226a304c48039e Fix enablement condition for Show Welcome Page action which has been broken since the page was changed from an editor to a plain composite. commit 69cee20b44c699c6a078e66bf9b16a83c1de7315 Remove the databinding properties APIs for Forms widgets that are no longer needed since the NatTable refactoring of the Diagrams table in the welcome page. commit 00cfdd106421c0b1366c2a7deade819b4a3041ef Add table of languages to the General section in the welcome page. Add section of hyperlinks to related views to the welcome page. Implement ordering of the contents of the welcome page according to tab 'afterTab' relationships and priorities. Overall the layout is still two rows with a variable number of columns. commit a7d739b8e03bea5d4cf5e4d0d3663adbc62f5018 Let the SashModel report to listeners when its storage mode changes so that the two different UI presentations of that mode can remain up-to- date at all times. commit 7fc4f8bf1f0fcee31f84b976e29cd7b3848ec47d Ensure that new models initially track the active page of each tab folder because they store their layout privately by default. commit 6d5dbf27a4428645655bcf6ff9a99d4a3c77dcb8 Implement optional tracking of the active page in the private sash model and switching between private and shared storage of the layout. Includes: * enhancement of the Sash DI model to include a currently selected page for each tab folder and a boolean flag whether to restore the last selection in each tab folder * a new editor lifecycle event for "pre display" to provide a hook to set up the page activation before the SWT controls are rendered, so that the editor doesn't open up and then change page selections while the user watches * expose the SaveLayoutBeforeClose behaviour for re-use when changing layout options in the welcome page * update enablement from editable-ness for Properties widgets that force refresh commit 97897b3d0d295a71a7173a584ceda3ac24c5c6ea Factor out some more common bits into core plug-ins (e.g., the IsWelcomeElement constraint in the properties environment). Create the list of tables in the welcome page. This requires some renaming of properties model content in the diagrams list for disambiguation. commit f73fe34e87c915cc603ec12c608c020406ea7d73 Refactor the Diagrams table as a reusable NatTable of hyperlinks. commit a6308f25a8c6e6c129174e9c418cb90e6f025e16 Move the column headers of the diagrams table out into a separate composite that does not scroll vertically with the table of hyperlinks (though it does track the table's horizontal scroll position). commit 0425bf34630e4420db3674fa8d4641820a305478 Add a separate preference page for Welcome Page Content. This depends on a new extension in the context registry for association of contexts with preferences pages (by default, associating legacy contexts with the Properties View preference page). commit 06719c107a3f323be53ca6ada4f820f2d4ef10cb Rework the contribution of welcome-page content to: * eliminate the custom extension point for section providers * use the Properties View framework to obtain welcome-page sections for the Welcome model element Update the Diagrams table provider as a property section for the Welcome model. This involves implementation of a custom table-of- hyperlinks widget. Several reusable data-bindings classes are added to the appropriate Papyrus infra-layer bundles. commit 4069f62cc89413b8739cc6c33211ac5a11942bc4 Welcome page content for diagrams. commit 8599ee6bdf7b2c7423811fee3e2441a618621ce4 The Welcome Page doesn't need to be an editor, just a composite. So, let any page part (including simple composites) be optionally closeable and change the WelcomePage into a simple composite part instead of a nested workbench editor-part. commit 83b581ea9aadb5b852b36b2fa0524ca7df60b255 Initial definition of an extension point for welcome section providers. commit f949eaf6cf131449f4584b71072033b22cd1cea2 Initial implementation of a (so far, empty) Welcome page that is always open when no other Papyrus editor pages are open. Change-Id: I351118dc0b6a0dea505719a8c62ef430c273c7cf
2015-12-02Bug 434983: [SashEditor] Provide a mechanism to move the editor layout model ↵Christian W. Damus15-7/+794
to either the *.di (Legacy) or hidden *.sash resource (1.0) Implement new actions in the editor's drop-down tool menu for selection of the the sash-editor page layout storage mode (private or shared). Also prompt on first opening of a legacy-mode (shared layout) model to make it private, as determined by the non-existence of a private *.sash resource, with a corresponding preference page. Rather than introduce a new service for the purpose, add the handling of first-open of a model in the SaveBeforeCloseService, which already has an editor lifecycle listener for managing persistence of the page layout, and this is another aspect of that persistence management function. Don't rename it as SashModelPersistenceService because it is public API. Change-Id: I64ec33c6471a16d711426644dba84981e85b2cba
2015-11-24Bug 482949: Problems with ResourceAdapter.TransactionalChristian W. Damus1-6/+74 Fix ResourceAdapter.Transactional adding itself to the editing domain instead of removing itself on uninstall. Ensure JUnit coverage on par with the non-transactional variant.
2015-10-30Bug 481151: ResourceAdapter does not detect changes to contents of ↵Christian W. Damus1-5/+6
pre-existing resources Ensure that the ResourceAdapter is attached to all resources already in the resource set during the initial discovery phase.
2015-10-30Bug 481149: [ModelSet] Model snippets added after a model has loaded are ↵Christian W. Damus5-17/+63
never started Ensure that model snippets are started as soon as they are added, if the model has already been loaded. Also fix the omission of snippet starting on creation (not loading) of a new model.
2015-10-21Bug 480209: [Control Mode] Referencing resources are not marked as modifiedCalin GLITIA1-0/+2 - fix ProxyModificationTrackingAdapter so referencing resources of notification object are set as modified, not only the ones of its children Change-Id: I4eebb170dbbafb33be74e24c16baed7c1854ed7e Signed-off-by: Calin GLITIA <>
2015-10-16Bug 479999: Compilation error in sasheditor on internal API removed in NeonChristian W. Damus3-19/+37 Replace used of the internal Util API for getting adapters that no longer exists by the corresponding PlatformHelper API in the Papyrus utils bundle. The sash-editor bundle could not reuse the AdapterUtils from the Papyrus core bundle, and this API was already partially redundant with the earlier API in the lower-level bundle, so a minor refactoring pushes down the AdapterUtils operations to PlatformHelper with compatible signatures.
2015-09-17476625: [GEF4] Implement an "Open with..." action for Papyrus DiagramsCamille Letavernier56-646/+1388 Change-Id: Ibe9a085bca197c8ef6aae2a37c044ca8429b3fee Signed-off-by: Camille Letavernier <>
2015-09-02476371: State Machine profile cannot be appliedCamille Letavernier1-2/+7 - Partial fix: avoid NPEs for resources without URI or without File extension Change-Id: I23471d8429e8f707344aac3a8a32ee71f6776c38 Signed-off-by: Camille Letavernier <>

Back to the top