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 "Ecore Tools/New and Noteworthy"

 
(17 intermediate revisions by 4 users not shown)
Line 1: Line 1:
= 0.9.x =
 
  
== 0.9.0M6 ==
 
  
=== Improve Diagram navigation ===
 
Now, each time you open a new diagram in a given editor (by double clicking in the editor area or through the outline view), the new diagram is opened in the same editor. It is then possible to navigate between diagrams using the "previous", "parent" or "next" buttons.
 
  
Currently, if you try to change the active diagram from the Project Explorer, the old mechanism is used (each diagram is opened in a separate editor) : this still ensure a way to compare two diagrams visually.
+
= 3.1.0=
  
For further details see: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=242201 Bugzilla 242201]
+
This release is focused on fixing user reports and streamlining some features related to the exploration of existing diagrams, most notably:
 +
* inherited relationships can now be displayed within an EClass shape
 +
* a new contextual explorer view ease the navigation in an existing Ecore model
  
== 0.9.0M5 ==
 
  
=== Collapse elements in the outline view ===
+
= 3.0.0=
[[Image:EcoreTools_CollapseAllInOutline.png]]
+
>>>
+
[[Image:EcoreTools_CollapseAllInOutline_After.png]]
+
  
For further details see: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=242190 Bugzilla 242190]
+
This version is a major version as the legacy diagram editor and corresponding APIs which have been deprecated in 2.0 are no longer provided.
 +
This release streamlined most of the features shipped with 2.0.0 notably :
 +
* '''Better integration with XCore models'''
 +
* Small improvements in the editing experience
 +
* Split of UI/non-ui aspects of EcoreTools easing reuse in slightly different contexts (command-line, server-side)
 +
* Peformance and scalability improvements.
 +
* Switch to AQL (Acceleo Query Langage) as the underlying query engine.
  
== 0.9.0M4 ==
+
= 2.0.0=
  
=== Improve support for multi-model diagrams ===
+
Everything is new, 2.0 is a complete re-implementation based on Sirius. The whole development cycle and the corresponding features has been described in
It is possible to run the "Restore Elements" action from a shortcut element.
+
the following article [http://cedric.brun.io/ecoretools-20-luna-revival/ EcoreTools 2.0 : the Luna Revival].
  
[[Image:EcoreTools_RestoreElementsFromShortcut.png]]
+
Check also the [http://www.eclipse.org/ecoretools/doc/ EcoreTools documentation] to get an idea of what are the new features.
  
For further details see: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=238052 Bugzilla 238052]
+
The short version :
 +
* '''Focused diagrams''' : possibility to DND a model element into the diagram area to show its graphical representation
 +
* '''Doc Annotations''' support : ability to graphically create and edit doc annotation of an Ecore model
 +
* '''Related Elements''' import : ability to import elements in a diagram based on their relationships with others
 +
* '''Doc Table''' support : ability to edit doc annotations using a table.
 +
* '''Smart direct Edit''' : type "name:String", or "[1]", or ":Integer" and the modeler will figure what you meant.
 +
* '''EOpposite''' support : EOpposite References are displayed in the diagram as multi-role edges.
 +
* '''Validation''' layer : The diagram editor can be configured so that any validation Error will be highlighted in the shape.
 +
* '''Multi-Ecore''' : a diagram can represent elements from distinct Ecore files.
 +
* '''Dependencie''' View : a diagram editor to inspect inter-EPackage dependencies.
 +
* '''Generics''' : the ability to design Ecore Generics using the diagram editor
 +
* Tabbed '''Properties View''' : provide advanced capabilities to edit the ecore model
  
== 0.9.0M3 ==
 
  
=== Sexy UI ===
+
The following plugins are considered legacy and will not be provided anymore after this release :
Ecore Tools editor become sexy ! Gradients and shadow borders are available in order to make "shiny" diagrams !
+
* org.eclipse.emf.ecoretools.registration
[[Image:EcoreTools_SexyUI.png]]
+
* org.eclipse.emf.ecoretools.filters
 +
* org.eclipse.emf.ecoretools.diagram
 +
* org.eclipse.emf.ecoretools.diagram.ui.outline
 +
* org.eclipse.emf.ecoretools.codegen
  
You can manage these through Preferences in the Appearance page of the Ecore Tools diagram section :
 
* one preference used to activate/deactivate shadow borders
 
* one preference used to activate/deactivate gradients when figures are filled
 
A change on these preferences are reflected only after changing the active diagram.
 
  
[[Image:EcoreTools_SexyUI_Preferences.png]]
 
  
For further details see: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=235303 Bugzilla 235303]
+
[[EcoreTools/1.x New and Noteworthy | Pre 2.0 new and noteworthy can be found on the dedicated page]]
 
+
=== EMF Actions available in the outline view ===
+
Basic EMF actions are now available in the outline tree viewer :
+
* New Child ...
+
* New Siblings ...
+
* Undo / Redo
+
* Copy / Cut / Paste
+
* Delete
+
* Validate
+
* Control / Uncontrol
+
These actions only affect the domain model, but may involve some refresh at the diagram level.
+
 
+
[[Image:EcoreTools_EMFActions_In_Outline.png]]
+
 
+
For further details see: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=215692 Bugzilla 215692]
+
 
+
= 0.8.x =
+
 
+
== 0.8.0M6 ==
+
 
+
=== Diagram duplication ===
+
You often spend some time to move, resize, align, ... your graphical elements so that your diagram looks pretty nice. And then, you would like to provide a new view with different arrangements (for example one diagram showing only Inheritance links, and another showing only References links) and you need to perform this again...
+
Now, this waste of time is over ! From the outline view, you can duplicate/clone a given diagram, so that you can quickly create new diagrams with the same graphical elements and properties.
+
 
+
[[Image:EcoreTools_DuplicateDiagram.png]]
+
 
+
=== Load Resource ===
+
"Load Resource..." action have been added in the contextual menu of the outline view so that you can reference easily external resources and create quickly some shortcuts in your diagram by simply DND the element from the outline. All those resources will be added under the "Additional Resources" item in the tree.
+
 
+
[[Image:EcoreTools_LoadResource.png]]
+
 
+
== 0.8.0M5 ==
+
 
+
=== Share same Editing Domain ===
+
All the diagrams associated with a same diagram file that can be open into separate editors are sharing the same editing domain : this means that they will be synchronized and when you will save an diagram, it will then save all other diagrams that may be open into separate editors.
+
 
+
For further details see: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=215017 Bugzilla 215017]
+
 
+
=== Delete from diagram ===
+
Delete a view from the diagram is now possible. We are using a custom synchronization policy that manages only removal of orphaned views. This policy is installed on the diagram part using a custom key.
+
 
+
For further details see: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=211852 Bugzilla 211852]
+
 
+
=== Filtering capabilities ===
+
Filtering graphical elements may be useful to hide a given part of the diagram. You can access it from the action bar menu [[Image:EcoreTools_iconFilter.gif]] or directly from the popup menu in the editor area :
+
 
+
[[Image:EcoreTools_FilteringActionBar.png]] [[Image:EcoreTools_FilteringPopupMenu.png]]
+
 
+
There are a few filters already defined :
+
* [[Image:EcoreTools_iconApplyFilter.gif]] '''Hide selection''' : hide all the selected elements
+
* [[Image:EcoreTools_iconApplyFilter.gif]] '''Hide VisualType''' :  hide all the elements selected and those associated with the same visual ID. For example, if you select only one EDataType, this will hide all the other EDataType elements in the current diagram.
+
* [[Image:EcoreTools_iconApplyFilter.gif]] '''Hide SemanticModel''' : hide all the selected elements and those associated with the same semantic element. For example, if you have several graphical representation of the same semantic model in your diagram, this will hide all the graphical occurences, but not only the selected one.
+
* [[Image:EcoreTools_iconApplyFilter.gif]] '''Show All Hidden Parts''' : used to show again all the hidden elements in the current diagram
+
* [[Image:EcoreTools_iconApplyFilter.gif]] '''Hide Inheritance Relations''' : hide all the Inheritance links in the current diagram
+
* [[Image:EcoreTools_iconApplyFilter.gif]] '''Hide Reference Relations''' : hide all the References (containment or not, eopposite or not) links in the current diagram
+
 
+
For further details see: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=210772 Bugzilla 210772]
+
 
+
=== Diagram management through outline ===
+
New actions are available in the outline so that you can manage easily the diagrams associated with your domain model :
+
* [[Image:EcoreTools_iconAdd.gif]] Create diagram : you can add new diagrams when selecting an EPackage and then give it a name
+
* [[Image:EcoreTools_iconDelete.gif]] Delete diagram : you can delete an existing diagram '''except the active diagram''' (in this case, the action will not be present)
+
* [[Image:EcoreTools_iconRename.gif]] Rename diagram : you can also rename an existing diagram
+
 
+
[[Image:EcoreTools_ManageDiagCreation.png]] [[Image:EcoreTools_ManageDiagDeleteRename.png]]
+
 
+
For further details see: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=210768 Bugzilla 210768] and [https://bugs.eclipse.org/bugs/show_bug.cgi?id=215666 Bugzilla 215666] and [https://bugs.eclipse.org/bugs/show_bug.cgi?id=215698 Bugzilla 215698] and [https://bugs.eclipse.org/bugs/show_bug.cgi?id=216109 Bugzilla 216109] and [https://bugs.eclipse.org/bugs/show_bug.cgi?id=218921 Bugzilla 218921]
+
 
+
=== Validation markers shown in the outline ===
+
When validating your model from the graphical editor (you can use the validation action [[Image:EcoreTools_iconValidate.gif]] available in the action bar menu), validation markers are now shown in the outline :
+
 
+
[[Image:EcoreTools_OutlineValidationMarkers.png]]
+
 
+
For further details see: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=215574 Bugzilla 215574] and [https://bugs.eclipse.org/bugs/show_bug.cgi?id=215665 Bugzilla 215665] and [https://bugs.eclipse.org/bugs/show_bug.cgi?id=216093 Bugzilla 216093]
+
 
+
=== Documentation tab in the Properties View ===
+
A new tab appears in the Properties View : this is mainly used to edit an already defined EAnnotation and might probably give you some ideas about new utilities sections we could add in this view !
+
 
+
[[Image:EcoreTools_GenModelDocInPropertiesView.png]]
+
 
+
For further details see: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=215696 Bugzilla 215696]
+
 
+
=== EOpposite references display  ===
+
When two references are set each other as EOpposite, there is only one graphical connection with two labels, as if the two connections were merged. You can still select each of the two references by selecting the corresponding label, but selecting the link will only select one of the two references.
+
 
+
[[Image:EcoreTools_EOppositeDisplay.png]]
+
 
+
For further details see: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=210774 Bugzilla 210774]
+
 
+
== 0.8.0M4 ==
+
 
+
=== Ecore Tools Perspective ===
+
Ecore Tools Perspective could be used to activate useful views and arrange them in a default way. You can activate it through "Window > Open Perspective > Other..." and then select the corresponding perspective.
+
 
+
[[Image:EcoreTools_selectEcorePerspective.png]]
+
 
+
Here is an example of screenshot you can get using the Ecore Tools perspective :
+
 
+
[[Image:EcoreTools_ecorePerspective.png]]
+
 
+
For further details see: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=212407 Bugzilla 212407]
+
 
+
=== Ecore project nature ===
+
You can create a new '''Ecore project''' (this is simply a Project with an '''Ecore nature'''). This is not yet currently needed to create such projects for handling ecore model/diagrams, but this might be a basis for implementing further refactoring capabilities ... <font color="blue">TBC</font>
+
 
+
[[Image:EcoreTools_newEcoreProject.png]]
+
 
+
For further details see: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=212407 Bugzilla 212407]
+
 
+
=== Ecore Tools new Creation wizard ===
+
You have the possibility to create a new Ecore diagram from scratch or from an existing Ecore model. In both cases, you can start using the creation wizard that will help you to create and initialize your diagram contents. To start the wizard, select the project where you want to create your model, "Right Click > New > Other..." and then select the corresponding kind of diagram : "Ecore Tools > Ecore Diagram"
+
 
+
[[Image:EcoreTools_newEcoreDiagram.png]]
+
 
+
Once you have selected the corresponding wizard, click on the "Next" button to open the wizard :
+
 
+
[[Image:EcoreTools_NewEcoreDiagramWizard.png]] [[Image:EcoreTools_EcoreDiagramFromModelWizard.png]]
+
 
+
All the informations are grouped into that single wizard page. You have the possibility between
+
* '''creating a new Ecore diagram from scratch''' : in this case, select the "Create a new Model" option. You have then to select the output directory and specify the name for the domain model. The diagram model will be named using the same name, but using *.ecorediag as the file extension.
+
* '''create a new Ecore diagram from an existing domain file''' : in this case, select the "Create from an existing model" option. You have then to select the domain model (Note that if you have initially selected the domain model before opening the creation wizard, it is correctly initialized), and then select the EPackage (the root EPackage generally) to be associated with your diagram. Finally you can choose to initialize or not the diagram : it aims at populated or not initial contents into your diagram depending on the existing domain model structure.
+
 
+
For further details see: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=210796 Bugzilla 210796]
+
 
+
=== Properties View ===
+
The Properties View have been improved to propose a "Model" category used to simplify the way of editing properties. You can also modify several features at the same time.
+
 
+
[[Image:EcoreTools_propertiesView.png]]
+
 
+
=== EClass Hierarchy View ===
+
The view is activated by default using the Ecore Tools perspective, but you can activate it using the magic "Ctrl+3" shortcut and then starting to type "EClass" :
+
 
+
[[Image:EcoreTools_searchHierarchyView.png]]
+
 
+
The EClass Hierarchy View helps to better understand your ecore model hierarchy from the ''ESuperType'' features. You can synchronize [[Image:EcoreTools_SynchronizedIcon.gif]] that view with the current selection or refresh it explicitly [[Image:EcoreTools_refreshIcon.gif]]. You also have the possibility to show the hierarchy into a descending way [[Image:EcoreTools_subHierarchyIcon.gif]] or ascending way [[Image:EcoreTools_superHierarchyIcon.gif]] :
+
 
+
[[Image:EcoreTools_hierarchyView.png]]
+
 
+
For further details see: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=212405 Bugzilla 212405]
+
 
+
=== EClass References View ===
+
This view is useful to show all the ''EReference'' elements that are referencing the ''EClass'' currently selected. You can synchronize [[Image:EcoreTools_SynchronizedIcon.gif]] that view with the current selection or refresh it explicitly [[Image:EcoreTools_refreshIcon.gif]]. Those references are categorized depending on their parent ''EClass''. This view is also available from the Ecore Tree structure editor or from any other editor which can provide a selection from an ''EClass'' :
+
 
+
[[Image:EcoreTools_referencesView.png]]
+
 
+
For further details see: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=212406 Bugzilla 212406]
+
 
+
=== Outline View ===
+
 
+
The Outline View is composed of two parts :
+
* an '''Overview''' : birdview of the diagram canvas
+
* a '''Navigator''' : model-oriented tree view of the model which is currently edited.
+
 
+
You can choose to display both parts or just one using toogle buttons [[Image:EcoreTools_TreeIcon.gif]] [[Image:EcoreTools_OverviewIcon.gif]] [[Image:EcoreTools_AllIcon.gif]] :
+
 
+
[[Image:ecoretools_outline1.PNG]] [[Image:ecoretools_outline3.PNG]] [[Image:ecoretools_outline2.PNG]]
+
 
+
The Outline Navigator can be synchronized with the editor [[Image:EcoreTools_SynchronizedIcon.gif]] : when selecting one or several element in the outline, all the graphical occurences are also selected in the current diagram, and while the diagram selction changes, associated domain elements are selected in the outline navigator.
+
 
+
[[Image:EcoreTools_SynchronizedOutline.png]]
+
 
+
=== DND capabilities from outline ===
+
 
+
Drag and drop from the outline view is enabled with restoration of connections for elements not yet displayed in the current diagram canvas.
+
 
+
[[Image:ecoretools_dnd.jpg]]
+
 
+
For further details see: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=212768 Bugzilla 212768] and [https://bugs.eclipse.org/bugs/show_bug.cgi?id=214090 Bugzilla 214090]
+
 
+
=== Label customizations ===
+
An additional label is displayed inside the EPackage, EClass, EDataType, EEnum or EAnnotation figure when the corresponding semantic element is represented in another diagram canvas, ie when the graphical occurence is considered as an external element : the label '''(from ''package_name'')''' appears under the element name.
+
 
+
[[Image:ecoretools_label.PNG]]
+
 
+
For further details see : [https://bugs.eclipse.org/bugs/show_bug.cgi?id=211850 Bugzilla 211850]
+

Latest revision as of 04:57, 24 May 2016


3.1.0

This release is focused on fixing user reports and streamlining some features related to the exploration of existing diagrams, most notably:

  • inherited relationships can now be displayed within an EClass shape
  • a new contextual explorer view ease the navigation in an existing Ecore model


3.0.0

This version is a major version as the legacy diagram editor and corresponding APIs which have been deprecated in 2.0 are no longer provided. This release streamlined most of the features shipped with 2.0.0 notably :

  • Better integration with XCore models
  • Small improvements in the editing experience
  • Split of UI/non-ui aspects of EcoreTools easing reuse in slightly different contexts (command-line, server-side)
  • Peformance and scalability improvements.
  • Switch to AQL (Acceleo Query Langage) as the underlying query engine.

2.0.0

Everything is new, 2.0 is a complete re-implementation based on Sirius. The whole development cycle and the corresponding features has been described in the following article EcoreTools 2.0 : the Luna Revival.

Check also the EcoreTools documentation to get an idea of what are the new features.

The short version :

  • Focused diagrams : possibility to DND a model element into the diagram area to show its graphical representation
  • Doc Annotations support : ability to graphically create and edit doc annotation of an Ecore model
  • Related Elements import : ability to import elements in a diagram based on their relationships with others
  • Doc Table support : ability to edit doc annotations using a table.
  • Smart direct Edit : type "name:String", or "[1]", or ":Integer" and the modeler will figure what you meant.
  • EOpposite support : EOpposite References are displayed in the diagram as multi-role edges.
  • Validation layer : The diagram editor can be configured so that any validation Error will be highlighted in the shape.
  • Multi-Ecore : a diagram can represent elements from distinct Ecore files.
  • Dependencie View : a diagram editor to inspect inter-EPackage dependencies.
  • Generics : the ability to design Ecore Generics using the diagram editor
  • Tabbed Properties View : provide advanced capabilities to edit the ecore model


The following plugins are considered legacy and will not be provided anymore after this release :

  • org.eclipse.emf.ecoretools.registration
  • org.eclipse.emf.ecoretools.filters
  • org.eclipse.emf.ecoretools.diagram
  • org.eclipse.emf.ecoretools.diagram.ui.outline
  • org.eclipse.emf.ecoretools.codegen


Pre 2.0 new and noteworthy can be found on the dedicated page

Back to the top