PreviewDialog (Apache FOP Core 2.11 API)
Date: 2025-04-24

org.apache.fop.render.awt.viewer

## Class PreviewDialog

- java.lang.Object
- - java.awt.Component
  - - java.awt.Container
    - - java.awt.Window
      - - java.awt.Frame
        - - javax.swing.JFrame
          - - org.apache.fop.render.awt.viewer.PreviewDialog

- All Implemented Interfaces:
    ImageObserver, MenuContainer, Serializable, Accessible, RootPaneContainer, WindowConstants, StatusListener

      public class PreviewDialog
      extends JFrame
      implements StatusListener

  AWT Viewer main window. Surrounds a PreviewPanel with a bunch of pretty buttons and controls.
  See Also:
    Serialized Form

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class javax.swing.JFrame

      `JFrame.AccessibleJFrame`

    - ### Nested classes/interfaces inherited from class java.awt.Frame

      `Frame.AccessibleAWTFrame`

    - ### Nested classes/interfaces inherited from class java.awt.Window

      `Window.AccessibleAWTWindow, Window.Type`

    - ### Nested classes/interfaces inherited from class java.awt.Container

      `Container.AccessibleAWTContainer`

    - ### Nested classes/interfaces inherited from class java.awt.Component

      `Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected float` | `configuredTargetResolution` The originally configured target resolution
    `protected FOUserAgent` | `foUserAgent` The FOUserAgent associated with this window
    `protected Renderable` | `renderable` Renderable instance that can be used to reload and re-render a document after modifications.
    `protected AWTRenderer` | `renderer` The AWT renderer
    `protected Translator` | `translator` The Translator for localization

    - ### Fields inherited from class javax.swing.JFrame

      `accessibleContext, EXIT_ON_CLOSE, rootPane, rootPaneCheckingEnabled`

    - ### Fields inherited from class java.awt.Frame

      `CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR`

    - ### Fields inherited from class java.awt.Component

      `BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT`

    - ### Fields inherited from interface javax.swing.WindowConstants

      `DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, HIDE_ON_CLOSE`

    - ### Fields inherited from interface java.awt.image.ImageObserver

      `ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `PreviewDialog(FOUserAgent foUserAgent)` Creates a new PreviewDialog that uses the given renderer.
    `PreviewDialog(FOUserAgent foUserAgent, Renderable renderable)` Creates a new PreviewDialog that uses the given renderer.

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `static PreviewDialog` | `createPreviewDialog(FOUserAgent foUserAgent, Renderable renderable, boolean asMainWindow)` Creates and initialize the AWT Viewer main window.
    `void` | `goToFirstPage()` Shows the first page.
    `void` | `goToLastPage()` Shows the last page.
    `void` | `goToNextPage()` Shows the next page.
    `void` | `goToPage(int number)` Changes the current visible page
    `void` | `goToPreviousPage()` Shows the previous page.
    `void` | `notifyPageRendered()` Updates the message to be shown in the info bar in a thread safe way.
    `void` | `notifyRendererStopped()` Called when the renderer has stopped.
    `void` | `reportException(Exception e)` Opens standard Swing error dialog box and reports given exception details.
    `void` | `setScale(double scaleFactor)` Scales page image.
    `void` | `setScaleToFitWidth()` Sets the scaling so the contents are spread over the whole width available.
    `void` | `setScaleToFitWindow()` Sets the scaling so the contents fit into the window.
    `void` | `setStatus(String message)` Sets message to be shown in the status bar in a thread safe way.
    `void` | `startPrinterJob(boolean showDialog)` Prints the document.

    - ### Methods inherited from class javax.swing.JFrame

      `addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update`

    - ### Methods inherited from class java.awt.Frame

      `addNotify, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setBackground, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setOpacity, setResizable, setShape, setState, setTitle, setUndecorated`

    - ### Methods inherited from class java.awt.Window

      `addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBackground, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOpacity, getOwnedWindows, getOwner, getOwnerlessWindows, getShape, getToolkit, getType, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isAutoRequestFocus, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isOpaque, isShowing, isValidateRoot, pack, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setAutoRequestFocus, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocation, setLocation, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setType, setVisible, show, toBack, toFront`

    - ### Methods inherited from class java.awt.Container

      `add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, transferFocusDownCycle, validate, validateTree`

    - ### Methods inherited from class java.awt.Component

      `action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resize, resize, revalidate, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

    - ### Methods inherited from interface java.awt.MenuContainer

      `getFont, postEvent`

- - ### Field Detail

    - #### translator

          protected Translator translator

      The Translator for localization

    - #### renderer

          protected AWTRenderer renderer

      The AWT renderer

    - #### foUserAgent

          protected FOUserAgent foUserAgent

      The FOUserAgent associated with this window

    - #### configuredTargetResolution

          protected float configuredTargetResolution

      The originally configured target resolution

    - #### renderable

          protected Renderable renderable

      Renderable instance that can be used to reload and re-render a document after modifications.

  - ### Constructor Detail

    - #### PreviewDialog

          public PreviewDialog(FOUserAgent foUserAgent,
                               Renderable renderable)

      Creates a new PreviewDialog that uses the given renderer.
      Parameters:
        `foUserAgent` - the user agent
        `renderable` - the Renderable instance that is used to reload/re-render a document after modifications.

    - #### PreviewDialog

          public PreviewDialog(FOUserAgent foUserAgent)

      Creates a new PreviewDialog that uses the given renderer.
      Parameters:
        `foUserAgent` - the user agent

  - ### Method Detail

    - #### createPreviewDialog

          public static PreviewDialog createPreviewDialog(FOUserAgent foUserAgent,
                                                          Renderable renderable,
                                                          boolean asMainWindow)

      Creates and initialize the AWT Viewer main window.
      Parameters:
        `foUserAgent` - the FO user agent
        `renderable` - the target for the rendering
        `asMainWindow` - true if the window shall act as the main application window.
      Returns:
        the newly initialized preview dialog

    - #### notifyRendererStopped

          public void notifyRendererStopped()

      Called when the renderer has stopped.
      Specified by:
        `notifyRendererStopped` in interface `StatusListener`

    - #### goToPage

          public void goToPage(int number)

      Changes the current visible page
      Parameters:
        `number` - the page number to go to

    - #### goToPreviousPage

          public void goToPreviousPage()

      Shows the previous page.

    - #### goToNextPage

          public void goToNextPage()

      Shows the next page.

    - #### goToFirstPage

          public void goToFirstPage()

      Shows the first page.

    - #### goToLastPage

          public void goToLastPage()

      Shows the last page.

    - #### setScale

          public void setScale(double scaleFactor)

      Scales page image.
      Parameters:
        `scaleFactor` - the scale factor

    - #### setScaleToFitWindow

          public void setScaleToFitWindow()

      Sets the scaling so the contents fit into the window.

    - #### setScaleToFitWidth

          public void setScaleToFitWidth()

      Sets the scaling so the contents are spread over the whole width available.

    - #### startPrinterJob

          public void startPrinterJob(boolean showDialog)

      Prints the document.
      Parameters:
        `showDialog` - true if show dialog

    - #### setStatus

          public void setStatus(String message)

      Sets message to be shown in the status bar in a thread safe way.
      Parameters:
        `message` - the message

    - #### notifyPageRendered

          public void notifyPageRendered()

      Updates the message to be shown in the info bar in a thread safe way.
      Specified by:
        `notifyPageRendered` in interface `StatusListener`

    - #### reportException

          public void reportException(Exception e)

      Opens standard Swing error dialog box and reports given exception details.
      Parameters:
        `e` - the Exception

Copyright © 2025 Apache Software Foundation. All rights reserved.