--- old/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/charts/QuantitySpanRenderer.java 2019-04-05 13:01:46.273847405 -0400 +++ new/application/org.openjdk.jmc.ui/src/main/java/org/openjdk/jmc/ui/charts/QuantitySpanRenderer.java 2019-04-05 13:01:46.207846706 -0400 @@ -75,6 +75,10 @@ return Math.min(5, (height + 10) / 20); } + public String getName() { + return text; + } + @Override public IRenderedRow render(Graphics2D context, SubdividedQuantityRange xRange, int height) { int margin = calcMargin(height); @@ -101,6 +105,7 @@ private final Paint paint; private final int margin; private String description; + private String text; public QuantitySpanRendering(int margin, XYQuantities points, IRenderedRow content, Paint paint, String text, String description) { @@ -111,12 +116,14 @@ this.content = content; this.paint = paint; this.description = description; + this.text = text; } @Override public void infoAt(IChartInfoVisitor visitor, int x, int y, Point offset) { offset = new Point(offset.x, offset.y + margin); content.infoAt(visitor, x, y, offset); + visitor.enterScope(text, true); // FIXME: Only output this if near the boundaries? At least handle infinite lengths. if (points != null) { @@ -174,6 +181,11 @@ } @Override + public String getName() { + return text; + } + + @Override public String getDescription() { return description; }