Example usage for org.jfree.chart ContextAwareChartPanel ContextAwareChartPanel

List of usage examples for org.jfree.chart ContextAwareChartPanel ContextAwareChartPanel

Introduction

In this page you can find the example usage for org.jfree.chart ContextAwareChartPanel ContextAwareChartPanel.

Prototype

public ContextAwareChartPanel(JFreeChart chart, boolean useBuffer) 

Source Link

Usage

From source file:net.sf.maltcms.chromaui.chromatogram2Dviewer.ui.Chromatogram2DViewTopComponent.java

private Chromatogram2DViewerPanel createPanel(IChromatogramDescriptor chromatogram,
        ADataset2D<IChromatogram2D, IScan2D> ds, List<ChartOverlay> overlays) {
    IPaintScaleProvider ips = Lookup.getDefault().lookup(IPaintScaleProvider.class);
    ips.setMin(ds.getMinZ());/*from   w  w  w .  j  a v  a2s  .  c  o m*/
    ips.setMax(ds.getMaxZ());
    PaintScale ps = ips.getPaintScales().get(0);
    XYPlot p = createPlot(chromatogram, ds, ps);
    p.setDomainGridlinesVisible(false);
    p.setRangeGridlinesVisible(false);
    JFreeChart jfc = new JFreeChart(p);
    final ContextAwareChartPanel cp = new ContextAwareChartPanel(jfc, true);
    cp.setZoomFillPaint(new Color(192, 192, 192, 96));
    cp.setZoomOutlinePaint(new Color(220, 220, 220, 192));
    cp.setFillZoomRectangle(false);
    cp.getChart().getLegend().setVisible(true);
    Chromatogram2DViewerPanel panel = new Chromatogram2DViewerPanel(content, getLookup(), ds, ps);
    if (panel.getBackgroundColor() == null) {
        panel.setBackgroundColor((Color) ps.getPaint(ps.getLowerBound()));
    }
    cp.addKeyListener(panel);
    cp.setFocusable(true);
    cp.setDisplayToolTips(true);
    cp.setDismissDelay(3000);
    cp.setInitialDelay(0);
    cp.setReshowDelay(0);
    cp.setVisible(true);
    cp.setRefreshBuffer(true);
    cp.setMouseWheelEnabled(true);
    if (project != null) {
        for (Peak1DContainer peaks : project.getPeaks(chromatogram)) {
            Peak2DOverlay overlay = new Peak2DOverlay(chromatogram, peaks.getName(), peaks.getDisplayName(),
                    peaks.getShortDescription(), true, peaks);
            cp.addOverlay(overlay);
            content.add(overlay);
            overlays.add(overlay);
        }
    }

    panel.setChartPanel(cp);
    panel.setPlot(p);
    return panel;
}