Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
BPS39
Contents
Chart Engine API
This project aims to provide API and Extensibility support for the Charting Engine.
Status
Released
Specification Leads
David Michonneau
Description
Capability List
- API
- Creating a chart
- Saving a chart
- Loading a chart
- Generating a chart
- Extensions
- Custom charts
- Custom series
- Custom device renderers
- Custom model renderers
New in 2.0
- Generator API
- An external application context can be passed to the engine for scripting (IExternalContext)
- New prepare method that automatically creates a RuntimeContext
- External style processor can be fed to engine to control how the chart renders with external styles (IStyleProcessor, IStyle)
- New interface IActionRenderer allows the user to customize actions at rendering time. For instance Trigger URLs can be adjusted based on the based URL of the rendering environment.
- Multiple Dataset capability per Series to enable expressions in Triggers
- External expression evaluator can be plugged in the chart engine
- Automatic databinding, either through a sql.ResultSet or through a custom row expression evaluator (IDataRowExpressionEvaluator)
- New classloader interface (IScriptClassLoader) to load Java event handlers
- Device renderer API
- New support for dynamic DPI (Dots per inch) resolution
- JPEG renderer supports new compression quality setting
- New IImageMapEmitter interface to allow any renderer to get access to an ImageMap. Useful for interactive charts.
- New ICallBackNotifier interface to support interactive java callback mechanism for charts in SWT/Swing
- Improved rendering quality in HTML and PDF BIRT reports.
- SWT renderer can use SWT 3.1 enhancements to render the chart
New in 2.1
- Device renderer API
- new PDF renderer
Planned for 2.2
- New Simple Model API accessible from scripting
- Set of clear interfaces that only expose what can be changed at scripting time
- Integration with Report’s Simple Model API
- Centralized and clearer Engine API
- One single entry point class (gathering Generator, SerializerImpl, PluginSettings)
- Change Engine API classes to interfaces (RuntimeContext,…) in one api package
- Save runtime data in Model’s xml
Specification Document(s)