Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for custom widgets for the form representation #1914

Closed
17 tasks done
Tracked by #1925
sbegaudeau opened this issue Apr 13, 2023 · 0 comments · Fixed by #1958
Closed
17 tasks done
Tracked by #1925

Add support for custom widgets for the form representation #1914

sbegaudeau opened this issue Apr 13, 2023 · 0 comments · Fixed by #1958

Comments

@sbegaudeau
Copy link
Member

sbegaudeau commented Apr 13, 2023

The Form representation currently supports a fixed set of generic widgets.
Even if we enrich this set, it will never account for all the specific needs of concrete applications.
The Sirius Components framework should be open for custom applications to provide their own widgets.

If an application provides such a custom widget, its use both by the studio maker and by the end users should be indisguishable from the core widgets.

Core support

Make the core Form representation extensible with new widgets, independently of the View DSL.

  • Shape written, reviewed and merged
  • ADR written (will be reviewed and merged in the main PR along with the code)
  • Make the Form representation core extensible (backend)
  • Backend code for a basic Slider widget
  • Make FormEventFragments.ts extensible
  • Make PropertySection.tsx extensible
  • Fontend code for a basic Slider widget

Support in the View DSL

Make the View DSL itself and the conversion process (View -> core) extensible to new widgets.

  • Enable support for child creation extenders in the View DSL (Enable child creation extenders in the View DSL #1946)
  • Create slider.ecore which extends view.ecore with the Slider widget definition
  • Make ViewFormDescriptionConverter extensible to support new widgets
  • Implement the conversion logic between the view-based SliderDescription and the API-based one.
  • Create an example View definition which uses the new Slider widget and add tests for it

Support in the Form Description Editor

Allow the Form Description Editor to display and edit custom widgets as if they were "normal" widgets.

  • Make the backend extensible (FormDescriptionEditorGroupComponent)
  • Make the frontend extensible (WidgetOperations, FormDescriptionEditorRepresentation.*)
  • Test using the Slider widget

Finalization

Transverse tasks.

  • Document the steps needed to create a custom widget
  • Integrated tests updated
@sbegaudeau sbegaudeau added this to the 2023.6.0 milestone Apr 13, 2023
pcdavid added a commit that referenced this issue Apr 27, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid added a commit that referenced this issue Apr 27, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
@pcdavid pcdavid linked a pull request May 3, 2023 that will close this issue
39 tasks
pcdavid added a commit that referenced this issue May 3, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid added a commit that referenced this issue May 3, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid added a commit that referenced this issue May 4, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid added a commit that referenced this issue May 5, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid added a commit that referenced this issue May 5, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid added a commit that referenced this issue May 5, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid added a commit that referenced this issue May 5, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid added a commit that referenced this issue May 9, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid added a commit that referenced this issue May 9, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid added a commit that referenced this issue May 10, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid added a commit that referenced this issue May 10, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid added a commit that referenced this issue May 10, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid added a commit that referenced this issue May 10, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid added a commit that referenced this issue May 10, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid added a commit that referenced this issue May 10, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid added a commit that referenced this issue May 10, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid added a commit that referenced this issue May 10, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid added a commit that referenced this issue May 10, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid added a commit that referenced this issue May 10, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
sbegaudeau pushed a commit that referenced this issue May 15, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid added a commit that referenced this issue May 15, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid added a commit that referenced this issue May 15, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid added a commit that referenced this issue May 15, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid added a commit that referenced this issue May 15, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid added a commit that referenced this issue May 15, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid added a commit that referenced this issue May 15, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid added a commit that referenced this issue May 16, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid added a commit that referenced this issue May 16, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid added a commit that referenced this issue May 16, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid added a commit that referenced this issue May 16, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid added a commit that referenced this issue May 16, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid added a commit that referenced this issue May 16, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid added a commit that referenced this issue May 16, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid added a commit that referenced this issue May 16, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid added a commit that referenced this issue May 22, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid added a commit that referenced this issue May 22, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid added a commit that referenced this issue May 22, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
sbegaudeau pushed a commit that referenced this issue May 25, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
sbegaudeau pushed a commit that referenced this issue May 25, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
sbegaudeau pushed a commit that referenced this issue May 25, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
sbegaudeau pushed a commit that referenced this issue May 25, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
sbegaudeau pushed a commit that referenced this issue May 25, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
sbegaudeau pushed a commit that referenced this issue May 25, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
sbegaudeau pushed a commit that referenced this issue May 25, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
sbegaudeau pushed a commit that referenced this issue May 25, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
sbegaudeau pushed a commit that referenced this issue May 25, 2023
Bug: #1914
Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants