Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 489293

Summary: Improve the useability of the properties view VSM edition
Product: [Modeling] Sirius Reporter: Pierre-Charles David <pierre-charles.david>
Component: PropertiesAssignee: Pierre-Charles David <pierre-charles.david>
Status: CLOSED FIXED QA Contact:
Severity: enhancement    
Priority: P3 CC: cedric.brun, stephane.begaudeau
Version: 3.1.0Keywords: triaged
Target Milestone: 4.1.0   
Hardware: All   
OS: All   
URL: https://tuleap.eclipse.org/plugins/tracker/?aid=506
See Also: https://git.eclipse.org/r/82646
https://git.eclipse.org/r/82645
https://git.eclipse.org/r/82644
https://git.eclipse.org/c/sirius/org.eclipse.sirius.git/commit/?id=fdb9d9e98fc5105d585e4fbfe0a25d287abb2f79
https://git.eclipse.org/c/sirius/org.eclipse.sirius.git/commit/?id=61966fe477d63f4c1163084bf7da3e529060c187
https://git.eclipse.org/c/sirius/org.eclipse.sirius.git/commit/?id=4c8fb0a75bea66c636f994975723e17d82e26caf
https://git.eclipse.org/r/83658
https://git.eclipse.org/c/sirius/org.eclipse.sirius.git/commit/?id=788636f3642cd75b3d56169ca4b87622fcdd4878
Whiteboard:
Bug Depends on:    
Bug Blocks: 495366    

Description Pierre-Charles David CLA 2016-03-09 10:11:28 EST
This includes (but is not limited to):
* better icons and labels;
* help strings;
* better ordering of the sections and properties;
* support for completion and validation of interpreted expressions;
* better defaults (e.g. "var:self" set explicitly, instead of empty strings, as in property views "var:self" is the default, but everywhere else in Sirius an empty candidates expression means "any type-compatible element in the session's semantic resources";
* better ordering of context menu items (e.g. most common widgets at the top).
Comment 1 Pierre-Charles David CLA 2016-06-14 04:25:35 EDT
Also: specific widgets for some properties, like for example the metamodel selection widget on "Properties View Description"
Comment 2 Pierre-Charles David CLA 2016-06-14 04:27:49 EDT
Also: automatically create some elements which are mandatory anyway. Some of these were done for 4.0, but I think we may have missed a few.
Comment 3 Pierre-Charles David CLA 2016-09-13 04:19:13 EDT
We should also probably add some kind of hint for empty domainClass fields. It is normally not authorized in Sirius, but in GroupDescription for example it is OK to leave it empty, in which case it means "inherited from my parent page(s)".

We could reuse the technique used in IdentifiedElementNamePropertySectionSpec.SmartIdentifiedElementLabelPropertySection for identifiers/labels, and in cases the user has not specified an explicit domainClass have a hint like "computed.Value (inherited)".

There's the added subtelty that a group can be included in multiple pages which have different domainClasses. This means the domainClass for the group is the intersection/union (depending on how you look at it) of mulitple types, which is not something that can normally be specified.
Comment 4 Cedric Brun CLA 2016-09-30 04:45:29 EDT
A few things which confused me the first few minutes:
* the "Identifier" property looks really important (because of its name) though seems to be optional and used for external extensions. If that's actually its only role then it should probably be renamed to something which looks slightly less important (like, Extension Id for instance) and moved into an "advanced" tab.
* on the other hand having slightly more information in the label providers for the groups, page and widgets would help, for instance Group could display the "Label Expression" in addition to a potential identifier
*I've been struggling several minutes to understand why the new "Group" I added was not displayed, turns out I have to add it in a reference in my page but I had no idea as this was initialized with the first group. Prompting for the selection of a page when creating a Group could fix that.
Comment 5 Eclipse Genie CLA 2016-10-06 11:04:34 EDT
New Gerrit change created: https://git.eclipse.org/r/82646
Comment 6 Eclipse Genie CLA 2016-10-06 11:04:37 EDT
New Gerrit change created: https://git.eclipse.org/r/82645
Comment 7 Eclipse Genie CLA 2016-10-06 11:04:38 EDT
New Gerrit change created: https://git.eclipse.org/r/82644
Comment 11 Pierre-Charles David CLA 2016-10-06 11:25:53 EDT
Not all ideas mentioned here could be implemented for 4.1.0, but I'm closing anyway. The other improvements will have to wait for future versions.
Comment 12 Pierre-Charles David CLA 2016-10-18 11:09:12 EDT
Available in Sirius 4.1.0, see https://wiki.eclipse.org/Sirius/4.1.0 for details.
Comment 13 Eclipse Genie CLA 2016-10-21 06:46:11 EDT
New Gerrit change created: https://git.eclipse.org/r/83658