Search in sources :

Example 1 with PrintPreview

use of com.servoy.j2db.printing.PrintPreview in project servoy-client by Servoy.

the class SwingFormManager method showPreview.

@Override
public void showPreview(final FormController afp, final IFoundSetInternal foundset, int zoomFactor, final PrinterJob printJob) {
    removePreview();
    final FormController fc = currentContainer.getController();
    if (fc != null) {
        List invokeLaterRunnables = new ArrayList();
        boolean ok = fc.notifyVisible(false, invokeLaterRunnables);
        Utils.invokeLater(getApplication(), invokeLaterRunnables);
        if (!ok) {
            // cannot hide...so skip preview
            return;
        }
    }
    showFormInMainPanel(afp.getName(), currentContainer, null, true, null);
    getApplication().getModeManager().setMode(IModeManager.PREVIEW_MODE);
    boolean isNewUser = checkAndUpdateFormUser(afp, currentContainer);
    if (isNewUser) {
        IFormUIInternal ui = afp.getFormUI();
        currentContainer.add(ui, afp.getName());
    }
    try {
        final PrintPreview printPreview = new PrintPreview((ISmartClientApplication) getApplication(), afp, foundset, zoomFactor, printJob);
        Runnable r = new Runnable() {

            public void run() {
                printPreviews.put(currentContainer, new PrintPreviewHolder(printPreview, fc));
                // $NON-NLS-1$
                currentContainer.add(printPreview, "@preview");
                // $NON-NLS-1$
                currentContainer.show("@preview");
                // handle navigator propertly
                List invokeLaterRunnables = new ArrayList();
                afp.showNavigator(invokeLaterRunnables);
                Utils.invokeLater(getApplication(), invokeLaterRunnables);
                printPreview.showPages();
            }
        };
        getApplication().invokeLater(r);
    } catch (Exception ex) {
        // $NON-NLS-1$
        getApplication().reportError(Messages.getString("servoy.formManager.error.PrintPreview"), ex);
    }
}
Also used : FormController(com.servoy.j2db.FormController) BasicFormController(com.servoy.j2db.BasicFormController) PrintPreview(com.servoy.j2db.printing.PrintPreview) ArrayList(java.util.ArrayList) ArrayList(java.util.ArrayList) List(java.util.List) IFormUIInternal(com.servoy.j2db.IFormUIInternal)

Aggregations

BasicFormController (com.servoy.j2db.BasicFormController)1 FormController (com.servoy.j2db.FormController)1 IFormUIInternal (com.servoy.j2db.IFormUIInternal)1 PrintPreview (com.servoy.j2db.printing.PrintPreview)1 ArrayList (java.util.ArrayList)1 List (java.util.List)1