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 "Eclipse UML Generators/Specification/UserInterface/ConsistencyImprovement"

Line 21: Line 21:
  
 
== Detailed Specification  ==
 
== Detailed Specification  ==
=== Generation launch===
+
=== Generation processing ===
 
Java and RTSJ generation are launched on UML files and C generation is launched on UML Elements (classes, packages...).
 
Java and RTSJ generation are launched on UML files and C generation is launched on UML Elements (classes, packages...).
  
==== From UML model ====
+
==== Configuration====
 +
All generations, Java, RTSJ and C, can be specialized using some properties like the generation target folder, the file headers...
 +
Currently, RTSJ and C generation use UML model properties
 +
[[Image:UMLGen-Properties C.png|thumb|center|668px]]
 +
 
 +
and Java generation defines them in the launcher.
 +
[[Image:UMLGen-Properties Generate Java 1.png|thumb|center|668px]]
 +
 
 +
 
 +
For consistency, all generation properties will be accessible from the UML model properties (as RTSJ and C).
 +
[[Image:UMLGen-Properties-After.png|thumb|center|668px]]
 +
 
 +
 
 +
==== Launching from UML model ====
 
Currently, Java is generated with an Acceleo launcher  
 
Currently, Java is generated with an Acceleo launcher  
 
[[Image:UMLGen-JavaBuilder.png|thumb|center|668px]]
 
[[Image:UMLGen-JavaBuilder.png|thumb|center|668px]]
Line 38: Line 51:
 
Comment : The Acceleo launcher will not be removed.
 
Comment : The Acceleo launcher will not be removed.
  
====From UML elements ====
+
====Launching from UML elements ====
 
C generation is directly launched in the context menu. As Java generation, the "UML Generators" menu is added for consistency.
 
C generation is directly launched in the context menu. As Java generation, the "UML Generators" menu is added for consistency.
 
[[Image:UMLGen-ContextMenuC-Before.png|thumb|center|668px]]  
 
[[Image:UMLGen-ContextMenuC-Before.png|thumb|center|668px]]  
Line 44: Line 57:
  
  
=== Generation properties ===
+
=== Reversing processing ===
All generations, Java, RTSJ and C, can be specialized using some properties like the generation target folder, the file headers...
+
==== Configuration====
Currently, RTSJ and C generation use UML model properties
+
[[Image:UMLGen-Properties C.png|thumb|center|668px]]
+
 
+
and Java generation defines them in the launcher.
+
[[Image:UMLGen-Properties Generate Java 1.png|thumb|center|668px]]
+
 
+
 
+
For consistency, all generation properties will be accessible from the UML model properties (as RTSJ and C).
+
[[Image:UMLGen-Properties-After.png|thumb|center|668px]]
+
 
+
 
+
=== C reverse properties ===
+
 
Properties can be defined for C reverse, they are available from C project properties. No updates will be done.
 
Properties can be defined for C reverse, they are available from C project properties. No updates will be done.
 
[[Image:UMLGen-Properties Reverse C.png|thumb|center|668px]]
 
[[Image:UMLGen-Properties Reverse C.png|thumb|center|668px]]
  
=== C reverse actions ===
+
==== Launching from nature  ====
 
There are two menu actions to add and remove the C2UML nature from C projects. They currently are in the context menu "Convert" witch is used to convert projects in a nature.
 
There are two menu actions to add and remove the C2UML nature from C projects. They currently are in the context menu "Convert" witch is used to convert projects in a nature.
  

Revision as of 08:19, 30 October 2014

Evolution Specification: User interface consistency improvement

Current status is DRAFT

Preamble

This is a proposal to improve the user interface consistency.


Relevant tickets:

  • Bug 449080 - User interface consistency improvement

Introduction

The goal of this ticket is to make the user interface coherent for all the possible generations:

  • context menus;
  • generation builders;
  • properties pages.

Detailed Specification

Generation processing

Java and RTSJ generation are launched on UML files and C generation is launched on UML Elements (classes, packages...).

Configuration

All generations, Java, RTSJ and C, can be specialized using some properties like the generation target folder, the file headers... Currently, RTSJ and C generation use UML model properties

UMLGen-Properties C.png

and Java generation defines them in the launcher.

UMLGen-Properties Generate Java 1.png


For consistency, all generation properties will be accessible from the UML model properties (as RTSJ and C).

UMLGen-Properties-After.png


Launching from UML model

Currently, Java is generated with an Acceleo launcher

UMLGen-JavaBuilder.png

and RTSJ is launched with context menus

UMLGen-Generate AutoJava.png


All generations can be launched in the same context menu: a menu "UML Generators". Icons on menus will be added.

UMLGen-ContextMenu.png


Comment : The Acceleo launcher will not be removed.

Launching from UML elements

C generation is directly launched in the context menu. As Java generation, the "UML Generators" menu is added for consistency.

UMLGen-ContextMenuC-Before.png
UMLGen-ContextMenuC-after.png


Reversing processing

Configuration

Properties can be defined for C reverse, they are available from C project properties. No updates will be done.

UMLGen-Properties Reverse C.png

Launching from nature

There are two menu actions to add and remove the C2UML nature from C projects. They currently are in the context menu "Convert" witch is used to convert projects in a nature.

No update will be done for this. Only icons will be added for menus.

UMLGen-ContextMenuCNature2.png

Backward Compatibility and Migration Paths

Metamodel Changes

This evolution does not change any meta-models.

API Changes

This evolution does not change any API.

User Interface Changes

  • Generation actions will be contained in a "UML Generators" menu;
  • Java generation will be launched from context menus actions;
  • Java generation properties will be accessible from UML model properties;
  • Icons will be added in menu actions.

Documentation Changes

All the user manual should integrate the user interfaces updates.

Tests and Non-regression strategy

This part of the document should describe the strategy to use to correctly test the evolution and guarantee the non-regression.

Implementation choices and tradeoffs

Any important tradeoff or choice made during the implementation should be referenced here with pros/cons leading to the final decision.

Back to the top