From a3abb19e5042eff05b84ff7dfd4b74fd013514fb Mon Sep 17 00:00:00 2001 From: Andreas Buchen Date: Mon, 25 May 2015 18:54:05 +0200 Subject: [PATCH] Draw zero lines in volatility / returns diagram Issue: #292 --- .../ui/views/ReturnsVolatilityChartView.java | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/views/ReturnsVolatilityChartView.java b/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/views/ReturnsVolatilityChartView.java index bc15e1066d..2a13d69fa9 100644 --- a/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/views/ReturnsVolatilityChartView.java +++ b/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/views/ReturnsVolatilityChartView.java @@ -36,12 +36,15 @@ import org.eclipse.jface.layout.GridDataFactory; import org.eclipse.jface.layout.GridLayoutFactory; import org.eclipse.swt.SWT; +import org.eclipse.swt.events.PaintEvent; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Control; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.ToolBar; import org.swtchart.IAxis; +import org.swtchart.ICustomPaintListener; import org.swtchart.ILineSeries; +import org.swtchart.IPlotArea; import org.swtchart.ISeries; public class ReturnsVolatilityChartView extends AbstractHistoricView @@ -110,6 +113,25 @@ protected Composite createBody(Composite parent) yAxis.getTitle().setText(Messages.LabelPeformanceTTWROR); yAxis.getTick().setFormat(new DecimalFormat("0.##%")); //$NON-NLS-1$ + ((IPlotArea) chart.getPlotArea()).addCustomPaintListener(new ICustomPaintListener() + { + @Override + public void paintControl(PaintEvent e) + { + int y = xAxis.getPixelCoordinate(0); + e.gc.drawLine(y, 0, y, e.height); + + int x = yAxis.getPixelCoordinate(0); + e.gc.drawLine(0, x, e.width, x); + } + + @Override + public boolean drawBehindSeries() + { + return true; + } + }); + picker = new ChartConfigurator(composite, this, ChartConfigurator.Mode.RETURN_VOLATILITY); picker.setListener(new ChartConfigurator.Listener() {