Example usage for org.jfree.chart.fx.interaction ChartMouseEventFX getTrigger

List of usage examples for org.jfree.chart.fx.interaction ChartMouseEventFX getTrigger

Introduction

In this page you can find the example usage for org.jfree.chart.fx.interaction ChartMouseEventFX getTrigger.

Prototype

public MouseEvent getTrigger() 

Source Link

Document

Returns the mouse event that triggered this event.

Usage

From source file:com.bdb.weather.display.summary.WindSummary.java

@Override
public void chartMouseClicked(ChartMouseEventFX event) {
    ChartEntity entity = event.getEntity();
    ////from ww w. ja v a 2  s .co  m
    // Was a point on the plot selected?
    //
    if (entity instanceof XYItemEntity) {
        XYItemEntity itemEntity = (XYItemEntity) entity;
        XYDataset dataset = itemEntity.getDataset();
        Number x = dataset.getXValue(itemEntity.getSeriesIndex(), itemEntity.getItem());
        LocalDate date = LocalDate.from(Instant.ofEpochMilli(x.longValue()));

        if (event.getTrigger().getClickCount() == 2)
            supporter.launchView(launcher, date);
    }
}

From source file:com.bdb.weather.display.summary.HighLowPanel.java

@Override
public void chartMouseClicked(ChartMouseEventFX event) {
    ChartEntity entity = event.getEntity();
    //// w w w.  j  a  v  a2  s .  c  o  m
    // Was a point on the plot selected?
    //
    if (entity instanceof XYItemEntity) {
        XYItemEntity itemEntity = (XYItemEntity) entity;
        XYDataset dataset = itemEntity.getDataset();
        Number x = dataset.getXValue(itemEntity.getSeriesIndex(), itemEntity.getItem());
        LocalDate date = LocalDate.from(Instant.ofEpochMilli(x.longValue()));
        boolean doubleClick = event.getTrigger().getClickCount() == 2;
        if (doubleClick) {
            supporter.launchView(launcher, date);
        }
    }
}

From source file:com.bdb.weather.display.summary.TemperatureDeviationPlotPanel.java

public TemperatureDeviationPlotPanel(SummaryInterval interval, ViewLauncher theLauncher,
        SummarySupporter theSupporter) {
    this.setPrefSize(500, 300);
    this.interval = interval;
    chart = ChartFactory.createXYBarChart("Deviation from Average Temperature", "Date", true,
            "Deviation (" + Temperature.getDefaultUnit() + ")", null, PlotOrientation.VERTICAL, true, true,
            false);/* w w  w.j  ava2s.  com*/

    chartViewer = new ChartViewer(chart);
    chartViewer.setPrefSize(500, 300);
    chartViewer.addChartMouseListener(new ChartMouseListenerFX() {
        @Override
        public void chartMouseClicked(ChartMouseEventFX event) {
            ChartEntity entity = event.getEntity();
            //
            // Was a point on the plot selected?
            //
            if (entity instanceof XYItemEntity) {
                XYItemEntity itemEntity = (XYItemEntity) entity;
                XYDataset dataset = itemEntity.getDataset();
                Number x = dataset.getXValue(itemEntity.getSeriesIndex(), itemEntity.getItem());
                LocalDate date = LocalDate.from(Instant.ofEpochMilli(x.longValue()));
                boolean doubleClick = event.getTrigger().getClickCount() == 2;
                if (doubleClick) {
                    supporter.launchView(launcher, date);
                }
            }
        }

        @Override
        public void chartMouseMoved(ChartMouseEventFX event) {
            // Do nothing
        }
    });
    deviationPlot = (XYPlot) chart.getPlot();
    this.launcher = theLauncher;
    this.supporter = theSupporter;

    DateFormat dateFormat = interval.getLegacyFormat();
    StandardXYItemLabelGenerator labelGen = new StandardXYItemLabelGenerator(
            StandardCategoryItemLabelGenerator.DEFAULT_LABEL_FORMAT_STRING, dateFormat,
            Temperature.getDefaultFormatter());

    StandardXYToolTipGenerator ttGen = new StandardXYToolTipGenerator(
            StandardCategoryToolTipGenerator.DEFAULT_TOOL_TIP_FORMAT_STRING, dateFormat,
            Temperature.getDefaultFormatter());

    valueAxis = deviationPlot.getRangeAxis();
    valueAxis.setUpperMargin(.20);
    valueAxis.setLowerMargin(.20);

    deviationPlot.getDomainAxis().setVerticalTickLabels(true);
    DateAxis dateAxis = (DateAxis) deviationPlot.getDomainAxis();
    dateAxis.setDateFormatOverride(dateFormat);
    //dateAxis.setTickUnit(interval.getDateTickUnit());

    //DefaultTableColumnModel colModel = new DefaultTableColumnModel();

    dataTable = new TableView();
    //dataTable.setModel(tableModel);
    //dataTable.setColumnModel(colModel);

    //dataTable.setAutoCreateColumnsFromModel(false);

    for (int i = 0; i < TABLE_HEADINGS.length; i++) {
        TableColumn col = new TableColumn();
        col.setText(TABLE_HEADINGS[i]);
        //col.setModelIndex(i);
        //colModel.addColumn(col);
    }

    //tableModel.setColumnCount(TABLE_HEADINGS.length);

    this.setTabContents(chartViewer, dataTable);

    lowRenderer.setBasePaint(Color.BLUE);
    lowRenderer.setBaseItemLabelGenerator(labelGen);
    lowRenderer.setBaseToolTipGenerator(ttGen);
    lowRenderer.setBarAlignmentFactor(.6);
    lowRenderer.setShadowVisible(false);

    meanRenderer.setSeriesPaint(0, Color.CYAN);
    meanRenderer.setBaseItemLabelGenerator(labelGen);
    meanRenderer.setBaseToolTipGenerator(ttGen);
    meanRenderer.setBarAlignmentFactor(.3);
    meanRenderer.setShadowVisible(false);

    highRenderer.setSeriesPaint(0, Color.GRAY);
    highRenderer.setBaseItemLabelGenerator(labelGen);
    highRenderer.setBaseToolTipGenerator(ttGen);
    highRenderer.setShadowVisible(false);
}

From source file:com.bdb.weather.display.summary.HighLowMedianTempPanel.java

@Override
public void chartMouseClicked(ChartMouseEventFX event) {
    ChartEntity entity = event.getEntity();
    ///*from w  w  w . ja  v  a2  s.  c  om*/
    // Was a point on the plot selected?
    //
    if (entity instanceof XYItemEntity) {
        XYItemEntity itemEntity = (XYItemEntity) entity;
        XYDataset dataset = itemEntity.getDataset();
        Number x = dataset.getXValue(itemEntity.getSeriesIndex(), itemEntity.getItem());

        //ZoneId id = ZoneId.of(ZoneId.systemDefault().getId());
        //ZoneOffset offset = ZoneOffset.of(ZoneId.systemDefault().getId());
        LocalDateTime time = LocalDateTime.ofInstant(Instant.ofEpochSecond(x.longValue() / 1000),
                ZoneId.systemDefault());

        boolean doubleClick = event.getTrigger().getClickCount() == 2;
        if (doubleClick)
            supporter.launchView(viewLauncher, time.toLocalDate());
    }
}