~ubuntu-branches/ubuntu/vivid/eclipse-linuxtools/vivid-proposed

« back to all changes in this revision

Viewing changes to systemtap/org.eclipse.linuxtools.systemtap.graphing.ui/src/org/eclipse/linuxtools/internal/systemtap/graphing/ui/charts/listeners/PieChartMouseMoveListener.java

  • Committer: Package Import Robot
  • Author(s): Jakub Adam, Jakub Adam, tony mancill
  • Date: 2014-10-11 11:44:05 UTC
  • mfrom: (1.2.4)
  • Revision ID: package-import@ubuntu.com-20141011114405-yazjvxfzzhmi5sgj
Tags: 3.1.0-1
[ Jakub Adam ]
* New upstream release (Closes: #761524).
* Refreshed d/patches.
* Don't build removed feature org.eclipse.linuxtools.tools.launch
  - merged into org.eclipse.linuxtools.profiling.
* Use javac target 1.7.
* Build new feature org.eclipse.linuxtools.dataviewers.feature
  - required by Valgrind integration.
* Build-depend on eclipse-remote-services-api and eclipse-cdt-autotools.
* Bump Standards-Version to 3.9.6.
* Override incompatible-java-bytecode-format - linuxtools needs Java 7.
* Remove unused codeless-jar override.

[ tony mancill ]
* Tweak short package description to make lintian happy.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*******************************************************************************
 
2
 * Copyright (c) 2014 Red Hat, Inc.
 
3
 * All rights reserved. This program and the accompanying materials
 
4
 * are made available under the terms of the Eclipse Public License v1.0
 
5
 * which accompanies this distribution, and is available at
 
6
 * http://www.eclipse.org/legal/epl-v10.html
 
7
 *
 
8
 * Contributors:
 
9
 *     Red Hat - Initial API and implementation.
 
10
 *******************************************************************************/
 
11
package org.eclipse.linuxtools.internal.systemtap.graphing.ui.charts.listeners;
 
12
 
 
13
import java.text.MessageFormat;
 
14
 
 
15
import org.eclipse.linuxtools.dataviewers.piechart.PieChart;
 
16
import org.eclipse.linuxtools.internal.systemtap.graphing.ui.charts.Messages;
 
17
import org.eclipse.swt.events.MouseEvent;
 
18
import org.eclipse.swt.widgets.Composite;
 
19
import org.swtchart.ISeries;
 
20
 
 
21
/**
 
22
 * @since 3.0
 
23
 */
 
24
public class PieChartMouseMoveListener extends ToolTipChartMouseMoveListener {
 
25
    public PieChartMouseMoveListener(PieChart chart, Composite parent) {
 
26
        super(chart, parent);
 
27
    }
 
28
 
 
29
    @Override
 
30
    public void mouseMove(MouseEvent e) {
 
31
        super.mouseMove(e);
 
32
        ISeries[] allSeries = chart.getSeriesSet().getSeries();
 
33
        int numPies = allSeries.length > 0 ? allSeries[0].getXSeries().length : 0;
 
34
        int pieIndex = 0, sliceIndex = -1;
 
35
        for (; pieIndex < numPies; pieIndex++) {
 
36
            sliceIndex = ((PieChart) chart).getSliceIndexFromPosition(pieIndex, e.x, e.y);
 
37
            if (sliceIndex != -1) {
 
38
                break;
 
39
            }
 
40
        }
 
41
        if (sliceIndex != -1) {
 
42
            setTextTip(MessageFormat.format(Messages.PieChartBuilder_ToolTipCoords,
 
43
                    chart.getAxisSet().getXAxis(0).getTitle().getText(),
 
44
                    allSeries[sliceIndex].getId(), allSeries[sliceIndex].getXSeries()[pieIndex],
 
45
                    Math.round(((PieChart) chart).getSlicePercent(pieIndex, sliceIndex) * 100.0) / 100.0));
 
46
        } else {
 
47
            tipShell.setVisible(false);
 
48
        }
 
49
    }
 
50
}
 
 
b'\\ No newline at end of file'