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

Several Xtext/Sirius usability problems. #142

Open
NicolasRouquette opened this issue Nov 4, 2017 · 4 comments
Open

Several Xtext/Sirius usability problems. #142

NicolasRouquette opened this issue Nov 4, 2017 · 4 comments

Comments

@NicolasRouquette
Copy link
Member

There are several usability problems with Xtext & Sirius in Eclipse Oxygen.1.

OML WB version 0.9.0.0-M14

Example

The screenshot below shows two editors/views:

  • left, the OML Xtext-based editor
  • right, the OML TerminologyBox Sirius-based view

Note that the synchronization icon is selected on both the Model Explorer and Outline views on the left pane.

omlwb problems

This screenshot reflects the state of the Eclipse UI after these operations:

  1. Select the concept Product on the OML XText editor (left).

    The editor shows the selection with the light blue highlight on line 13.
    The selection highlighting remains even after the following selection.

    The Model Explorer view was updated with the selection on mission.oml,
    not Concept Product nested inside.

  2. Select the mission:SpecifiedElement on the OML TerminologyBox Sirius view (right).

    The view shows the selection with small black squares on each corner and middle of the box.
    The Model Explorer and Outline views are updated with their selections on the same element.

  3. In the Sirius interpreter view (bottom), the completion is invoked after aql:self.

    The available completions are shown in a drop-down scroll list.

Usability problems

A) Lack of synchronized selection between XText editor & Sirius view

The screenshot reflects that the XText editor & Sirius view are not synchronized with each others' selection. If they were synchronized, then:

  • after step (1), mission:Product should have been selected on the view on the right.
  • after step (2), aspect SpecifiedElement on line 11 should have been selected on the editor on the left.

B) Missing "select in other editors/views" action

Assuming that an XText editor and a Sirius view would have a synchronization icon like the Model Explorer and Outline views do, it would be useful when the editor or view are NOT synchronized to have a context menu action to update the selection in other editors/views based on the current selection.

In this example, invoking such an action from the context menu on the mission:SpecifiedElement shown on the OML TerminologyBox view on the right would update the selection on the OML XText editor on the left such that the selection would change from line 13 to line 11.

C) Interpreter completions need to be grouped and sorted

The completions shown in the Sirius Interpreter view are clearly not grouped nor sorted.
Some methods come from the EMF API, some from a diagram-level API.

These methods should be grouped according to which library they originate in.
The library should be shown in one of several forms:

  • a user-friendly name
    e.g., EMF API
  • a developer-friendly osgi bundle name
    e.g., org.eclipse.emf.ecore_2.13.0.v20170609-0707.jar
  • a developer-friendly Maven GAV coordinates
    e.g., org.eclipse.emf : org.eclipse.emf.ecore : 2.13.0.v20170609-0707
  • any combination of the above

D) Interpreter completions should show # of completions and be filterable

The vertical scrollbar on the completion list suggests that there are lots of completion.
The Eclipse Problems view shows a great example of a usable report because:

  • it shows the count of problems; there should be a count of completions available
  • the view can be configured to filter problems by various criteria; the completions should be similarly filterable by name or patterns for user-friendly name, developer-friendly osgi bundle or Maven GAV coordinates

E) How to write Sirius services without building plugins / launching a runtime Eclipse?

It is unclear from the Sirius Writing Queries doc whether it is possible to do the following:

  • In an RCP environment like the OML Workbench -- that is, not launching a runtime eclipse

  • use existing viewpoints (e.g., the OML Viewpoints in the OML Workbench)

  • allow a user to author new services to simplify writing queries

@NicolasRouquette
Copy link
Member Author

Filed Bugzilla issue for (A) here: https://bugs.eclipse.org/bugs/show_bug.cgi?id=526841

@NicolasRouquette
Copy link
Member Author

Filed Bugzilla issue for (B) here: https://bugs.eclipse.org/bugs/show_bug.cgi?id=526842

@NicolasRouquette
Copy link
Member Author

Filed Bugzilla issue for (C,D) here: https://bugs.eclipse.org/bugs/show_bug.cgi?id=526843

@NicolasRouquette
Copy link
Member Author

Filed Bugzilla issue for (E) here: https://bugs.eclipse.org/bugs/show_bug.cgi?id=526844

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant