Package org.loboevolution.pdf
Class PDFViewer
java.lang.Object
java.awt.Component
java.awt.Container
java.awt.Window
java.awt.Frame
javax.swing.JFrame
org.loboevolution.pdf.PDFViewer
- All Implemented Interfaces:
KeyListener
,ImageObserver
,MenuContainer
,Serializable
,EventListener
,Accessible
,TreeSelectionListener
,RootPaneContainer
,WindowConstants
,PageChangeListener
public class PDFViewer
extends JFrame
implements KeyListener, PageChangeListener, TreeSelectionListener
The Class PDFViewer.
- See Also:
-
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
Modifier and TypeFieldDescriptionprotected PDFFile
The current PDFFile.protected int
The current page number (starts at 0), or -1 if no page.protected PagePanel
The full screen page display, or null if not in full screen mode.protected PagePanel
The page display.static final String
The Constant TITLE.Fields inherited from class javax.swing.JFrame
accessibleContext, 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 java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
Fields inherited from interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, EXIT_ON_CLOSE, HIDE_ON_CLOSE
-
Constructor Summary
ConstructorDescriptionPDFViewer
(boolean useThumbs) Create a new PdfDialog based on a user, with or without a thumbnail panel. -
Method Summary
Modifier and TypeMethodDescriptionvoid
doCloseOutline.void
doFirst()
Goes to the first page.void
doFit
(boolean width, boolean height) makes the page fit in the windowvoid
doLast()
Goes to the last page.void
doNext()
Goes to the next page.void
Open a local file, given a string filename.void
doOpen
(String name, URL url, URLConnection httpcon) Open a local file, given a string filename.void
Open outline.void
Posts the Page Setup dialog.void
doPrev()
Goes to the previous page.void
doPrint()
Print the current document.void
doThumbs
(boolean show) Shows or hides the thumbnails by moving the split pane divider.void
doZoom
(float factor) Do zoom.void
forceGotoPage
(int pagenum) Changes the displayed page.void
gotoPage
(int pagenum) Notifies the listener that it should go to a particular page number.protected void
init()
Initialize this PdfDialog by creating the GUI.void
keyPressed
(KeyEvent evt) void
keyReleased
(KeyEvent evt) void
void
Display a dialog indicating an error.void
Open a specific pdf file.void
open a URL to a PDF file.void
openFile
(URL url, URLConnection httpcon) open a URL to a PDF file.void
Enable or disable all of the actions based on the current state.void
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, 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, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, requestFocusInWindow, resize, resize, revalidate, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setMixingCutoutShape, 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 Details
-
TITLE
The Constant TITLE.- See Also:
-
curFile
The current PDFFile. -
page
The page display. -
fspp
The full screen page display, or null if not in full screen mode. -
curpage
protected int curpageThe current page number (starts at 0), or -1 if no page.
-
-
Constructor Details
-
PDFViewer
public PDFViewer(boolean useThumbs) Create a new PdfDialog based on a user, with or without a thumbnail panel.- Parameters:
useThumbs
- true if the thumb panel should exist, false if not.
-
-
Method Details
-
init
protected void init()Initialize this PdfDialog by creating the GUI. -
gotoPage
public void gotoPage(int pagenum) Notifies the listener that it should go to a particular page number.Changes the displayed page, desyncing if we're not on the same page as a presenter.
- Specified by:
gotoPage
in interfacePageChangeListener
- Parameters:
pagenum
- aInteger
object.
-
forceGotoPage
public void forceGotoPage(int pagenum) Changes the displayed page.- Parameters:
pagenum
- the page to display
-
setEnabling
public void setEnabling()Enable or disable all of the actions based on the current state. -
openFile
open a URL to a PDF file. The file is read in and processed with an in-memory buffer.- Parameters:
url
- the url- Throws:
IOException
- if any.
-
openFile
open a URL to a PDF file. The file is read in and processed with an in-memory buffer.- Parameters:
url
- the url- Throws:
IOException
- if any.
-
openFile
Open a specific pdf file. Creates a DocumentInfo from the file, and opens that.
Note: Mapping the file locks the file until the PDFFile is closed.
- Parameters:
file
- the file to open- Throws:
IOException
- if any.
-
openError
Display a dialog indicating an error.- Parameters:
message
- the message
-
doOpen
Open a local file, given a string filename.- Parameters:
name
- the name of the file to open
-
doOpen
Open a local file, given a string filename.- Parameters:
name
- aString
object.url
- aURL
object.httpcon
- aURLConnection
object.
-
doPageSetup
public void doPageSetup()Posts the Page Setup dialog. -
doPrint
public void doPrint()Print the current document. -
doFit
public void doFit(boolean width, boolean height) makes the page fit in the window- Parameters:
width
- a boolean.height
- a boolean.
-
doThumbs
public void doThumbs(boolean show) Shows or hides the thumbnails by moving the split pane divider.- Parameters:
show
- the show
-
doZoom
public void doZoom(float factor) Do zoom.- Parameters:
factor
- the factor
-
doNext
public void doNext()Goes to the next page. -
doPrev
public void doPrev()Goes to the previous page. -
doFirst
public void doFirst()Goes to the first page. -
doLast
public void doLast()Goes to the last page. -
doOutline
public void doOutline()Open outline. the root of the outline, or null if there is no outline./ -
doCloseOutline
public void doCloseOutline()doCloseOutline.
-
keyPressed
Handle a key press for navigation.
- Specified by:
keyPressed
in interfaceKeyListener
-
keyReleased
- Specified by:
keyReleased
in interfaceKeyListener
-
keyTyped
gets key presses and tries to build a page if they're numeric.
- Specified by:
keyTyped
in interfaceKeyListener
-
valueChanged
Someone changed the selection of the outline tree. Go to the new page.
- Specified by:
valueChanged
in interfaceTreeSelectionListener
-