The main frame in the report demonstration application. This demo has huge reports
added, so calling report 5 and 6 can require some patience.
If the system property "org.jfree.report.demo.DEBUG" is set to "true", debugging
messages to System.out stream are enabled.
| Methods from java.awt.Component: |
|---|
|
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, bounds, checkImage, checkImage, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, deliverEvent, disable, dispatchEvent, doLayout, enable, enable, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getAccessibleContext, getAlignmentX, getAlignmentY, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentAt, getComponentAt, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeys, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getListeners, getLocale, getLocation, getLocation, getLocationOnScreen, getMaximumSize, getMinimumSize, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPreferredSize, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getToolkit, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, invalidate, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusCycleRoot, isFocusOwner, isFocusTraversable, isFocusable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, layout, list, list, list, list, list, locate, location, lostFocus, minimumSize, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paint, paintAll, postEvent, preferredSize, prepareImage, prepareImage, print, printAll, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocusInWindow, reshape, resize, resize, setBackground, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setFocusTraversalKeys, setFocusTraversalKeysEnabled, setFocusable, setFont, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setName, setPreferredSize, setSize, setSize, setVisible, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle, update, validate |
| Method from org.jfree.report.demo.JFreeReportDemo Detail: |
protected void attemptPreview() {
final int index = tabbedPane.getSelectedIndex();
final DemoDefinition dd = (DemoDefinition) getAvailableDemos().get(index);
dd.getHandler().performPreview(dd);
}
Handles a request to preview a report. First determines which data set is visible, then
calls the appropriate preview method. |
protected List createAvailableDemos() {
// create a couple of sample data sets
final TableModel data1 = new SampleData1();
final TableModel data2 = new SampleData2();
final TableModel data3 = new SampleData3();
final TableModel data4 = new SampleData4();
final ArrayList list = new ArrayList();
list.add(new DemoDefinition(createExampleName(1), data1,
new URLDemoHandler("/org/jfree/report/demo/report1.xml")));
list.add(new DemoDefinition(createExampleName(2), data2,
new URLDemoHandler("/org/jfree/report/demo/report2.xml")));
list.add(new DemoDefinition(createExampleName(3), data3,
new URLDemoHandler("/org/jfree/report/demo/report3.xml")));
list.add(new DemoDefinition(createExampleName(4), data4,
new URLDemoHandler("/org/jfree/report/demo/report4.xml")));
list.add(new DemoDefinition("Report created by API", data1, new DemoHandler()
{
public void performPreview(final DemoDefinition def)
{
previewAPIReport(def.getData());
}
}));
list.add(new DemoDefinition("Example 1 - using Extended Report Definition format", data1,
new URLDemoHandler("/org/jfree/report/demo/report1a.xml")));
list.add(new DemoDefinition("Example 2 - with Image-Function", data2,
new URLDemoHandler("/org/jfree/report/demo/report2a.xml")));
list.add(new DemoDefinition("ItemHideFunction-Demo", data2,
new URLDemoHandler("/org/jfree/report/demo/report2b.xml")));
list.add(new DemoDefinition("Dynamic-Demo", data2,
new URLDemoHandler("/org/jfree/report/demo/report2c.xml")));
list.add(new DemoDefinition("Band in Band Stacking", new DefaultTableModel(), new DemoHandler()
{
public void performPreview(final DemoDefinition def)
{
previewBandInBandStacking();
}
}));
list.add(new DemoDefinition("Shape and Drawable", new DefaultTableModel(),
new URLDemoHandler("/org/jfree/report/demo/shape-and-drawable.xml")));
list.add(new DemoDefinition("Example 2 - table with cell borders", data2,
new URLDemoHandler("/org/jfree/report/demo/report2d.xml")));
return list;
}
Creates a list of the available demos. |
protected JButton createButton(Action action) {
final ActionButton button = new ActionButton(action);
button.setMargin(new Insets(0, 0, 0, 0));
button.setText(null);
FloatingButtonEnabler.getInstance().addButton(button);
return button;
}
Creates a new button based on the action. The button will be floating enabled,
so that the buttons borders are only visible when the mouse has entered the button area. |
protected String createExampleName(int ex) {
return MessageFormat.format(getResources().getString("example"),
new Object[]{new Integer(ex)});
}
Forms the localized example string. |
public void displayAbout() {
if (aboutFrame == null)
{
aboutFrame = new AboutFrame(getResources().getString("action.about.name"),
JFreeReport.getInfo());
aboutFrame.pack();
RefineryUtilities.centerFrameOnScreen(aboutFrame);
}
aboutFrame.setVisible(true);
aboutFrame.requestFocus();
}
Displays information about the application. |
public List getAvailableDemos() {
return availableDemos;
}
Returns a list of the available demos. |
public Dimension getPreferredSize() {
return new Dimension(440, 300);
}
Returns the preferred size of the frame. |
public static void main(String[] args) {
// initialize JFreeReport
Boot.start();
try
{
try
{
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
}
catch (Exception e)
{
Log.info("Look and feel problem.");
}
final JFreeReportDemo frame = new JFreeReportDemo();
frame.pack();
frame.setBounds(100, 100, 700, 400);
RefineryUtilities.centerFrameOnScreen(frame);
frame.setVisible(true);
}
catch (Throwable th)
{
th.printStackTrace();
}
}
The starting point for the demonstration application. |
public void preview(String urlname,
TableModel data) {
final URL in = getClass().getResource(urlname);
if (in == null)
{
JOptionPane.showMessageDialog(this,
MessageFormat.format(getResources().getString("report.definitionnotfound"),
new Object[]{urlname}),
getResources().getString("error"), JOptionPane.ERROR_MESSAGE);
return;
}
Log.debug("Processing Report: " + in);
final ReportGenerator gen = ReportGenerator.getInstance();
try
{
final JFreeReport report1 = gen.parseReport(in, in);
if (report1 == null)
{
JOptionPane.showMessageDialog(this,
MessageFormat.format(getResources().getString("report.definitionnull"),
new Object[]{urlname}),
getResources().getString("error"), JOptionPane.ERROR_MESSAGE);
return;
}
report1.setData(data);
//report1.getReportConfiguration().setStrictErrorHandling(false); // DG
final PreviewFrame frame1 = new PreviewFrame(report1);
frame1.setDefaultCloseOperation(DISPOSE_ON_CLOSE);
frame1.pack();
RefineryUtilities.positionFrameRandomly(frame1);
frame1.setVisible(true);
frame1.requestFocus();
}
catch (Exception e)
{
showExceptionDialog("report.definitionfailure", e);
}
}
Displays a preview frame for report defined in the file specified by urlname.
The contents of the url are parsed and the report is fed into a new PreviewPane.
The given TableModel is assigned to the report as report data source.
If the report contains external references in specified in relative urls, the urls
are loaded using the reports parent directory as content base. |
protected void previewAPIReport(TableModel data) {
try
{
final JFreeReport report1 = new SampleReport1().createReport();
report1.setData(data);
final PreviewFrame frame1 = new PreviewFrame(report1);
frame1.pack();
RefineryUtilities.positionFrameRandomly(frame1);
frame1.setVisible(true);
frame1.requestFocus();
}
catch (Exception e)
{
showExceptionDialog("report.definitionfailure", e);
}
}
Preview a report created by using the API. |
protected void previewBandInBandStacking() {
try
{
final JFreeReport report1 = new SampleReport2().createReport();
report1.setData(new DefaultTableModel());
final PreviewFrame frame1 = new PreviewFrame(report1);
frame1.pack();
RefineryUtilities.positionFrameRandomly(frame1);
frame1.setVisible(true);
frame1.requestFocus();
}
catch (Exception e)
{
showExceptionDialog("report.definitionfailure", e);
}
}
|