public class Graph2DPrintPreviewPanel {
private Graph2DPrintPreviewPanel() {
}
public static PrintPreviewPanel createPanel(PrinterJob printJob, final Graph2DPrinter gp, PageFormat pf) {
final PrintPreviewPanel panel = GraphManager.getGraphManager()
.createPrintPreviewPanel(printJob, gp, gp.getPosterColumns(), gp.getPosterColumns() * gp.getPosterRows(), pf);
final OptionHandler options = PrintUtil.createPrintOptions();
//show custom print dialog and adopt values
Action optionAction = new AbstractAction(PrintUtil.OPTIONS_BUTTON) {
public void actionPerformed(ActionEvent ev) {
if (!options.showEditor()) return;
PrintUtil.initGraph2DPrinter(gp, options);
panel.setPages(0, gp.getPosterColumns(), gp.getPosterColumns() * gp.getPosterRows());
}
};
panel.addControlComponent(new JButton(optionAction));
return panel;
}