Properties View:
Let me Sirius that for you!
Properties
View
Sirius
Things we ♡ in Sirius
● Define your properties in the .odesign file
Things we ♡ in Sirius
● Define your properties in the .odesign file
● Dynamic, no code generation involved
Things we ♡ in Sirius
● Define your properties in the .odesign file
● Dynamic, no code generation involved
● Flexible even...
Things we ♡ in Sirius
● Define your properties in the .odesign file
● Dynamic, no code generation involved
● Flexible even...
Structure
Properties View
Properties
View
Structure
Page
Page
Structure
Group
Group
Structure
Widget
Widget
Text widget
Label Expression
Label Expression:"Name:"
Text widget
Value Expression
Value Expression:"aql:self.name"
Variable
AttributeInterpreter
Text widget
Help Expression
Help Expression:"Title of the talk"
Text widget
Initial Operation: Begin
Initial Operation
Set → Value Expression: "aql:newValue"
Set → Feature Name:"name"
Mo...
Demo
Custom widget
Lifecycle Manager Provider Demo
Über Custom widget
Better integration
with EMF.Edit
General EditingDomain related Services
getEditingDomain, getAdapterFactory, getAdapter...
4.0
General EditingDomain related Services
getEditingDomain, getAdapterFactory, getAdapter...
4.0
Item Providers Services
getL...
General EditingDomain related Services
getEditingDomain, getAdapterFactory, getAdapter...
4.0
Item Providers Services
getL...
General EditingDomain related Services
getEditingDomain, getAdapterFactory, getAdapter...
4.0
Item Providers Services
getL...
How can we help supporting
complex meta-models?
How can we create a text
widget for each “String”
property?
without defining tons of text widgets...
How can we create
multiple widgets
from a single
definition?
Dynamic mappings
iteration
Dynamic mappings
iteration condition
If property.eType = EString
Dynamic mappings
iteration condition widget
If property.eType = EString
Dynamic mappings
iteration condition
If property.eType = EString
If property.eType = EBoolean
widget
Dynamic mappings
iteration condition
If property.eType = EEnum
widget
If property.eType = EString
If property.eType = EBoo...
Demo
Default rules
Based on the dynamic mapping mechanism
Demo
Use it !
Stable
1. Install - Sirius Update Site:
http://download.eclipse.org/sirius/updates/nightly/4.1.x
/neon/
2. Docume...
Thanks!
Questions?
@mbats
@sbegaudeau
SiriusCon2016 - Let me Sirius that for you: Properties Views
SiriusCon2016 - Let me Sirius that for you: Properties Views
SiriusCon2016 - Let me Sirius that for you: Properties Views
Prochain SlideShare
Chargement dans…5
×

SiriusCon2016 - Let me Sirius that for you: Properties Views

437 vues

Publié le

During this talk, we’ll have a look at a handful of the new possibilities offered by the brand new Properties View feature:

Let Sirius automatically create default properties views for your designer
Create a simple properties view description and customize it as you do for other kinds of representations thanks to the following widgets: label, text, text area, checkbox, radio, list, reference
Use the new EMF.Edit customizations provided by Sirius
Discover the power of the dynamic mappings to automatically create the properties view fields for the different types of elements used in your metamodels
Understand how to provide filters and validation programmatically
Learn how to contribute some custom widgets
And much more!

Come to this talk to learn about the new Sirius Properties View feature and how you can use it!

Publié dans : Technologie
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

SiriusCon2016 - Let me Sirius that for you: Properties Views

  1. 1. Properties View: Let me Sirius that for you!
  2. 2. Properties View
  3. 3. Sirius
  4. 4. Things we ♡ in Sirius ● Define your properties in the .odesign file
  5. 5. Things we ♡ in Sirius ● Define your properties in the .odesign file ● Dynamic, no code generation involved
  6. 6. Things we ♡ in Sirius ● Define your properties in the .odesign file ● Dynamic, no code generation involved ● Flexible even for complex Ecore models
  7. 7. Things we ♡ in Sirius ● Define your properties in the .odesign file ● Dynamic, no code generation involved ● Flexible even for complex Ecore models ... APPLIED FOR THE PROPERTY VIEWS
  8. 8. Structure Properties View Properties View
  9. 9. Structure Page Page
  10. 10. Structure Group Group
  11. 11. Structure Widget Widget
  12. 12. Text widget Label Expression Label Expression:"Name:"
  13. 13. Text widget Value Expression Value Expression:"aql:self.name" Variable AttributeInterpreter
  14. 14. Text widget Help Expression Help Expression:"Title of the talk"
  15. 15. Text widget Initial Operation: Begin Initial Operation Set → Value Expression: "aql:newValue" Set → Feature Name:"name" Model Operations Attribute Variable
  16. 16. Demo
  17. 17. Custom widget Lifecycle Manager Provider Demo
  18. 18. Über Custom widget
  19. 19. Better integration with EMF.Edit
  20. 20. General EditingDomain related Services getEditingDomain, getAdapterFactory, getAdapter... 4.0
  21. 21. General EditingDomain related Services getEditingDomain, getAdapterFactory, getAdapter... 4.0 Item Providers Services getLabelProviderText, getLabelProviderImage,getColorProviderBackground...
  22. 22. General EditingDomain related Services getEditingDomain, getAdapterFactory, getAdapter... 4.0 Item Providers Services getLabelProviderText, getLabelProviderImage,getColorProviderBackground... Item Property related Services getPropertyDescriptorDisplayName, getPropertyDescriptorChoiceOfValues, isPropertyDescriptorMany...
  23. 23. General EditingDomain related Services getEditingDomain, getAdapterFactory, getAdapter... 4.0 Item Providers Services getLabelProviderText, getLabelProviderImage,getColorProviderBackground... Item Property related Services getPropertyDescriptorDisplayName, getPropertyDescriptorChoiceOfValues, isPropertyDescriptorMany... Command related Services performSetCommand, performAddCommand, performUnsetCommand...
  24. 24. How can we help supporting complex meta-models?
  25. 25. How can we create a text widget for each “String” property? without defining tons of text widgets...
  26. 26. How can we create multiple widgets from a single definition?
  27. 27. Dynamic mappings iteration
  28. 28. Dynamic mappings iteration condition If property.eType = EString
  29. 29. Dynamic mappings iteration condition widget If property.eType = EString
  30. 30. Dynamic mappings iteration condition If property.eType = EString If property.eType = EBoolean widget
  31. 31. Dynamic mappings iteration condition If property.eType = EEnum widget If property.eType = EString If property.eType = EBoolean
  32. 32. Demo
  33. 33. Default rules Based on the dynamic mapping mechanism
  34. 34. Demo
  35. 35. Use it ! Stable 1. Install - Sirius Update Site: http://download.eclipse.org/sirius/updates/nightly/4.1.x /neon/ 2. Documentation: https://www.eclipse.org/sirius/doc/specifier/Properti es_View_Description.html
  36. 36. Thanks! Questions? @mbats @sbegaudeau

×