org.icepdf.ri.common.views.annotations
Class FreeTextAnnotationComponent

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by org.icepdf.ri.common.views.annotations.AbstractAnnotationComponent
                  extended by org.icepdf.ri.common.views.annotations.MarkupAnnotationComponent
                      extended by org.icepdf.ri.common.views.annotations.FreeTextAnnotationComponent
All Implemented Interfaces:
java.awt.event.FocusListener, java.awt.event.MouseListener, java.awt.event.MouseMotionListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.beans.PropertyChangeListener, java.io.Serializable, java.util.EventListener, javax.swing.event.MouseInputListener, AnnotationComponent

public class FreeTextAnnotationComponent
extends MarkupAnnotationComponent
implements java.beans.PropertyChangeListener

The FreeTextAnnotationComponent encapsulates a FreeTextAnnotation objects. It also provides basic editing functionality such as resizing, moving and change the border color and style as well as the fill color.

The Viewer RI implementation contains a FreeTextAnnotationPanel class which can edit the various properties of this component.

The FreeTextAnnotationComponent is slightly more complex then the other annotations components. Most annotations let the page pain the annotation but in this cse FreeTextAnnotationComponent paints itself by creating a JTextArea component that is made to look like the respective annotations appearance stream.

Since:
5.0
See Also:
FreeTextAnnotationPanel, Serialized Form

Nested Class Summary
 class FreeTextAnnotationComponent.MyHtml2Text
           
 
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
protected  java.awt.Font fontFile
           
 
Fields inherited from class org.icepdf.ri.common.views.annotations.MarkupAnnotationComponent
markupAnnotation
 
Fields inherited from class org.icepdf.ri.common.views.annotations.AbstractAnnotationComponent
annotation, annotationHighlightAlpha, annotationHighlightColor, currentRotation, currentZoom, cursor, documentViewController, documentViewModel, endOfMousePress, isEditable, isInteractiveAnnotationsEnabled, isMousePressed, isMovable, isResizable, isRollover, isSelected, isShowInvisibleBorder, messageBundle, pageViewComponent, previousAnnotationState, resizableBorder, resizeBoxSize, resized, startOfMousePress, startPos, wasResized
 
Fields inherited from class javax.swing.JComponent
accessibleContext, 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
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
FreeTextAnnotationComponent(org.icepdf.core.pobjects.annotations.Annotation annotation, DocumentViewController documentViewController, AbstractPageViewComponent pageViewComponent, DocumentViewModel documentViewModel)
           
 
Method Summary
 java.lang.String clearXMLHeader(java.lang.String strXML)
           
 void dispose()
           
 boolean isActive()
           
 void mouseDragged(java.awt.event.MouseEvent me)
           
 void mouseMoved(java.awt.event.MouseEvent me)
           
 void paintComponent(java.awt.Graphics g)
           
 void propertyChange(java.beans.PropertyChangeEvent evt)
           
 void resetAppearanceShapes()
           
 void setAppearanceStream()
           
 
Methods inherited from class org.icepdf.ri.common.views.annotations.MarkupAnnotationComponent
convertToPageSpace, mouseClicked
 
Methods inherited from class org.icepdf.ri.common.views.annotations.AbstractAnnotationComponent
additionalActionsHandler, commonBoundsNormalization, convertToPageSpace, focusGained, focusLost, getAnnotation, getDocument, getPageIndex, getPageTransform, getPageViewComponent, getParentPageView, initiateMouseMoved, isBorderStyle, isEditable, isMovable, isResizable, isRollover, isSelected, isShowInvisibleBorder, mouseEntered, mouseExited, mousePressed, mouseReleased, refreshAnnotationRect, refreshDirtyBounds, removeMouseListeners, resize, setSelected, validate
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getAccessibleContext, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, 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, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintImmediately, paintImmediately, paramString, 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, updateUI
 
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, transferFocusBackward, transferFocusDownCycle, 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, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, 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, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.icepdf.ri.common.views.AnnotationComponent
hasFocus, repaint
 

Field Detail

fontFile

protected java.awt.Font fontFile
Constructor Detail

FreeTextAnnotationComponent

public FreeTextAnnotationComponent(org.icepdf.core.pobjects.annotations.Annotation annotation,
                                   DocumentViewController documentViewController,
                                   AbstractPageViewComponent pageViewComponent,
                                   DocumentViewModel documentViewModel)
Method Detail

setAppearanceStream

public void setAppearanceStream()

mouseDragged

public void mouseDragged(java.awt.event.MouseEvent me)
Specified by:
mouseDragged in interface java.awt.event.MouseMotionListener
Overrides:
mouseDragged in class AbstractAnnotationComponent

propertyChange

public void propertyChange(java.beans.PropertyChangeEvent evt)
Specified by:
propertyChange in interface java.beans.PropertyChangeListener

mouseMoved

public void mouseMoved(java.awt.event.MouseEvent me)
Specified by:
mouseMoved in interface java.awt.event.MouseMotionListener
Overrides:
mouseMoved in class AbstractAnnotationComponent

paintComponent

public void paintComponent(java.awt.Graphics g)
Specified by:
paintComponent in class AbstractAnnotationComponent

dispose

public void dispose()
Specified by:
dispose in interface AnnotationComponent
Overrides:
dispose in class AbstractAnnotationComponent

resetAppearanceShapes

public void resetAppearanceShapes()
Specified by:
resetAppearanceShapes in interface AnnotationComponent
Specified by:
resetAppearanceShapes in class AbstractAnnotationComponent

isActive

public boolean isActive()
Overrides:
isActive in class MarkupAnnotationComponent

clearXMLHeader

public java.lang.String clearXMLHeader(java.lang.String strXML)