Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "Papyrus/Oxygen Work Description/Refactoring/PaletteDefinition"

(Steps)
 
(15 intermediate revisions by one other user not shown)
Line 18: Line 18:
 
*[https://bugs.eclipse.org/bugs/show_bug.cgi?id=447262 Bug 447262 - |Documentation| No embedded documentation for Diagram Editor Palette Customization]
 
*[https://bugs.eclipse.org/bugs/show_bug.cgi?id=447262 Bug 447262 - |Documentation| No embedded documentation for Diagram Editor Palette Customization]
 
*[https://bugs.eclipse.org/bugs/show_bug.cgi?id=510587 Bug 510587 - |Palette| the palette must not be generated by using GMF gen]
 
*[https://bugs.eclipse.org/bugs/show_bug.cgi?id=510587 Bug 510587 - |Palette| the palette must not be generated by using GMF gen]
*[https://bugs.eclipse.org/bugs/show_bug.cgi?id=510587 Bug 512110 - |Palette| We must a to possibility to override Tool programmaticaly]
+
*[https://bugs.eclipse.org/bugs/show_bug.cgi?id=512110 Bug 512110 - |Palette| We must a to possibility to override Tool programmaticaly]
 +
*[https://bugs.eclipse.org/bugs/show_bug.cgi?id=512944 Bug 512944 - |ElementType| An adviceBindingConfiguration should exist to set cssClass notation attribute]
 +
*[https://bugs.eclipse.org/bugs/show_bug.cgi?id=515531 Bug 515531 - |Palette| migration tools have to be done to pass from 0.7 to 0.8 of paletteconfiguration model.]
  
==Steps done==
+
==Steps==
  
 
#Remove old framework classes in:
 
#Remove old framework classes in:
Line 54: Line 56:
 
#:- from customization to toolsmith for org.eclipse.papyrus.customization.palette
 
#:- from customization to toolsmith for org.eclipse.papyrus.customization.palette
 
#Update paletteConfiguration metamodel
 
#Update paletteConfiguration metamodel
#:- Add entryClassName String property at ElementDescriptor Class. (see [https://bugs.eclipse.org/bugs/show_bug.cgi?id=510587 Bug 512110])
+
#:- Add ''entryClassName'' String property at ToolConfiguration Class. (see [https://bugs.eclipse.org/bugs/show_bug.cgi?id=510587 Bug 512110])
#:- Replace elementTypeId by elementType references.
+
#:- Replace ''elementTypeId'' by ''elementType'' references.
 +
#:- Update java class to be compliant with new metamodel
 +
#:- Update paletteConfiguaration Properties View
 +
#Create migration plugin for paletteConfiguration model
 +
#:- use of qvto
 
#Migrate Palette (see [https://bugs.eclipse.org/bugs/show_bug.cgi?id=510587 Bug 510587])
 
#Migrate Palette (see [https://bugs.eclipse.org/bugs/show_bug.cgi?id=510587 Bug 510587])
#:- UML
+
#:- UML (With gmfGen generation)
#:- SYSML
+
#:- SYSML (with migration tool, the paletteConf from 0.7 is done)
 +
#Create CSSStyle Action for new framework
 +
#:- creation of a plugin to add new action which add cssClass notation property.
 
#Write Migration guide (see [https://bugs.eclipse.org/bugs/show_bug.cgi?id=447262 Bug 447262])
 
#Write Migration guide (see [https://bugs.eclipse.org/bugs/show_bug.cgi?id=447262 Bug 447262])
 
#:- Writed in the palette customization documentation
 
#:- Writed in the palette customization documentation
 +
#Create migration Tools for paletteconfiguration 0.7 to 0.8 (see [https://bugs.eclipse.org/bugs/show_bug.cgi?id=515531 Bug 515531])
 
#Update JUnit Tests
 
#Update JUnit Tests
 
#Create new tests
 
#Create new tests
 
#:- JUnit
 
#:- JUnit
 
#:- RcpTT
 
#:- RcpTT
 +
 +
==Progression==
 +
*Step 1 to 9 (except 8): Gerrit review integrated in master [https://git.eclipse.org/r/#/c/92099/ 92099]
 +
*Step 10:      In wait for now (see [https://bugs.eclipse.org/bugs/show_bug.cgi?id=512944 bug 512944])
 +
*Step 11:      In Progress in gerrit review [https://git.eclipse.org/r/#/c/91047/ 91047] and wiki done [https://wiki.eclipse.org/Papyrus/Migration_Guide/Oxygen#PaletteConfiguration_model here]
 +
*Step 12-13:  In wait for now
 +
 +
==Reviews==
 +
*[https://git.eclipse.org/r/#/c/92099/ Gerrit 92099: Bug 512343 - |Palette| Papyrus Palette framework should be refactored ]
 +
*[https://git.eclipse.org/r/#/c/91047/ Gerrit 91047: Bug 447262 - |Documentation| No embedded documentation for Diagram Editor Palette Customization ]
  
 
==Regression==
 
==Regression==
*Manage of required profiles of palette need uml dependencies which have been removed '''FIXME'''
+
*Manage of required profiles of palette need uml dependencies which have been removed. <br>The new Architecture framework will handle the role to load palette taking account of the context.

Latest revision as of 11:39, 20 April 2017

Palette Definition

Papyrus provides facilities to define easily domain specific palettes to be bound to the diagram editors.

However, Papyrus provides two mecahnism to do that. The first one was based on an ad hoc xml configuration file and it is now deprecated framework. The new framework is based on a model definition.

This tasks aims at:

  • removing the deprecated framework from Papyrus
  • replace extension-based definitions of raw diagram editors by a model-based definition
  • improve the model-based palette definition framework to align with legacy implementations if required
  • provide guidance and all the facilities to ease the migration from the deprecated framework to the new model-based

Associated tasks

Main task

Related tasks

Steps

  1. Remove old framework classes in:
    - oep.uml.diagram.common.service
    - oep.uml.diagram.common.service.palette
  2. Move palette framework classes
    from
    - oep.uml.diagram.common.part
    - oep.uml.diagram.common.service
    - oep.uml.diagram.common.service.palette
    to
    - oep.infra.gmfdiag.common.service.palette
  3. Move palette configuration model
    from
    - oep.uml.diagram.paletteconfiguration
    to
    - oep.infra.gmfdiag.paletteconfiguration
  4. Move palette extension points
    from
    - oep.uml.diagram.common.paletteCustomization
    - oep.uml.diagram.common.paletteDefinition
    to
    - oep.infra.gmfdiag.common.paletteCustomization
    - oep.infra.gmfdiag.common.paletteDefinition
  5. Delete plug-ins
    - org.eclipse.papyrus.customization.paletteconfiguration Plug-in
    The plug-in seems not to be usefull. It juste declare facet profile for model explorer...with some query.
    - org.eclipse.papyrus.uml.diagram.css.palette
    The plug-in was used to implement a post action to add css style to an element
    - org.eclipse.papyrus.uml.diagram.common.aspectToolProvider extension point
  6. Move files
    - from uml to infra for oep...paletteconfiguration… plug-in
    - from customization to toolsmith for org.eclipse.papyrus.customization.palette
  7. Update paletteConfiguration metamodel
    - Add entryClassName String property at ToolConfiguration Class. (see Bug 512110)
    - Replace elementTypeId by elementType references.
    - Update java class to be compliant with new metamodel
    - Update paletteConfiguaration Properties View
  8. Create migration plugin for paletteConfiguration model
    - use of qvto
  9. Migrate Palette (see Bug 510587)
    - UML (With gmfGen generation)
    - SYSML (with migration tool, the paletteConf from 0.7 is done)
  10. Create CSSStyle Action for new framework
    - creation of a plugin to add new action which add cssClass notation property.
  11. Write Migration guide (see Bug 447262)
    - Writed in the palette customization documentation
  12. Create migration Tools for paletteconfiguration 0.7 to 0.8 (see Bug 515531)
  13. Update JUnit Tests
  14. Create new tests
    - JUnit
    - RcpTT

Progression

  • Step 1 to 9 (except 8): Gerrit review integrated in master 92099
  • Step 10: In wait for now (see bug 512944)
  • Step 11: In Progress in gerrit review 91047 and wiki done here
  • Step 12-13: In wait for now

Reviews

Regression

  • Manage of required profiles of palette need uml dependencies which have been removed.
    The new Architecture framework will handle the role to load palette taking account of the context.

Back to the top