siriuscon2016 - let me sirius that for you: properties views

39
Properties View: Let me Sirius that for you!

Upload: melbats

Post on 16-Apr-2017

300 views

Category:

Technology


1 download

TRANSCRIPT

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 for complex Ecore models

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

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 widgetHelp Expression

Help Expression:"Title of the talk"

Text widget

Initial Operation: Begin

Initial Operation

Set → Value Expression: "aql:newValue"

Set → Feature Name:"name"Model Operations

Attribute

Variable

Demo

Über Custom widget

Better integration with EMF.Edit

General EditingDomain related ServicesgetEditingDomain, getAdapterFactory, getAdapter...

4.0

General EditingDomain related ServicesgetEditingDomain, getAdapterFactory, getAdapter...

4.0

Item Providers ServicesgetLabelProviderText, getLabelProviderImage,getColorProviderBackground...

General EditingDomain related ServicesgetEditingDomain, getAdapterFactory, getAdapter...

4.0

Item Providers ServicesgetLabelProviderText, getLabelProviderImage,getColorProviderBackground...

Item Property related ServicesgetPropertyDescriptorDisplayName, getPropertyDescriptorChoiceOfValues, isPropertyDescriptorMany...

General EditingDomain related ServicesgetEditingDomain, getAdapterFactory, getAdapter...

4.0

Item Providers ServicesgetLabelProviderText, getLabelProviderImage,getColorProviderBackground...

Item Property related ServicesgetPropertyDescriptorDisplayName, getPropertyDescriptorChoiceOfValues, isPropertyDescriptorMany...

Command related ServicesperformSetCommand, performAddCommand, performUnsetCommand...

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 singledefinition?

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 = EBoolean

Demo

Default rulesBased on the dynamic mapping mechanism

Demo

Thanks!

Questions?

@mbats@sbegaudeau