Class TextSelection
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- org.faceless.pdf2.viewer2.feature.TextSelection
-
- All Implemented Interfaces:
ImageObserver
,MenuContainer
,Serializable
,Accessible
public abstract class TextSelection extends JPanel
This class is a transparent panel which is laid overtop of the PagePanel. It will highlight any text in theTextSelection.RangeList
returned bygetRangeList()
. This class is used by theTextTool
andTextHighlighter
classes to manage text markup, and it's unlikely that customers would need to access this class directly.- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
TextSelection.Range
A Range represents a selected range ofPageExtractor.Text
items.static class
TextSelection.RangeList
ARangeList
is a read-only list ofRange
objects.-
Nested classes/interfaces inherited from class javax.swing.JPanel
JPanel.AccessibleJPanel
-
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
-
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 Description protected PagePanel
pagepanel
static int
TYPE_BLOCK
A type of highlight which will highlight the selected text using a solid block of (usually translucent) colorstatic int
TYPE_DOUBLESTRIKEOUT
A type of highlight which will strike-out the selected text with a double linestatic int
TYPE_DOUBLEUNDERLINE
A type of highlight which will highlight the selected text using a double underline.static int
TYPE_OUTLINE
A type of highlight which will outline the selected text.static int
TYPE_STRIKEOUT
A type of highlight which will strike-out the selected text.static int
TYPE_UNDERLINE
A type of highlight which will highlight the selected text using a single underline.-
Fields inherited from class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
-
Fields inherited from class java.awt.Component
accessibleContext, 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
-
-
Constructor Summary
Constructors Constructor Description TextSelection(PagePanel panel, int type, Paint color, Stroke stroke, float margin)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description boolean
contains(int x, int y)
void
drawHighlight(int type, Paint color, Stroke stroke, Graphics2D g, Shape shape)
Draw a highlight of a certain type onto the specified graphics.protected abstract TextSelection.RangeList
getRangeList()
Return the RangeList that will be highlighted by this TextToolboolean
isGlassPane()
Return true if this panel should be treated as a GlassPane.void
paintComponent(Graphics gg)
-
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
-
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
-
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, 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, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
-
-
-
Field Detail
-
pagepanel
protected final PagePanel pagepanel
-
TYPE_BLOCK
public static final int TYPE_BLOCK
A type of highlight which will highlight the selected text using a solid block of (usually translucent) color- See Also:
- Constant Field Values
-
TYPE_UNDERLINE
public static final int TYPE_UNDERLINE
A type of highlight which will highlight the selected text using a single underline.- Since:
- 2.11.4
- See Also:
- Constant Field Values
-
TYPE_DOUBLEUNDERLINE
public static final int TYPE_DOUBLEUNDERLINE
A type of highlight which will highlight the selected text using a double underline.- Since:
- 2.11.4
- See Also:
- Constant Field Values
-
TYPE_OUTLINE
public static final int TYPE_OUTLINE
A type of highlight which will outline the selected text.- Since:
- 2.11.4
- See Also:
- Constant Field Values
-
TYPE_STRIKEOUT
public static final int TYPE_STRIKEOUT
A type of highlight which will strike-out the selected text.- Since:
- 2.11.4
- See Also:
- Constant Field Values
-
TYPE_DOUBLESTRIKEOUT
public static final int TYPE_DOUBLESTRIKEOUT
A type of highlight which will strike-out the selected text with a double line- Since:
- 2.11.4
- See Also:
- Constant Field Values
-
-
Method Detail
-
isGlassPane
public boolean isGlassPane()
Return true if this panel should be treated as a GlassPane. By default this is the case, in which case the cursor will not be modified just because this panel is visible.- Since:
- 2.11.25
-
contains
public boolean contains(int x, int y)
- Overrides:
contains
in classJComponent
-
getRangeList
protected abstract TextSelection.RangeList getRangeList()
Return the RangeList that will be highlighted by this TextTool
-
paintComponent
public void paintComponent(Graphics gg)
- Overrides:
paintComponent
in classJComponent
-
drawHighlight
public void drawHighlight(int type, Paint color, Stroke stroke, Graphics2D g, Shape shape)
Draw a highlight of a certain type onto the specified graphics.- Parameters:
type
- the shape typecolor
- the Colorg
- the Graphics Objectshape
- for Outline or Block, any shape. For underline types, a GeneralPath of the form (x1,y1, x1,y2, x2,y2, x2,y1)
-
-