Bug 538408 - Text label length calculated too long for unicode escape sequences
Summary: Text label length calculated too long for unicode escape sequences
Status: NEW
Alias: None
Product: Sirius
Classification: Modeling
Component: Diagram (show other bugs)
Version: 5.1.1   Edit
Hardware: All All
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Project Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords: triaged
Depends on:
Blocks:
 
Reported: 2018-08-30 05:51 EDT by Niko Stotz CLA
Modified: 2021-05-07 05:26 EDT (History)
1 user (show)

See Also:


Attachments
Screenshot showing too long labels (2.95 KB, image/png)
2018-08-30 05:58 EDT, Niko Stotz CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Niko Stotz CLA 2018-08-30 05:51:26 EDT

    
Comment 1 Niko Stotz CLA 2018-08-30 05:57:01 EDT
My diagram shows the result of a toString() method that does something like:

````
public String toString() {
  return this.name + "[\u221E]";
}
````

This leads to too long labels, especially visible when using strikethrough formatting (see attachment).

Version info:
Eclipse Oxygen.3a (4.7.3a) Build id: M20180330-0640
org.eclipse.sirius (5.1.1.201801311428) "Sirius Core Runtime" [Active]
org.eclipse.sirius.common (5.1.1.201801311428) "Sirius Commons" [Active]
org.eclipse.sirius.common.acceleo.aql (5.1.1.201801311428) "Sirius Support for AQL Expressions" [Active]
org.eclipse.sirius.common.acceleo.aql.ide (5.1.1.201801311428) "Sirius IDE Support for AQL Expressions" [Active]
org.eclipse.sirius.common.acceleo.mtl (5.1.1.201801311428) "Sirius Support for Acceleo 3 Expressions" [Active]
org.eclipse.sirius.common.acceleo.mtl.ide (5.1.1.201801311428) "Sirius IDE Support for Acceleo 3 Expressions" [Active]
org.eclipse.sirius.common.interpreter (5.1.1.201801311428) "Sirius Model Query API" [Resolved]
org.eclipse.sirius.common.ui (5.1.1.201801311428) "Sirius UI Commons" [Active]
org.eclipse.sirius.common.ui.ext (5.1.1.201801311428) "Sirius Common UI Extensions" [Starting]
org.eclipse.sirius.diagram (5.1.1.201801311428) "Sirius Diagrams Runtime" [Active]
org.eclipse.sirius.diagram.formatdata (5.1.1.201801311428) "Sirius Formatdata Model" [Active]
org.eclipse.sirius.diagram.layoutdata (5.1.1.201801311428) "Sirius Layoutdata Model" [Active]
org.eclipse.sirius.diagram.sequence (5.1.1.201801311428) "Sirius Sequence Diagrams Model" [Active]
org.eclipse.sirius.diagram.sequence.edit (5.1.1.201801311428) "Sirius Sequence Diagrams Edit Support" [Active]
org.eclipse.sirius.diagram.sequence.ui (5.1.1.201801311428) "Sirius Sequence Diagrams UI" [Active]
org.eclipse.sirius.diagram.ui (5.1.1.201801311428) "Sirius Diagram Specification Editor" [Active]
org.eclipse.sirius.diagram.ui.ext (5.1.1.201801311428) "Sirius Diagram UI Extensions" [Starting]
org.eclipse.sirius.doc (5.1.1.201801311428) "Sirius Documentation" [Resolved]
org.eclipse.sirius.ecore.extender (5.1.1.201801311428) "Sirius Metamodel Extender Support" [Active]
org.eclipse.sirius.editor (5.1.1.201801311428) "Sirius Viewpoints Specification Editor" [Active]
org.eclipse.sirius.editor.diagram (5.1.1.201801311428) "Sirius Diagrams Specification Editor" [Active]
org.eclipse.sirius.editor.properties (5.1.1.201801311428) "Sirius Properties View Specification Editor" [Active]
org.eclipse.sirius.editor.properties.ext.widgets.reference (5.1.1.201801311428) "Sirius Properties View Extension Reference Widget Properties" [Active]
org.eclipse.sirius.editor.sequence (5.1.1.201801311428) "Sirius Sequence Diagrams Specification Editor" [Resolved]
org.eclipse.sirius.editor.table (5.1.1.201801311428) "Sirius Tables Specification Editor" [Resolved]
org.eclipse.sirius.editor.tree (5.1.1.201801311428) "Sirius Trees Specification Editor" [Active]
org.eclipse.sirius.ext.base (5.1.1.201801311428) "Sirius Library Extensions - Base" [Active]
org.eclipse.sirius.ext.draw2d (5.1.1.201801311428) "Sirius Library Extension - Draw2D" [Active]
org.eclipse.sirius.ext.e3 (5.1.1.201801311428) "Sirius Library Extension - Eclipse 3.x" [Resolved]
org.eclipse.sirius.ext.e3.ui (5.1.1.201801311428) "Sirius Library Extension - Eclipse 3.x UI" [Starting]
org.eclipse.sirius.ext.emf (5.1.1.201801311428) "Sirius Library Extensions - EMF Core" [Active]
org.eclipse.sirius.ext.emf.edit (5.1.1.201801311428) "Sirius Library Extensions - EMF.Edit" [Resolved]
org.eclipse.sirius.ext.emf.tx (5.1.1.201801311428) "Sirius Library Extension - EMF Transaction" [Resolved]
org.eclipse.sirius.ext.emf.ui (5.1.1.201801311428) "Sirius Library Extension - EMF UI" [Resolved]
org.eclipse.sirius.ext.gef (5.1.1.201801311428) "Sirius Library Extension - GEF" [Resolved]
org.eclipse.sirius.ext.gmf.notation (5.1.1.201801311428) "Sirius Library Extension - GMF Notation" [Resolved]
org.eclipse.sirius.ext.gmf.runtime (5.1.1.201801311428) "Sirius Library Extension - GMF Runtime" [Resolved]
org.eclipse.sirius.ext.jface (5.1.1.201801311428) "Sirius Library Extension - JFace" [Resolved]
org.eclipse.sirius.ext.swt (5.1.1.201801311428) "Sirius Library Extension - SWT" [Resolved]
org.eclipse.sirius.interpreter (5.1.1.201801311428) "Sirius Integration for Interpreter View" [Starting]
org.eclipse.sirius.properties (5.1.1.201801311428) "Sirius Properties View Model" [Active]
org.eclipse.sirius.properties.core (5.1.1.201801311428) "Sirius Properties View Runtime" [Active]
org.eclipse.sirius.properties.defaultrules (5.1.1.201801311428) "Sirius Properties Default Rules" [Resolved]
org.eclipse.sirius.properties.edit (5.1.1.201801311428) "Sirius Properties View Model Edit Support" [Active]
org.eclipse.sirius.properties.ext.widgets.reference (5.1.1.201801311428) "Sirius Properties View Extension Reference Widget Model" [Active]
org.eclipse.sirius.properties.ext.widgets.reference.edit (5.1.1.201801311428) "Sirius Properties View Extension Reference Widget Edit Support" [Starting]
org.eclipse.sirius.synchronizer (5.1.1.201801311428) "Sirius Model Synchronizer" [Starting]
org.eclipse.sirius.table (5.1.1.201801311428) "Sirius Table Model" [Active]
org.eclipse.sirius.table.ui (5.1.1.201801311428) "Sirius Tables UI" [Active]
org.eclipse.sirius.table.ui.ext (5.1.1.201801311428) "Sirius Tables UI Extensions" [Starting]
org.eclipse.sirius.tree (5.1.1.201801311428) "Sirius Tree Model" [Active]
org.eclipse.sirius.tree.ui (5.1.1.201801311428) "Sirius Tree Specification Editor" [Active]
org.eclipse.sirius.tree.ui.ext (5.1.1.201801311428) "Sirius Tree UI Extensions" [Starting]
org.eclipse.sirius.ui (5.1.1.201801311428) "Sirius UI" [Active]
org.eclipse.sirius.ui.editor (5.1.1.201801311428) "Sirius Aird Editor" [Active]
org.eclipse.sirius.ui.ext (5.1.1.201801311428) "Sirius UI Extensions" [Starting]
org.eclipse.sirius.ui.properties (5.1.1.201801311428) "Sirius Properties View Runtime UI" [Active]
org.eclipse.sirius.ui.properties.ext.widgets.reference (5.1.1.201801311428) "Sirius Properties View Extension Reference Widget Properties UI" [Resolved]
Comment 2 Niko Stotz CLA 2018-08-30 05:58:51 EDT
Created attachment 275609 [details]
Screenshot showing too long labels
Comment 3 Pierre-Charles David CLA 2018-09-07 04:05:08 EDT
I don't have time to investigate further at the moment, but one possible location to look at would be in org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures.SiriusWrapLabel.getTextExtents(String, Font, int), where we call FigureUtilities.getTextExtents(s, f) (from Draw2D) to get the text's dimension given a particular font.