Package org.swtchart
Class Chart
- java.lang.Object
-
- org.eclipse.swt.widgets.Widget
-
- org.eclipse.swt.widgets.Control
-
- org.eclipse.swt.widgets.Scrollable
-
- org.eclipse.swt.widgets.Composite
-
- org.swtchart.Chart
-
- All Implemented Interfaces:
org.eclipse.swt.graphics.Drawable
,org.eclipse.swt.widgets.Listener
public class Chart extends org.eclipse.swt.widgets.Composite implements org.eclipse.swt.widgets.Listener
A chart which are composed of title, legend, axes and plot area.
-
-
Constructor Summary
Constructors Constructor Description Chart(org.eclipse.swt.widgets.Composite parent, int style)
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
dispose()
void
enableCompress(boolean enabled)
Enables compressing series.IAxisSet
getAxisSet()
Gets the set of axes.org.eclipse.swt.graphics.Color
getBackgroundInPlotArea()
Gets the background color in plot area.ILegend
getLegend()
Gets the legend.int
getOrientation()
Gets the state of chart orientation.org.eclipse.swt.widgets.Composite
getPlotArea()
Gets the plot area.ISeriesSet
getSeriesSet()
Gets the set of series.ITitle
getTitle()
Gets the chart title.void
handleEvent(org.eclipse.swt.widgets.Event event)
boolean
isCompressEnabled()
Gets the state indicating if compressing series is enabled.boolean
isUpdateSuspended()
Gets the state indicating if the update of chart appearance is suspended.void
redraw()
void
renderOffscreenImage(org.eclipse.swt.graphics.Image image)
Renders off-screen image.void
save(java.lang.String filename, int format)
Saves to file with given format.void
setBackground(org.eclipse.swt.graphics.Color color)
void
setBackgroundInPlotArea(org.eclipse.swt.graphics.Color color)
Sets the background color in plot area.void
setOrientation(int orientation)
Sets the state of chart orientation.void
suspendUpdate(boolean suspend)
Suspends the update of chart appearance.void
update()
void
updateLayout()
Updates the layout of chart elements.-
Methods inherited from class org.eclipse.swt.widgets.Composite
changed, checkSubclass, drawBackground, getBackgroundMode, getChildren, getLayout, getLayoutDeferred, getTabList, isLayoutDeferred, layout, layout, layout, layout, layout, setBackgroundMode, setFocus, setLayout, setLayoutDeferred, setTabList
-
Methods inherited from class org.eclipse.swt.widgets.Scrollable
computeTrim, getClientArea, getHorizontalBar, getScrollbarsMode, getVerticalBar
-
Methods inherited from class org.eclipse.swt.widgets.Control
addControlListener, addDragDetectListener, addFocusListener, addGestureListener, addHelpListener, addKeyListener, addMenuDetectListener, addMouseListener, addMouseMoveListener, addMouseTrackListener, addMouseWheelListener, addPaintListener, addTouchListener, addTraverseListener, computeSize, computeSize, dragDetect, dragDetect, forceFocus, getAccessible, getBackground, getBackgroundImage, getBorderWidth, getBounds, getCursor, getDragDetect, getEnabled, getFont, getForeground, getLayoutData, getLocation, getMenu, getMonitor, getParent, getRegion, getShell, getSize, getTextDirection, getToolTipText, getTouchEnabled, getVisible, internal_dispose_GC, internal_new_GC, isEnabled, isFocusControl, isReparentable, isVisible, moveAbove, moveBelow, pack, pack, print, redraw, removeControlListener, removeDragDetectListener, removeFocusListener, removeGestureListener, removeHelpListener, removeKeyListener, removeMenuDetectListener, removeMouseListener, removeMouseMoveListener, removeMouseTrackListener, removeMouseWheelListener, removePaintListener, removeTouchListener, removeTraverseListener, requestLayout, setBackgroundImage, setBounds, setBounds, setCapture, setCursor, setDragDetect, setEnabled, setFont, setForeground, setLayoutData, setLocation, setLocation, setMenu, setParent, setRedraw, setRegion, setSize, setSize, setTextDirection, setToolTipText, setTouchEnabled, setVisible, toControl, toControl, toDisplay, toDisplay, traverse, traverse, traverse
-
Methods inherited from class org.eclipse.swt.widgets.Widget
addDisposeListener, addListener, checkWidget, getData, getData, getDisplay, getListeners, getStyle, isAutoDirection, isDisposed, isListening, notifyListeners, removeDisposeListener, removeListener, removeListener, reskin, setData, setData, toString
-
-
-
-
Method Detail
-
getTitle
public ITitle getTitle()
Gets the chart title.- Returns:
- the chart title
-
getLegend
public ILegend getLegend()
Gets the legend.- Returns:
- the legend
-
getAxisSet
public IAxisSet getAxisSet()
Gets the set of axes.- Returns:
- the set of axes
-
getPlotArea
public org.eclipse.swt.widgets.Composite getPlotArea()
Gets the plot area.- Returns:
- the plot area
-
getSeriesSet
public ISeriesSet getSeriesSet()
Gets the set of series.- Returns:
- the set of series
-
setBackground
public void setBackground(org.eclipse.swt.graphics.Color color)
- Overrides:
setBackground
in classorg.eclipse.swt.widgets.Control
-
getBackgroundInPlotArea
public org.eclipse.swt.graphics.Color getBackgroundInPlotArea()
Gets the background color in plot area. This method is identical with getPlotArea().getBackground().- Returns:
- the background color in plot area
-
setBackgroundInPlotArea
public void setBackgroundInPlotArea(org.eclipse.swt.graphics.Color color)
Sets the background color in plot area.- Parameters:
color
- the background color in plot area. If null is given, default background color will be set.- Throws:
java.lang.IllegalArgumentException
- if given color is disposed
-
setOrientation
public void setOrientation(int orientation)
Sets the state of chart orientation. The horizontal orientation means that X axis is horizontal as usual, while the vertical orientation means that Y axis is horizontal.- Overrides:
setOrientation
in classorg.eclipse.swt.widgets.Control
- Parameters:
orientation
- the orientation which can be SWT.HORIZONTAL or SWT.VERTICAL
-
getOrientation
public int getOrientation()
Gets the state of chart orientation. The horizontal orientation means that X axis is horizontal as usual, while the vertical orientation means that Y axis is horizontal.- Overrides:
getOrientation
in classorg.eclipse.swt.widgets.Control
- Returns:
- the orientation which can be SWT.HORIZONTAL or SWT.VERTICAL
-
enableCompress
public void enableCompress(boolean enabled)
Enables compressing series. By default, compressing series is enabled, and normally there should be no usecase to disable it. However, if you suspect that something is wrong in compressing series, you can disable it to isolate the issue.- Parameters:
enabled
- true if enabling compressing series
-
isCompressEnabled
public boolean isCompressEnabled()
Gets the state indicating if compressing series is enabled.- Returns:
- true if compressing series is enabled
-
suspendUpdate
public void suspendUpdate(boolean suspend)
Suspends the update of chart appearance.By default, when the chart model is changed (e.g. adding new series or changing chart properties), the chart appearance is updated accordingly.
However, when doing a lot of changes in the chart model at once, it is inefficient that the update happens many times unnecessarily. In this case, you may want to defer the update until completing whole model changes in order to have better performance.
For example, suppose there is a chart having a large number of series, the following example code disables the update during changing the model.
try { // suspend update chart.suspendUpdate(true); // do some changes for a large number of series for (ISeries series : chart.getSeriesSet().getSeries()) { series.enableStack(true); } } finally { // resume update chart.suspendUpdate(false); }
Note that the update has to be resumed right after completing the model changes in order to avoid showing an incompletely updated chart.- Parameters:
suspend
- true to suspend the update of chart appearance
-
isUpdateSuspended
public boolean isUpdateSuspended()
Gets the state indicating if the update of chart appearance is suspended.- Returns:
- true if the update of chart appearance is suspended
-
handleEvent
public void handleEvent(org.eclipse.swt.widgets.Event event)
- Specified by:
handleEvent
in interfaceorg.eclipse.swt.widgets.Listener
-
updateLayout
public void updateLayout()
Updates the layout of chart elements.
-
update
public void update()
- Overrides:
update
in classorg.eclipse.swt.widgets.Control
-
dispose
public void dispose()
- Overrides:
dispose
in classorg.eclipse.swt.widgets.Widget
-
redraw
public void redraw()
- Overrides:
redraw
in classorg.eclipse.swt.widgets.Control
-
save
public void save(java.lang.String filename, int format)
Saves to file with given format.- Parameters:
filename
- the file nameformat
- the format (SWT.IMAGE_*). The supported formats depend on OS.
-
renderOffscreenImage
public void renderOffscreenImage(org.eclipse.swt.graphics.Image image)
Renders off-screen image.- Parameters:
image
- The image to render off-screen
-
-