|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.faceless.pdf2.viewer2.ViewerFeature
org.faceless.pdf2.viewer2.AnnotationComponentFactory
org.faceless.pdf2.viewer2.feature.AnnotationStampFactory
public class AnnotationStampFactory
Create annotations that handle AnnotationStamp
objects.
Currently all that is handled is the ability to drag them if they're not readonly.
stampList | A comma seperated list of stamp names, to be passed in to setStampList() |
---|---|
stampHeight | The height of each stamp in the edit dialog, as passed in to setStampHeight(int) |
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.
Field Summary | |
---|---|
static String[] |
PREDEFINED
|
Fields inherited from class org.faceless.pdf2.viewer2.AnnotationComponentFactory |
---|
FOCUSBORDER |
Constructor Summary | |
---|---|
AnnotationStampFactory()
Return a new AnnotationStampFactory |
Method Summary | |
---|---|
protected void |
copyAnnotationState(PDFAnnotation source,
PDFAnnotation target)
Copies the properties of a given source annotation created by this factory to a target annotation of the same type. |
JComponent |
createComponent(PagePanel pagepanel,
PDFAnnotation a)
Return a JComponent that will visually represent the specified PDFAnnotation. |
JComponent |
createEditComponent(PDFAnnotation annot,
boolean readonly,
boolean create)
Return a JComponent that can be used to edit the annotation or display additional information. |
PDFAnnotation |
createNewAnnotation(float x1,
float y1,
float x2,
float y2)
Returns a new annotation of this factory's type with specified bounds. |
String |
getAnnotationType()
Return the name of the type of widgets this AnnotationComponentFactory creates or edits. |
AnnotationStamp |
getStamp(String stampname)
Get an AnnotationStamp for the specified stamp name. |
BufferedImage |
getStampImage(AnnotationStamp stamp,
int height,
PDFParser parser)
Create the image for the specified AnnotationStamp |
void |
initialize(PDFViewer viewer)
Called when the feature is first added to a viewer |
boolean |
matches(PDFAnnotation annot)
Return true if this AnnotationComponentFactory could create a JComponent
for the specified PDFAnnotation . |
void |
setStampHeight(int stampheight)
Set the height of the stamp images in the edit component. |
void |
setStampList(String[] stamplist)
Set the list of stamp names to choose from. |
Methods inherited from class org.faceless.pdf2.viewer2.AnnotationComponentFactory |
---|
addStockDetailsToEditComponent, bindComponentLocation, bindComponentLocation, bindComponentLocation, bindComponentLocation, createDeleteAction, createEditAction, createFlattenAction, createNewAnnotation, getPreferences, getViewer, isFactoryReadOnly, makeComponentInteractive, paintComponent, paintComponentAnnotations, popupPropertyMenu, postEdit, 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 |
Field Detail |
---|
public static final String[] PREDEFINED
Constructor Detail |
---|
public AnnotationStampFactory()
Method Detail |
---|
public void initialize(PDFViewer viewer)
ViewerFeature
initialize
in class AnnotationComponentFactory
public void setStampList(String[] stamplist)
PREDEFINED
public void setStampHeight(int stampheight)
public boolean matches(PDFAnnotation annot)
AnnotationComponentFactory
JComponent
for the specified PDFAnnotation
.
matches
in class AnnotationComponentFactory
public String getAnnotationType()
AnnotationComponentFactory
getAnnotationType
in class AnnotationComponentFactory
public JComponent createComponent(PagePanel pagepanel, PDFAnnotation a)
AnnotationComponentFactory
Return a JComponent that will visually represent the specified PDFAnnotation. The default implementation returns a JPanel that will display the annotation appearance - it's usually best to call super.createComponent() then add any required listeners in the subclasses.
By default this method returns a JCompoment whose paintComponent()
method is overridden to call paintComponent(this, this.ui, g)
followed by
paintComponentAnnotations(this, g)
- typically, the main reason to override this
method is when a different type of object is required (eg. a JTextField
)
createComponent
in class AnnotationComponentFactory
pagepanel
- the panel the JComponent will be added toa
- the annotationpaintComponentAnnotations()
,
paintComponent()
public PDFAnnotation createNewAnnotation(float x1, float y1, float x2, float y2)
AnnotationComponentFactory
createNewAnnotation
in class AnnotationComponentFactory
x1
- the lower left x coordinatey1
- the lower left y coordinatex2
- the top right x coordinatey2
- the top right y coordinatepublic JComponent createEditComponent(PDFAnnotation annot, boolean readonly, boolean create)
AnnotationComponentFactory
createEditComponent
in class AnnotationComponentFactory
annot
- the annotationreadonly
- whether we are displaying or editing the annotationcreate
- if readonly if false, whether we are editing an existing or creating a new annotationprotected void copyAnnotationState(PDFAnnotation source, PDFAnnotation target)
AnnotationComponentFactory
copyAnnotationState
in class AnnotationComponentFactory
source
- the annotation to copy properties fromtarget
- the annotation to copy properties topublic BufferedImage getStampImage(AnnotationStamp stamp, int height, PDFParser parser)
stamp
- the stamp to renderheight
- the height of the stamp imageparser
- the PDFParser to use to convertpublic AnnotationStamp getStamp(String stampname)
new AnnotationStamp
(stampname, 1)
,
but it can be overridden to handle custom stamps if necessary.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |