org.faceless.pdf2.viewer2.feature
Class AbstractRegionSelector

java.lang.Object
  extended by org.faceless.pdf2.viewer2.ViewerFeature
      extended by org.faceless.pdf2.viewer2.ViewerWidget
          extended by org.faceless.pdf2.viewer2.ToggleViewerWidget
              extended by org.faceless.pdf2.viewer2.feature.AbstractRegionSelector
All Implemented Interfaces:
DocumentPanelListener, PagePanelInteractionListener
Direct Known Subclasses:
AnnotationAdd, AnnotationAddLine, SelectArea, ZoomSelection

public abstract class AbstractRegionSelector
extends ToggleViewerWidget
implements DocumentPanelListener, PagePanelInteractionListener

An abstract superclass for any widgets that require a region to be selected. Subclasses should override the action(PagePanel, Point2D, Point2D) method.

This code is copyright the Big Faceless Organization. You're welcome to use, modify and distribute it in any form in your own projects, provided those projects continue to make use of the Big Faceless PDF library.

Since:
2.8.5

Constructor Summary
protected AbstractRegionSelector(String name)
           
 
Method Summary
 void action(PagePanel panel, Point2D start, Point2D end)
          Called when an area of the PDF has been selected.
protected  JComponent createRubberBoxComponent()
          Create the JComponent that it used to display the "rubber box".
 void documentUpdated(DocumentPanelEvent event)
          Called when an DocumentPanelEvent is raised
 void initialize(PDFViewer viewer)
          Called when the feature is first added to a viewer
protected  boolean isSelectedAfterAction()
          Called after action(org.faceless.pdf2.viewer2.PagePanel, java.awt.geom.Point2D, java.awt.geom.Point2D), this method should return true if the tool should stay selected after use, false otherwise (the default)
 void pageAction(PagePanelInteractionEvent event)
          Called when a PagePanelInteractionEvent is raised
 void paintRubberBandComponent(JComponent component, Graphics2D g)
          Paint the component while the "rubber band" box is being stretched.
 void setSelected(boolean selected)
          Set whether this Widget is selected.
protected  void updateViewport(DocumentViewport vp, boolean selected)
          Called from ToggleViewerWidget.setSelected(boolean), this method is called in each viewport in use by the PDFViewer or DocumentPanel so it can update its status.
 
Methods inherited from class org.faceless.pdf2.viewer2.ToggleViewerWidget
action, getGroupName, getGroupOwner, getGroupSelection, getWidgets, isSelected, setGroupOwner
 
Methods inherited from class org.faceless.pdf2.viewer2.ViewerWidget
createActionListener, getComponent, getViewer, isButtonEnabledByDefault, isDocumentRequired, isMenuEnabledByDefault, setButton, setComponent, setDocumentRequired, setMenu, setMenu, setToolBarEnabled, setToolBarEnabledAlways, setToolBarFloatable, setToolBarFloating, toString
 
Methods inherited from class org.faceless.pdf2.viewer2.ViewerFeature
getAllEnabledFeatures, getAllFeatures, getCustomJavaScript, getFeatureProperty, getFeatureURLProperty, getName, isEnabledByDefault, setFeatureName, teardown
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

AbstractRegionSelector

protected AbstractRegionSelector(String name)
Method Detail

initialize

public void initialize(PDFViewer viewer)
Description copied from class: ViewerFeature
Called when the feature is first added to a viewer

Overrides:
initialize in class ToggleViewerWidget

setSelected

public void setSelected(boolean selected)
Description copied from class: ToggleViewerWidget
Set whether this Widget is selected. If active is true, this method will automatically call setSelected(false) on all the other widgets in this group. Subclasses should override this method to do whatever they need to do when their active status is changed.

Overrides:
setSelected in class ToggleViewerWidget
Parameters:
selected - whether this Widget is active or not

updateViewport

protected void updateViewport(DocumentViewport vp,
                              boolean selected)
Description copied from class: ToggleViewerWidget
Called from ToggleViewerWidget.setSelected(boolean), this method is called in each viewport in use by the PDFViewer or DocumentPanel so it can update its status. By default it is a no-op.

Overrides:
updateViewport in class ToggleViewerWidget

documentUpdated

public void documentUpdated(DocumentPanelEvent event)
Description copied from interface: DocumentPanelListener
Called when an DocumentPanelEvent is raised

Specified by:
documentUpdated in interface DocumentPanelListener

createRubberBoxComponent

protected JComponent createRubberBoxComponent()
Create the JComponent that it used to display the "rubber box". If you need to display some custom appearance when overriding this class, this method should be overridden.

Since:
2.11.7

pageAction

public void pageAction(PagePanelInteractionEvent event)
Description copied from interface: PagePanelInteractionListener
Called when a PagePanelInteractionEvent is raised

Specified by:
pageAction in interface PagePanelInteractionListener

paintRubberBandComponent

public void paintRubberBandComponent(JComponent component,
                                     Graphics2D g)
Paint the component while the "rubber band" box is being stretched. This method may be overriden if something is to be painted inside the box during this time.

Parameters:
component - the "rubber band" box being drawn
g - the Graphic2D object to draw on.

action

public void action(PagePanel panel,
                   Point2D start,
                   Point2D end)
Called when an area of the PDF has been selected.

Parameters:
panel - the PagePanel the selection was made on.
start - the start point of the selection, in PDF-units
end - the end point of the selection, in PDF-units

isSelectedAfterAction

protected boolean isSelectedAfterAction()
Called after action(org.faceless.pdf2.viewer2.PagePanel, java.awt.geom.Point2D, java.awt.geom.Point2D), this method should return true if the tool should stay selected after use, false otherwise (the default)

Since:
2.11.25


Copyright © 2001-2010 Big Faceless Organization