Example usage for org.jfree.data.event SelectionChangeEvent getSelectionExtension

List of usage examples for org.jfree.data.event SelectionChangeEvent getSelectionExtension

Introduction

In this page you can find the example usage for org.jfree.data.event SelectionChangeEvent getSelectionExtension.

Prototype

public DatasetSelectionExtension getSelectionExtension() 

Source Link

Usage

From source file:org.jfree.expdemo.SelectionDemo6Pie.java

private static JFreeChart createChart(final PieDataset dataset, DatasetSelectionExtension ext) {
    JFreeChart chart = ChartFactory.createPieChart("Pie Chart Demo 2", // chart title
            dataset, // dataset
            true, // include legend
            true, false);//from  w  w  w .  j  a  va 2  s .c  o m

    final PiePlot plot = (PiePlot) chart.getPlot();
    plot.setSectionPaint("One", new Color(160, 160, 255));
    plot.setSectionPaint("Two", new Color(128, 128, 255 - 32));
    plot.setSectionPaint("Three", new Color(96, 96, 255 - 64));
    plot.setSectionPaint("Four", new Color(64, 64, 255 - 96));
    plot.setSectionPaint("Five", new Color(32, 32, 255 - 128));
    plot.setSectionPaint("Six", new Color(0, 0, 255 - 144));

    plot.setNoDataMessage("No data available");

    plot.setLabelGenerator(new StandardPieSectionLabelGenerator("{0} ({2} percent)"));
    plot.setLabelBackgroundPaint(new Color(220, 220, 220));

    plot.setLegendLabelToolTipGenerator(new StandardPieSectionLabelGenerator("Tooltip for legend item {0}"));
    plot.setSimpleLabels(true);
    plot.setInteriorGap(0.1);

    //pie plots done use abstract renderers need to react to selection on our own
    final PieCursor cursor = new PieCursor();

    ext.addSelectionChangeListener(new SelectionChangeListener() {
        public void selectionChanged(SelectionChangeEvent event) {
            for (int i = 0; i < dataset.getItemCount(); i++) {
                cursor.setPosition(dataset.getKey(i));
                if (event.getSelectionExtension().isSelected(cursor)) {
                    plot.setExplodePercent(cursor.key, 0.15);
                } else {
                    plot.setExplodePercent(cursor.key, 0.0);
                }
            }
        }
    });

    return chart;
}

From source file:org.jfree.expdemo.SelectionDemo6Pie.java

public void selectionChanged(SelectionChangeEvent event) {
    while (this.model.getRowCount() > 0) {
        this.model.removeRow(0);
    }/*from  w  w  w . jav  a  2s.  c om*/

    PieDatasetSelectionExtension ext = (PieDatasetSelectionExtension) event.getSelectionExtension();
    DatasetIterator iter = ext.getSelectionIterator(true);

    while (iter.hasNext()) {
        PieCursor dc = (PieCursor) iter.nextCursor();
        this.model.addRow(new Object[] { dc.key, this.dataset.getValue(dc.key) });
    }
}

From source file:org.jfree.expdemo.SelectionDemo4.java

/**
 * The selection changed, so we change the table model
 * //ww  w.  j  a v  a  2 s  .  co  m
 * @param event
 */
public void selectionChanged(SelectionChangeEvent event) {
    while (this.model.getRowCount() > 0) {
        this.model.removeRow(0);
    }

    XYDatasetSelectionExtension ext = (XYDatasetSelectionExtension) event.getSelectionExtension();
    DatasetIterator iter = ext.getSelectionIterator(true);

    while (iter.hasNext()) {
        XYCursor dc = (XYCursor) iter.nextCursor();
        this.model.addRow(new Object[] { new Integer(dc.item), dataset.getStartX(dc.series, dc.item),
                this.dataset.getEndX(dc.series, dc.item), this.dataset.getY(dc.series, dc.item) });
    }
}

From source file:org.jfree.expdemo.SelectionDemo2.java

/**
 * The selection changed, so we change the table model
 * /*ww  w .j a  v a 2  s.c o m*/
 * @param event
 */
public void selectionChanged(SelectionChangeEvent event) {
    while (this.model.getRowCount() > 0) {
        this.model.removeRow(0);
    }

    XYDatasetSelectionExtension ext = (XYDatasetSelectionExtension) event.getSelectionExtension();
    DatasetIterator iter = ext.getSelectionIterator(true);

    while (iter.hasNext()) {
        XYCursor dc = (XYCursor) iter.nextCursor();

        Comparable seriesKey = this.dataset.getSeriesKey(dc.series);
        Number x = this.dataset.getX(dc.series, dc.item);
        Number y = this.dataset.getX(dc.series, dc.item);

        this.model.addRow(new Object[] { seriesKey, new Integer(dc.item), x, y });
    }
}

From source file:org.jfree.expdemo.SelectionDemo5Category.java

public void selectionChanged(SelectionChangeEvent event) {
    while (this.model.getRowCount() > 0) {
        this.model.removeRow(0);
    }//from   w w  w .  j a  v  a 2s  . co m

    CategoryDatasetSelectionExtension ext = (CategoryDatasetSelectionExtension) event.getSelectionExtension();
    DatasetIterator iter = ext.getSelectionIterator(true);

    while (iter.hasNext()) {
        CategoryCursor dc = (CategoryCursor) iter.nextCursor();
        this.model.addRow(new Object[] { dc.rowKey, dc.columnKey, dataset.getValue(dc.rowKey, dc.columnKey) });
    }
}

From source file:org.jfree.expdemo.SelectionDemo1.java

/**
 * The selection changed, so we change the table model
 * // www. j a va 2 s . c  o  m
 * @param event
 */
public void selectionChanged(SelectionChangeEvent event) {
    while (this.model.getRowCount() > 0) {
        this.model.removeRow(0);
    }

    XYDatasetSelectionExtension ext = (XYDatasetSelectionExtension) event.getSelectionExtension();
    DatasetIterator iter = ext.getSelectionIterator(true);

    while (iter.hasNext()) {
        XYCursor dc = (XYCursor) iter.nextCursor();

        Comparable seriesKey = this.dataset.getSeriesKey(dc.series);
        RegularTimePeriod p = this.dataset.getSeries(dc.series).getTimePeriod(dc.item);
        Number value = this.dataset.getY(dc.series, dc.item);

        this.model.addRow(new Object[] { seriesKey, new Integer(dc.item), p, value });
    }
}