Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(39)

Unified Diff: experimental/PdfViewer/autogen/SkPdfAnnotationDictionary_autogen.h

Issue 17748002: Basic support for Type3 Fonts in Pdf + various refactorings (Closed) Base URL: http://skia.googlecode.com/svn/trunk/
Patch Set: Created 7 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: experimental/PdfViewer/autogen/SkPdfAnnotationDictionary_autogen.h
===================================================================
--- experimental/PdfViewer/autogen/SkPdfAnnotationDictionary_autogen.h (revision 0)
+++ experimental/PdfViewer/autogen/SkPdfAnnotationDictionary_autogen.h (revision 0)
@@ -0,0 +1,865 @@
+#ifndef __DEFINED__SkPdfAnnotationDictionary
+#define __DEFINED__SkPdfAnnotationDictionary
+
+#include "SkPdfUtils.h"
+#include "SkPdfEnums_autogen.h"
+#include "SkPdfArray_autogen.h"
+#include "SkPdfDictionary_autogen.h"
+
+// Entries common to all annotation dictionaries
+class SkPdfAnnotationDictionary : public SkPdfDictionary {
+public:
+ virtual SkPdfObjectType getType() const { return kAnnotationDictionary_SkPdfObjectType;}
+ virtual SkPdfObjectType getTypeEnd() const { return (SkPdfObjectType)(kAnnotationDictionary_SkPdfObjectType + 1);}
+public:
+ virtual SkPdfAnnotationDictionary* asAnnotationDictionary() {return this;}
+ virtual const SkPdfAnnotationDictionary* asAnnotationDictionary() const {return this;}
+
+private:
+ virtual SkPdfALinkAnnotationDictionary* asALinkAnnotationDictionary() {return NULL;}
+ virtual const SkPdfALinkAnnotationDictionary* asALinkAnnotationDictionary() const {return NULL;}
+
+ virtual SkPdfActionDictionary* asActionDictionary() {return NULL;}
+ virtual const SkPdfActionDictionary* asActionDictionary() const {return NULL;}
+
+ virtual SkPdfAlternateImageDictionary* asAlternateImageDictionary() {return NULL;}
+ virtual const SkPdfAlternateImageDictionary* asAlternateImageDictionary() const {return NULL;}
+
+ virtual SkPdfAnnotationActionsDictionary* asAnnotationActionsDictionary() {return NULL;}
+ virtual const SkPdfAnnotationActionsDictionary* asAnnotationActionsDictionary() const {return NULL;}
+
+ virtual SkPdfAppearanceCharacteristicsDictionary* asAppearanceCharacteristicsDictionary() {return NULL;}
+ virtual const SkPdfAppearanceCharacteristicsDictionary* asAppearanceCharacteristicsDictionary() const {return NULL;}
+
+ virtual SkPdfAppearanceDictionary* asAppearanceDictionary() {return NULL;}
+ virtual const SkPdfAppearanceDictionary* asAppearanceDictionary() const {return NULL;}
+
+ virtual SkPdfApplicationDataDictionary* asApplicationDataDictionary() {return NULL;}
+ virtual const SkPdfApplicationDataDictionary* asApplicationDataDictionary() const {return NULL;}
+
+ virtual SkPdfArtifactsDictionary* asArtifactsDictionary() {return NULL;}
+ virtual const SkPdfArtifactsDictionary* asArtifactsDictionary() const {return NULL;}
+
+ virtual SkPdfAttributeObjectDictionary* asAttributeObjectDictionary() {return NULL;}
+ virtual const SkPdfAttributeObjectDictionary* asAttributeObjectDictionary() const {return NULL;}
+
+ virtual SkPdfBeadDictionary* asBeadDictionary() {return NULL;}
+ virtual const SkPdfBeadDictionary* asBeadDictionary() const {return NULL;}
+
+ virtual SkPdfBlockLevelStructureElementsDictionary* asBlockLevelStructureElementsDictionary() {return NULL;}
+ virtual const SkPdfBlockLevelStructureElementsDictionary* asBlockLevelStructureElementsDictionary() const {return NULL;}
+
+ virtual SkPdfBorderStyleDictionary* asBorderStyleDictionary() {return NULL;}
+ virtual const SkPdfBorderStyleDictionary* asBorderStyleDictionary() const {return NULL;}
+
+ virtual SkPdfBoxColorInformationDictionary* asBoxColorInformationDictionary() {return NULL;}
+ virtual const SkPdfBoxColorInformationDictionary* asBoxColorInformationDictionary() const {return NULL;}
+
+ virtual SkPdfBoxStyleDictionary* asBoxStyleDictionary() {return NULL;}
+ virtual const SkPdfBoxStyleDictionary* asBoxStyleDictionary() const {return NULL;}
+
+ virtual SkPdfCIDFontDescriptorDictionary* asCIDFontDescriptorDictionary() {return NULL;}
+ virtual const SkPdfCIDFontDescriptorDictionary* asCIDFontDescriptorDictionary() const {return NULL;}
+
+ virtual SkPdfCIDSystemInfoDictionary* asCIDSystemInfoDictionary() {return NULL;}
+ virtual const SkPdfCIDSystemInfoDictionary* asCIDSystemInfoDictionary() const {return NULL;}
+
+ virtual SkPdfCMapDictionary* asCMapDictionary() {return NULL;}
+ virtual const SkPdfCMapDictionary* asCMapDictionary() const {return NULL;}
+
+ virtual SkPdfCalgrayColorSpaceDictionary* asCalgrayColorSpaceDictionary() {return NULL;}
+ virtual const SkPdfCalgrayColorSpaceDictionary* asCalgrayColorSpaceDictionary() const {return NULL;}
+
+ virtual SkPdfCalrgbColorSpaceDictionary* asCalrgbColorSpaceDictionary() {return NULL;}
+ virtual const SkPdfCalrgbColorSpaceDictionary* asCalrgbColorSpaceDictionary() const {return NULL;}
+
+ virtual SkPdfCatalogDictionary* asCatalogDictionary() {return NULL;}
+ virtual const SkPdfCatalogDictionary* asCatalogDictionary() const {return NULL;}
+
+ virtual SkPdfCcittfaxdecodeFilterDictionary* asCcittfaxdecodeFilterDictionary() {return NULL;}
+ virtual const SkPdfCcittfaxdecodeFilterDictionary* asCcittfaxdecodeFilterDictionary() const {return NULL;}
+
+ virtual SkPdfCheckboxFieldDictionary* asCheckboxFieldDictionary() {return NULL;}
+ virtual const SkPdfCheckboxFieldDictionary* asCheckboxFieldDictionary() const {return NULL;}
+
+ virtual SkPdfChoiceFieldDictionary* asChoiceFieldDictionary() {return NULL;}
+ virtual const SkPdfChoiceFieldDictionary* asChoiceFieldDictionary() const {return NULL;}
+
+ virtual SkPdfComponentsWithMetadataDictionary* asComponentsWithMetadataDictionary() {return NULL;}
+ virtual const SkPdfComponentsWithMetadataDictionary* asComponentsWithMetadataDictionary() const {return NULL;}
+
+ virtual SkPdfDctdecodeFilterDictionary* asDctdecodeFilterDictionary() {return NULL;}
+ virtual const SkPdfDctdecodeFilterDictionary* asDctdecodeFilterDictionary() const {return NULL;}
+
+ virtual SkPdfDeviceNColorSpaceDictionary* asDeviceNColorSpaceDictionary() {return NULL;}
+ virtual const SkPdfDeviceNColorSpaceDictionary* asDeviceNColorSpaceDictionary() const {return NULL;}
+
+ virtual SkPdfDocumentCatalogActionsDictionary* asDocumentCatalogActionsDictionary() {return NULL;}
+ virtual const SkPdfDocumentCatalogActionsDictionary* asDocumentCatalogActionsDictionary() const {return NULL;}
+
+ virtual SkPdfDocumentInformationDictionary* asDocumentInformationDictionary() {return NULL;}
+ virtual const SkPdfDocumentInformationDictionary* asDocumentInformationDictionary() const {return NULL;}
+
+ virtual SkPdfEmbeddedFileParameterDictionary* asEmbeddedFileParameterDictionary() {return NULL;}
+ virtual const SkPdfEmbeddedFileParameterDictionary* asEmbeddedFileParameterDictionary() const {return NULL;}
+
+ virtual SkPdfEmbeddedFileStreamDictionary* asEmbeddedFileStreamDictionary() {return NULL;}
+ virtual const SkPdfEmbeddedFileStreamDictionary* asEmbeddedFileStreamDictionary() const {return NULL;}
+
+ virtual SkPdfEmbeddedFontStreamDictionary* asEmbeddedFontStreamDictionary() {return NULL;}
+ virtual const SkPdfEmbeddedFontStreamDictionary* asEmbeddedFontStreamDictionary() const {return NULL;}
+
+ virtual SkPdfEncodingDictionary* asEncodingDictionary() {return NULL;}
+ virtual const SkPdfEncodingDictionary* asEncodingDictionary() const {return NULL;}
+
+ virtual SkPdfEncryptedEmbeddedFileStreamDictionary* asEncryptedEmbeddedFileStreamDictionary() {return NULL;}
+ virtual const SkPdfEncryptedEmbeddedFileStreamDictionary* asEncryptedEmbeddedFileStreamDictionary() const {return NULL;}
+
+ virtual SkPdfEncryptionCommonDictionary* asEncryptionCommonDictionary() {return NULL;}
+ virtual const SkPdfEncryptionCommonDictionary* asEncryptionCommonDictionary() const {return NULL;}
+
+ virtual SkPdfFDFCatalogDictionary* asFDFCatalogDictionary() {return NULL;}
+ virtual const SkPdfFDFCatalogDictionary* asFDFCatalogDictionary() const {return NULL;}
+
+ virtual SkPdfFDFDictionary* asFDFDictionary() {return NULL;}
+ virtual const SkPdfFDFDictionary* asFDFDictionary() const {return NULL;}
+
+ virtual SkPdfFDFFieldDictionary* asFDFFieldDictionary() {return NULL;}
+ virtual const SkPdfFDFFieldDictionary* asFDFFieldDictionary() const {return NULL;}
+
+ virtual SkPdfFDFFileAnnotationDictionary* asFDFFileAnnotationDictionary() {return NULL;}
+ virtual const SkPdfFDFFileAnnotationDictionary* asFDFFileAnnotationDictionary() const {return NULL;}
+
+ virtual SkPdfFDFNamedPageReferenceDictionary* asFDFNamedPageReferenceDictionary() {return NULL;}
+ virtual const SkPdfFDFNamedPageReferenceDictionary* asFDFNamedPageReferenceDictionary() const {return NULL;}
+
+ virtual SkPdfFDFPageDictionary* asFDFPageDictionary() {return NULL;}
+ virtual const SkPdfFDFPageDictionary* asFDFPageDictionary() const {return NULL;}
+
+ virtual SkPdfFDFTemplateDictionary* asFDFTemplateDictionary() {return NULL;}
+ virtual const SkPdfFDFTemplateDictionary* asFDFTemplateDictionary() const {return NULL;}
+
+ virtual SkPdfFDFTrailerDictionary* asFDFTrailerDictionary() {return NULL;}
+ virtual const SkPdfFDFTrailerDictionary* asFDFTrailerDictionary() const {return NULL;}
+
+ virtual SkPdfFieldDictionary* asFieldDictionary() {return NULL;}
+ virtual const SkPdfFieldDictionary* asFieldDictionary() const {return NULL;}
+
+ virtual SkPdfFileAttachmentAnnotationDictionary* asFileAttachmentAnnotationDictionary() {return NULL;}
+ virtual const SkPdfFileAttachmentAnnotationDictionary* asFileAttachmentAnnotationDictionary() const {return NULL;}
+
+ virtual SkPdfFileSpecificationDictionary* asFileSpecificationDictionary() {return NULL;}
+ virtual const SkPdfFileSpecificationDictionary* asFileSpecificationDictionary() const {return NULL;}
+
+ virtual SkPdfFileTrailerDictionary* asFileTrailerDictionary() {return NULL;}
+ virtual const SkPdfFileTrailerDictionary* asFileTrailerDictionary() const {return NULL;}
+
+ virtual SkPdfFontDescriptorDictionary* asFontDescriptorDictionary() {return NULL;}
+ virtual const SkPdfFontDescriptorDictionary* asFontDescriptorDictionary() const {return NULL;}
+
+ virtual SkPdfFontDictionary* asFontDictionary() {return NULL;}
+ virtual const SkPdfFontDictionary* asFontDictionary() const {return NULL;}
+
+ virtual SkPdfCIDFontDictionary* asCIDFontDictionary() {return NULL;}
+ virtual const SkPdfCIDFontDictionary* asCIDFontDictionary() const {return NULL;}
+
+ virtual SkPdfType0FontDictionary* asType0FontDictionary() {return NULL;}
+ virtual const SkPdfType0FontDictionary* asType0FontDictionary() const {return NULL;}
+
+ virtual SkPdfType1FontDictionary* asType1FontDictionary() {return NULL;}
+ virtual const SkPdfType1FontDictionary* asType1FontDictionary() const {return NULL;}
+
+ virtual SkPdfMultiMasterFontDictionary* asMultiMasterFontDictionary() {return NULL;}
+ virtual const SkPdfMultiMasterFontDictionary* asMultiMasterFontDictionary() const {return NULL;}
+
+ virtual SkPdfTrueTypeFontDictionary* asTrueTypeFontDictionary() {return NULL;}
+ virtual const SkPdfTrueTypeFontDictionary* asTrueTypeFontDictionary() const {return NULL;}
+
+ virtual SkPdfType3FontDictionary* asType3FontDictionary() {return NULL;}
+ virtual const SkPdfType3FontDictionary* asType3FontDictionary() const {return NULL;}
+
+ virtual SkPdfFormFieldActionsDictionary* asFormFieldActionsDictionary() {return NULL;}
+ virtual const SkPdfFormFieldActionsDictionary* asFormFieldActionsDictionary() const {return NULL;}
+
+ virtual SkPdfFreeTextAnnotationDictionary* asFreeTextAnnotationDictionary() {return NULL;}
+ virtual const SkPdfFreeTextAnnotationDictionary* asFreeTextAnnotationDictionary() const {return NULL;}
+
+ virtual SkPdfFunctionCommonDictionary* asFunctionCommonDictionary() {return NULL;}
+ virtual const SkPdfFunctionCommonDictionary* asFunctionCommonDictionary() const {return NULL;}
+
+ virtual SkPdfGoToActionDictionary* asGoToActionDictionary() {return NULL;}
+ virtual const SkPdfGoToActionDictionary* asGoToActionDictionary() const {return NULL;}
+
+ virtual SkPdfGraphicsStateDictionary* asGraphicsStateDictionary() {return NULL;}
+ virtual const SkPdfGraphicsStateDictionary* asGraphicsStateDictionary() const {return NULL;}
+
+ virtual SkPdfGroupAttributesDictionary* asGroupAttributesDictionary() {return NULL;}
+ virtual const SkPdfGroupAttributesDictionary* asGroupAttributesDictionary() const {return NULL;}
+
+ virtual SkPdfHideActionDictionary* asHideActionDictionary() {return NULL;}
+ virtual const SkPdfHideActionDictionary* asHideActionDictionary() const {return NULL;}
+
+ virtual SkPdfIccProfileStreamDictionary* asIccProfileStreamDictionary() {return NULL;}
+ virtual const SkPdfIccProfileStreamDictionary* asIccProfileStreamDictionary() const {return NULL;}
+
+ virtual SkPdfIconFitDictionary* asIconFitDictionary() {return NULL;}
+ virtual const SkPdfIconFitDictionary* asIconFitDictionary() const {return NULL;}
+
+ virtual SkPdfImportDataActionDictionary* asImportDataActionDictionary() {return NULL;}
+ virtual const SkPdfImportDataActionDictionary* asImportDataActionDictionary() const {return NULL;}
+
+ virtual SkPdfInkAnnotationDictionary* asInkAnnotationDictionary() {return NULL;}
+ virtual const SkPdfInkAnnotationDictionary* asInkAnnotationDictionary() const {return NULL;}
+
+ virtual SkPdfInlineLevelStructureElementsDictionary* asInlineLevelStructureElementsDictionary() {return NULL;}
+ virtual const SkPdfInlineLevelStructureElementsDictionary* asInlineLevelStructureElementsDictionary() const {return NULL;}
+
+ virtual SkPdfInteractiveFormDictionary* asInteractiveFormDictionary() {return NULL;}
+ virtual const SkPdfInteractiveFormDictionary* asInteractiveFormDictionary() const {return NULL;}
+
+ virtual SkPdfJavascriptActionDictionary* asJavascriptActionDictionary() {return NULL;}
+ virtual const SkPdfJavascriptActionDictionary* asJavascriptActionDictionary() const {return NULL;}
+
+ virtual SkPdfJavascriptDictionary* asJavascriptDictionary() {return NULL;}
+ virtual const SkPdfJavascriptDictionary* asJavascriptDictionary() const {return NULL;}
+
+ virtual SkPdfJbig2DecodeFilterDictionary* asJbig2DecodeFilterDictionary() {return NULL;}
+ virtual const SkPdfJbig2DecodeFilterDictionary* asJbig2DecodeFilterDictionary() const {return NULL;}
+
+ virtual SkPdfLabColorSpaceDictionary* asLabColorSpaceDictionary() {return NULL;}
+ virtual const SkPdfLabColorSpaceDictionary* asLabColorSpaceDictionary() const {return NULL;}
+
+ virtual SkPdfLaunchActionDictionary* asLaunchActionDictionary() {return NULL;}
+ virtual const SkPdfLaunchActionDictionary* asLaunchActionDictionary() const {return NULL;}
+
+ virtual SkPdfLineAnnotationDictionary* asLineAnnotationDictionary() {return NULL;}
+ virtual const SkPdfLineAnnotationDictionary* asLineAnnotationDictionary() const {return NULL;}
+
+ virtual SkPdfListAttributeDictionary* asListAttributeDictionary() {return NULL;}
+ virtual const SkPdfListAttributeDictionary* asListAttributeDictionary() const {return NULL;}
+
+ virtual SkPdfLzwdecodeAndFlatedecodeFiltersDictionary* asLzwdecodeAndFlatedecodeFiltersDictionary() {return NULL;}
+ virtual const SkPdfLzwdecodeAndFlatedecodeFiltersDictionary* asLzwdecodeAndFlatedecodeFiltersDictionary() const {return NULL;}
+
+ virtual SkPdfMacOsFileInformationDictionary* asMacOsFileInformationDictionary() {return NULL;}
+ virtual const SkPdfMacOsFileInformationDictionary* asMacOsFileInformationDictionary() const {return NULL;}
+
+ virtual SkPdfMarkInformationDictionary* asMarkInformationDictionary() {return NULL;}
+ virtual const SkPdfMarkInformationDictionary* asMarkInformationDictionary() const {return NULL;}
+
+ virtual SkPdfMarkedContentReferenceDictionary* asMarkedContentReferenceDictionary() {return NULL;}
+ virtual const SkPdfMarkedContentReferenceDictionary* asMarkedContentReferenceDictionary() const {return NULL;}
+
+ virtual SkPdfMarkupAnnotationsDictionary* asMarkupAnnotationsDictionary() {return NULL;}
+ virtual const SkPdfMarkupAnnotationsDictionary* asMarkupAnnotationsDictionary() const {return NULL;}
+
+ virtual SkPdfMetadataStreamDictionary* asMetadataStreamDictionary() {return NULL;}
+ virtual const SkPdfMetadataStreamDictionary* asMetadataStreamDictionary() const {return NULL;}
+
+ virtual SkPdfMovieActionDictionary* asMovieActionDictionary() {return NULL;}
+ virtual const SkPdfMovieActionDictionary* asMovieActionDictionary() const {return NULL;}
+
+ virtual SkPdfMovieActivationDictionary* asMovieActivationDictionary() {return NULL;}
+ virtual const SkPdfMovieActivationDictionary* asMovieActivationDictionary() const {return NULL;}
+
+ virtual SkPdfMovieAnnotationDictionary* asMovieAnnotationDictionary() {return NULL;}
+ virtual const SkPdfMovieAnnotationDictionary* asMovieAnnotationDictionary() const {return NULL;}
+
+ virtual SkPdfMovieDictionary* asMovieDictionary() {return NULL;}
+ virtual const SkPdfMovieDictionary* asMovieDictionary() const {return NULL;}
+
+ virtual SkPdfNameDictionary* asNameDictionary() {return NULL;}
+ virtual const SkPdfNameDictionary* asNameDictionary() const {return NULL;}
+
+ virtual SkPdfNameTreeNodeDictionary* asNameTreeNodeDictionary() {return NULL;}
+ virtual const SkPdfNameTreeNodeDictionary* asNameTreeNodeDictionary() const {return NULL;}
+
+ virtual SkPdfNamedActionsDictionary* asNamedActionsDictionary() {return NULL;}
+ virtual const SkPdfNamedActionsDictionary* asNamedActionsDictionary() const {return NULL;}
+
+ virtual SkPdfNumberTreeNodeDictionary* asNumberTreeNodeDictionary() {return NULL;}
+ virtual const SkPdfNumberTreeNodeDictionary* asNumberTreeNodeDictionary() const {return NULL;}
+
+ virtual SkPdfObjectReferenceDictionary* asObjectReferenceDictionary() {return NULL;}
+ virtual const SkPdfObjectReferenceDictionary* asObjectReferenceDictionary() const {return NULL;}
+
+ virtual SkPdfOpiVersionDictionary* asOpiVersionDictionary() {return NULL;}
+ virtual const SkPdfOpiVersionDictionary* asOpiVersionDictionary() const {return NULL;}
+
+ virtual SkPdfOutlineDictionary* asOutlineDictionary() {return NULL;}
+ virtual const SkPdfOutlineDictionary* asOutlineDictionary() const {return NULL;}
+
+ virtual SkPdfOutlineItemDictionary* asOutlineItemDictionary() {return NULL;}
+ virtual const SkPdfOutlineItemDictionary* asOutlineItemDictionary() const {return NULL;}
+
+ virtual SkPdfPDF_XOutputIntentDictionary* asPDF_XOutputIntentDictionary() {return NULL;}
+ virtual const SkPdfPDF_XOutputIntentDictionary* asPDF_XOutputIntentDictionary() const {return NULL;}
+
+ virtual SkPdfPSXobjectDictionary* asPSXobjectDictionary() {return NULL;}
+ virtual const SkPdfPSXobjectDictionary* asPSXobjectDictionary() const {return NULL;}
+
+ virtual SkPdfPageLabelDictionary* asPageLabelDictionary() {return NULL;}
+ virtual const SkPdfPageLabelDictionary* asPageLabelDictionary() const {return NULL;}
+
+ virtual SkPdfPageObjectActionsDictionary* asPageObjectActionsDictionary() {return NULL;}
+ virtual const SkPdfPageObjectActionsDictionary* asPageObjectActionsDictionary() const {return NULL;}
+
+ virtual SkPdfPageObjectDictionary* asPageObjectDictionary() {return NULL;}
+ virtual const SkPdfPageObjectDictionary* asPageObjectDictionary() const {return NULL;}
+
+ virtual SkPdfPagePieceDictionary* asPagePieceDictionary() {return NULL;}
+ virtual const SkPdfPagePieceDictionary* asPagePieceDictionary() const {return NULL;}
+
+ virtual SkPdfPageTreeNodeDictionary* asPageTreeNodeDictionary() {return NULL;}
+ virtual const SkPdfPageTreeNodeDictionary* asPageTreeNodeDictionary() const {return NULL;}
+
+ virtual SkPdfPopUpAnnotationDictionary* asPopUpAnnotationDictionary() {return NULL;}
+ virtual const SkPdfPopUpAnnotationDictionary* asPopUpAnnotationDictionary() const {return NULL;}
+
+ virtual SkPdfPrinterMarkAnnotationDictionary* asPrinterMarkAnnotationDictionary() {return NULL;}
+ virtual const SkPdfPrinterMarkAnnotationDictionary* asPrinterMarkAnnotationDictionary() const {return NULL;}
+
+ virtual SkPdfPrinterMarkFormDictionary* asPrinterMarkFormDictionary() {return NULL;}
+ virtual const SkPdfPrinterMarkFormDictionary* asPrinterMarkFormDictionary() const {return NULL;}
+
+ virtual SkPdfRadioButtonFieldDictionary* asRadioButtonFieldDictionary() {return NULL;}
+ virtual const SkPdfRadioButtonFieldDictionary* asRadioButtonFieldDictionary() const {return NULL;}
+
+ virtual SkPdfReferenceDictionary* asReferenceDictionary() {return NULL;}
+ virtual const SkPdfReferenceDictionary* asReferenceDictionary() const {return NULL;}
+
+ virtual SkPdfRemoteGoToActionDictionary* asRemoteGoToActionDictionary() {return NULL;}
+ virtual const SkPdfRemoteGoToActionDictionary* asRemoteGoToActionDictionary() const {return NULL;}
+
+ virtual SkPdfResetFormActionDictionary* asResetFormActionDictionary() {return NULL;}
+ virtual const SkPdfResetFormActionDictionary* asResetFormActionDictionary() const {return NULL;}
+
+ virtual SkPdfResourceDictionary* asResourceDictionary() {return NULL;}
+ virtual const SkPdfResourceDictionary* asResourceDictionary() const {return NULL;}
+
+ virtual SkPdfRubberStampAnnotationDictionary* asRubberStampAnnotationDictionary() {return NULL;}
+ virtual const SkPdfRubberStampAnnotationDictionary* asRubberStampAnnotationDictionary() const {return NULL;}
+
+ virtual SkPdfSeparationDictionary* asSeparationDictionary() {return NULL;}
+ virtual const SkPdfSeparationDictionary* asSeparationDictionary() const {return NULL;}
+
+ virtual SkPdfShadingDictionary* asShadingDictionary() {return NULL;}
+ virtual const SkPdfShadingDictionary* asShadingDictionary() const {return NULL;}
+
+ virtual SkPdfType1ShadingDictionary* asType1ShadingDictionary() {return NULL;}
+ virtual const SkPdfType1ShadingDictionary* asType1ShadingDictionary() const {return NULL;}
+
+ virtual SkPdfType2ShadingDictionary* asType2ShadingDictionary() {return NULL;}
+ virtual const SkPdfType2ShadingDictionary* asType2ShadingDictionary() const {return NULL;}
+
+ virtual SkPdfType3ShadingDictionary* asType3ShadingDictionary() {return NULL;}
+ virtual const SkPdfType3ShadingDictionary* asType3ShadingDictionary() const {return NULL;}
+
+ virtual SkPdfType4ShadingDictionary* asType4ShadingDictionary() {return NULL;}
+ virtual const SkPdfType4ShadingDictionary* asType4ShadingDictionary() const {return NULL;}
+
+ virtual SkPdfType5ShadingDictionary* asType5ShadingDictionary() {return NULL;}
+ virtual const SkPdfType5ShadingDictionary* asType5ShadingDictionary() const {return NULL;}
+
+ virtual SkPdfType6ShadingDictionary* asType6ShadingDictionary() {return NULL;}
+ virtual const SkPdfType6ShadingDictionary* asType6ShadingDictionary() const {return NULL;}
+
+ virtual SkPdfSignatureDictionary* asSignatureDictionary() {return NULL;}
+ virtual const SkPdfSignatureDictionary* asSignatureDictionary() const {return NULL;}
+
+ virtual SkPdfSoftMaskDictionary* asSoftMaskDictionary() {return NULL;}
+ virtual const SkPdfSoftMaskDictionary* asSoftMaskDictionary() const {return NULL;}
+
+ virtual SkPdfSoftMaskImageDictionary* asSoftMaskImageDictionary() {return NULL;}
+ virtual const SkPdfSoftMaskImageDictionary* asSoftMaskImageDictionary() const {return NULL;}
+
+ virtual SkPdfSoundActionDictionary* asSoundActionDictionary() {return NULL;}
+ virtual const SkPdfSoundActionDictionary* asSoundActionDictionary() const {return NULL;}
+
+ virtual SkPdfSoundAnnotationDictionary* asSoundAnnotationDictionary() {return NULL;}
+ virtual const SkPdfSoundAnnotationDictionary* asSoundAnnotationDictionary() const {return NULL;}
+
+ virtual SkPdfSoundObjectDictionary* asSoundObjectDictionary() {return NULL;}
+ virtual const SkPdfSoundObjectDictionary* asSoundObjectDictionary() const {return NULL;}
+
+ virtual SkPdfSourceInformationDictionary* asSourceInformationDictionary() {return NULL;}
+ virtual const SkPdfSourceInformationDictionary* asSourceInformationDictionary() const {return NULL;}
+
+ virtual SkPdfSquareOrCircleAnnotation* asSquareOrCircleAnnotation() {return NULL;}
+ virtual const SkPdfSquareOrCircleAnnotation* asSquareOrCircleAnnotation() const {return NULL;}
+
+ virtual SkPdfStandardSecurityHandlerDictionary* asStandardSecurityHandlerDictionary() {return NULL;}
+ virtual const SkPdfStandardSecurityHandlerDictionary* asStandardSecurityHandlerDictionary() const {return NULL;}
+
+ virtual SkPdfStandardStructureDictionary* asStandardStructureDictionary() {return NULL;}
+ virtual const SkPdfStandardStructureDictionary* asStandardStructureDictionary() const {return NULL;}
+
+ virtual SkPdfStreamCommonDictionary* asStreamCommonDictionary() {return NULL;}
+ virtual const SkPdfStreamCommonDictionary* asStreamCommonDictionary() const {return NULL;}
+
+ virtual SkPdfStructureElementAccessDictionary* asStructureElementAccessDictionary() {return NULL;}
+ virtual const SkPdfStructureElementAccessDictionary* asStructureElementAccessDictionary() const {return NULL;}
+
+ virtual SkPdfStructureElementDictionary* asStructureElementDictionary() {return NULL;}
+ virtual const SkPdfStructureElementDictionary* asStructureElementDictionary() const {return NULL;}
+
+ virtual SkPdfStructureTreeRootDictionary* asStructureTreeRootDictionary() {return NULL;}
+ virtual const SkPdfStructureTreeRootDictionary* asStructureTreeRootDictionary() const {return NULL;}
+
+ virtual SkPdfSubmitFormActionDictionary* asSubmitFormActionDictionary() {return NULL;}
+ virtual const SkPdfSubmitFormActionDictionary* asSubmitFormActionDictionary() const {return NULL;}
+
+ virtual SkPdfTableAttributesDictionary* asTableAttributesDictionary() {return NULL;}
+ virtual const SkPdfTableAttributesDictionary* asTableAttributesDictionary() const {return NULL;}
+
+ virtual SkPdfTextAnnotationDictionary* asTextAnnotationDictionary() {return NULL;}
+ virtual const SkPdfTextAnnotationDictionary* asTextAnnotationDictionary() const {return NULL;}
+
+ virtual SkPdfTextFieldDictionary* asTextFieldDictionary() {return NULL;}
+ virtual const SkPdfTextFieldDictionary* asTextFieldDictionary() const {return NULL;}
+
+ virtual SkPdfThreadActionDictionary* asThreadActionDictionary() {return NULL;}
+ virtual const SkPdfThreadActionDictionary* asThreadActionDictionary() const {return NULL;}
+
+ virtual SkPdfThreadDictionary* asThreadDictionary() {return NULL;}
+ virtual const SkPdfThreadDictionary* asThreadDictionary() const {return NULL;}
+
+ virtual SkPdfTransitionDictionary* asTransitionDictionary() {return NULL;}
+ virtual const SkPdfTransitionDictionary* asTransitionDictionary() const {return NULL;}
+
+ virtual SkPdfTransparencyGroupDictionary* asTransparencyGroupDictionary() {return NULL;}
+ virtual const SkPdfTransparencyGroupDictionary* asTransparencyGroupDictionary() const {return NULL;}
+
+ virtual SkPdfTrapNetworkAnnotationDictionary* asTrapNetworkAnnotationDictionary() {return NULL;}
+ virtual const SkPdfTrapNetworkAnnotationDictionary* asTrapNetworkAnnotationDictionary() const {return NULL;}
+
+ virtual SkPdfTrapNetworkAppearanceStreamDictionary* asTrapNetworkAppearanceStreamDictionary() {return NULL;}
+ virtual const SkPdfTrapNetworkAppearanceStreamDictionary* asTrapNetworkAppearanceStreamDictionary() const {return NULL;}
+
+ virtual SkPdfType0FunctionDictionary* asType0FunctionDictionary() {return NULL;}
+ virtual const SkPdfType0FunctionDictionary* asType0FunctionDictionary() const {return NULL;}
+
+ virtual SkPdfType10HalftoneDictionary* asType10HalftoneDictionary() {return NULL;}
+ virtual const SkPdfType10HalftoneDictionary* asType10HalftoneDictionary() const {return NULL;}
+
+ virtual SkPdfType16HalftoneDictionary* asType16HalftoneDictionary() {return NULL;}
+ virtual const SkPdfType16HalftoneDictionary* asType16HalftoneDictionary() const {return NULL;}
+
+ virtual SkPdfType1HalftoneDictionary* asType1HalftoneDictionary() {return NULL;}
+ virtual const SkPdfType1HalftoneDictionary* asType1HalftoneDictionary() const {return NULL;}
+
+ virtual SkPdfType1PatternDictionary* asType1PatternDictionary() {return NULL;}
+ virtual const SkPdfType1PatternDictionary* asType1PatternDictionary() const {return NULL;}
+
+ virtual SkPdfType2FunctionDictionary* asType2FunctionDictionary() {return NULL;}
+ virtual const SkPdfType2FunctionDictionary* asType2FunctionDictionary() const {return NULL;}
+
+ virtual SkPdfType2PatternDictionary* asType2PatternDictionary() {return NULL;}
+ virtual const SkPdfType2PatternDictionary* asType2PatternDictionary() const {return NULL;}
+
+ virtual SkPdfType3FunctionDictionary* asType3FunctionDictionary() {return NULL;}
+ virtual const SkPdfType3FunctionDictionary* asType3FunctionDictionary() const {return NULL;}
+
+ virtual SkPdfType5HalftoneDictionary* asType5HalftoneDictionary() {return NULL;}
+ virtual const SkPdfType5HalftoneDictionary* asType5HalftoneDictionary() const {return NULL;}
+
+ virtual SkPdfType6HalftoneDictionary* asType6HalftoneDictionary() {return NULL;}
+ virtual const SkPdfType6HalftoneDictionary* asType6HalftoneDictionary() const {return NULL;}
+
+ virtual SkPdfURIActionDictionary* asURIActionDictionary() {return NULL;}
+ virtual const SkPdfURIActionDictionary* asURIActionDictionary() const {return NULL;}
+
+ virtual SkPdfURIDictionary* asURIDictionary() {return NULL;}
+ virtual const SkPdfURIDictionary* asURIDictionary() const {return NULL;}
+
+ virtual SkPdfURLAliasDictionary* asURLAliasDictionary() {return NULL;}
+ virtual const SkPdfURLAliasDictionary* asURLAliasDictionary() const {return NULL;}
+
+ virtual SkPdfVariableTextFieldDictionary* asVariableTextFieldDictionary() {return NULL;}
+ virtual const SkPdfVariableTextFieldDictionary* asVariableTextFieldDictionary() const {return NULL;}
+
+ virtual SkPdfViewerPreferencesDictionary* asViewerPreferencesDictionary() {return NULL;}
+ virtual const SkPdfViewerPreferencesDictionary* asViewerPreferencesDictionary() const {return NULL;}
+
+ virtual SkPdfWebCaptureCommandDictionary* asWebCaptureCommandDictionary() {return NULL;}
+ virtual const SkPdfWebCaptureCommandDictionary* asWebCaptureCommandDictionary() const {return NULL;}
+
+ virtual SkPdfWebCaptureCommandSettingsDictionary* asWebCaptureCommandSettingsDictionary() {return NULL;}
+ virtual const SkPdfWebCaptureCommandSettingsDictionary* asWebCaptureCommandSettingsDictionary() const {return NULL;}
+
+ virtual SkPdfWebCaptureDictionary* asWebCaptureDictionary() {return NULL;}
+ virtual const SkPdfWebCaptureDictionary* asWebCaptureDictionary() const {return NULL;}
+
+ virtual SkPdfWebCaptureImageSetDictionary* asWebCaptureImageSetDictionary() {return NULL;}
+ virtual const SkPdfWebCaptureImageSetDictionary* asWebCaptureImageSetDictionary() const {return NULL;}
+
+ virtual SkPdfWebCaptureInformationDictionary* asWebCaptureInformationDictionary() {return NULL;}
+ virtual const SkPdfWebCaptureInformationDictionary* asWebCaptureInformationDictionary() const {return NULL;}
+
+ virtual SkPdfWebCapturePageSetDictionary* asWebCapturePageSetDictionary() {return NULL;}
+ virtual const SkPdfWebCapturePageSetDictionary* asWebCapturePageSetDictionary() const {return NULL;}
+
+ virtual SkPdfWidgetAnnotationDictionary* asWidgetAnnotationDictionary() {return NULL;}
+ virtual const SkPdfWidgetAnnotationDictionary* asWidgetAnnotationDictionary() const {return NULL;}
+
+ virtual SkPdfWindowsLaunchActionDictionary* asWindowsLaunchActionDictionary() {return NULL;}
+ virtual const SkPdfWindowsLaunchActionDictionary* asWindowsLaunchActionDictionary() const {return NULL;}
+
+ virtual SkPdfXObjectDictionary* asXObjectDictionary() {return NULL;}
+ virtual const SkPdfXObjectDictionary* asXObjectDictionary() const {return NULL;}
+
+ virtual SkPdfImageDictionary* asImageDictionary() {return NULL;}
+ virtual const SkPdfImageDictionary* asImageDictionary() const {return NULL;}
+
+ virtual SkPdfType1FormDictionary* asType1FormDictionary() {return NULL;}
+ virtual const SkPdfType1FormDictionary* asType1FormDictionary() const {return NULL;}
+
+public:
+private:
+public:
+ SkPdfAnnotationDictionary(const PdfMemDocument* podofoDoc = NULL, const PdfObject* podofoObj = NULL) : SkPdfDictionary(podofoDoc, podofoObj) {}
+
+ SkPdfAnnotationDictionary(const SkPdfAnnotationDictionary& from) : SkPdfDictionary(from.fPodofoDoc, from.fPodofoObj) {}
+
+ virtual bool valid() const {return true;}
+
+ SkPdfAnnotationDictionary& operator=(const SkPdfAnnotationDictionary& from) {this->fPodofoDoc = from.fPodofoDoc; this->fPodofoObj = from.fPodofoObj; return *this;}
+
+/** (Optional) The type of PDF object that this dictionary describes; if present,
+ * must be Annot for an annotation dictionary.
+**/
+ bool has_Type() const {
+ return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Type", "", NULL));
+ }
+
+ std::string Type() const {
+ std::string ret;
+ if (NameFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Type", "", &ret)) return ret;
+ // TODO(edisonn): warn about missing required field, assert for known good pdfs
+ return "";
+ }
+
+/** (Required) The type of annotation that this dictionary describes; see Table
+ * 8.14 on page 499 for specific values.
+**/
+ bool has_Subtype() const {
+ return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Subtype", "", NULL));
+ }
+
+ std::string Subtype() const {
+ std::string ret;
+ if (NameFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Subtype", "", &ret)) return ret;
+ // TODO(edisonn): warn about missing required field, assert for known good pdfs
+ return "";
+ }
+
+/** (Required or optional, depending on the annotation type) Text to be displayed
+ * for the annotation or, if this type of annotation does not display text, an al-
+ * ternate description of the annotation's contents in human-readable form. In
+ * either case, this text is useful when extracting the document's contents in
+ * support of accessibility to disabled users or for other purposes (see Section
+ * 9.8.2, "Alternate Descriptions").
+**/
+ bool has_Contents() const {
+ return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Contents", "", NULL));
+ }
+
+ std::string Contents() const {
+ std::string ret;
+ if (StringFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Contents", "", &ret)) return ret;
+ // TODO(edisonn): warn about missing required field, assert for known good pdfs
+ return "";
+ }
+
+/** (Optional; PDF 1.3; not used in FDF files) An indirect reference to the page
+ * object with which this annotation is associated.
+**/
+ bool has_P() const {
+ return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "P", "", NULL));
+ }
+
+ SkPdfDictionary* P() const {
+ SkPdfDictionary* ret;
+ if (DictionaryFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "P", "", &ret)) return ret;
+ // TODO(edisonn): warn about missing required field, assert for known good pdfs
+ return NULL;
+ }
+
+/** (Required) The annotation rectangle, defining the location of the annotation
+ * on the page in default user space units.
+**/
+ bool has_Rect() const {
+ return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Rect", "", NULL));
+ }
+
+ SkRect* Rect() const {
+ SkRect* ret;
+ if (SkRectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Rect", "", &ret)) return ret;
+ // TODO(edisonn): warn about missing required field, assert for known good pdfs
+ return NULL;
+ }
+
+/** (Optional; PDF 1.4) The annotation name, a text string uniquely identifying
+ * it among all the annotations on its page.
+**/
+ bool has_NM() const {
+ return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "NM", "", NULL));
+ }
+
+/** (Optional; PDF 1.1) The date and time when the annotation was most
+ * recently modified. The preferred format is a date string as described in Sec-
+ * tion 3.8.2, "Dates," but viewer applications should be prepared to accept and
+ * display a string in any format. (See implementation note 59 in Appendix H.)
+**/
+ bool has_M() const {
+ return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "M", "", NULL));
+ }
+
+ bool isMADate() const {
+ SkPdfObject* ret = NULL;
+ if (!ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "M", "", &ret)) return false;
+ return ret->podofo()->GetDataType() == ePdfDataType_Array;
+ }
+
+ SkPdfDate getMAsDate() const {
+ SkPdfDate ret = SkPdfDate();
+ if (DateFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "M", "", &ret)) return ret;
+ // TODO(edisonn): warn about missing required field, assert for known good pdfs
+ return SkPdfDate();
+ }
+
+ bool isMAString() const {
+ SkPdfObject* ret = NULL;
+ if (!ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "M", "", &ret)) return false;
+ return ret->podofo()->GetDataType() == ePdfDataType_String || ret->podofo()->GetDataType() == ePdfDataType_HexString;
+ }
+
+ std::string getMAsString() const {
+ std::string ret = "";
+ if (StringFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "M", "", &ret)) return ret;
+ // TODO(edisonn): warn about missing required field, assert for known good pdfs
+ return "";
+ }
+
+/** (Optional; PDF 1.1) A set of flags specifying various characteristics of the an-
+ * notation (see Section 8.4.2, "Annotation Flags"). Default value: 0.
+**/
+ bool has_F() const {
+ return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "F", "", NULL));
+ }
+
+ long F() const {
+ long ret;
+ if (LongFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "F", "", &ret)) return ret;
+ // TODO(edisonn): warn about missing required field, assert for known good pdfs
+ return 0;
+ }
+
+/** (Optional; PDF 1.2) A border style dictionary specifying the characteristics of
+ * the annotation's border (see Section 8.4.3, "Border Styles"; see also imple-
+ * mentation note 60 in Appendix H).
+ * Note: This entry also specifies the width and dash pattern for the lines drawn by
+ * line, square, circle, and ink annotations. See the note under Border (below) for
+ * additional information.
+**/
+ bool has_BS() const {
+ return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "BS", "", NULL));
+ }
+
+ SkPdfDictionary* BS() const {
+ SkPdfDictionary* ret;
+ if (DictionaryFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "BS", "", &ret)) return ret;
+ // TODO(edisonn): warn about missing required field, assert for known good pdfs
+ return NULL;
+ }
+
+/** (Optional) An array specifying the characteristics of the annotation's border.
+ * The border is specified as a "rounded rectangle."
+ * In PDF 1.0, the array consists of three numbers defining the horizontal cor-
+ * ner radius, vertical corner radius, and border width, all in default user space
+ * units. If the corner radii are 0, the border has square (not rounded) corners;
+ * if the border width is 0, no border is drawn. (See implementation note 61 in
+ * Appendix H.)
+ * In PDF 1.1, the array may have a fourth element, an optional dash array
+ * defining a pattern of dashes and gaps to be used in drawing the border. The
+ * dash array is specified in the same format as in the line dash pattern parame-
+ * ter of the graphics state (see "Line Dash Pattern" on page 155). For example,
+ * a Border value of [0 0 1 [3 2]] specifies a border 1 unit wide, with square
+ * corners, drawn with 3-unit dashes alternating with 2-unit gaps. Note that no
+ * dash phase is specified; the phase is assumed to be 0. (See implementation
+ * note 62 in Appendix H.)
+ * Note: In PDF 1.2 or later, annotations may ignore this entry and use the BS
+ * entry (see above) to specify their border styles instead. In PDF 1.2 and 1.3, only
+ * widget annotations do so; in PDF 1.4, all of the standard annotation types ex-
+ * cept Link (see Table 8.14 on page 499) use BS rather than Border if both are
+ * present. For backward compatibility, however, Border is still supported for all
+ * annotation types.
+ * Default value: [0 0 1].
+**/
+ bool has_Border() const {
+ return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Border", "", NULL));
+ }
+
+ SkPdfArray* Border() const {
+ SkPdfArray* ret;
+ if (ArrayFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Border", "", &ret)) return ret;
+ // TODO(edisonn): warn about missing required field, assert for known good pdfs
+ return NULL;
+ }
+
+/** (Optional; PDF 1.2) An appearance dictionary specifying how the annotation
+ * is presented visually on the page (see Section 8.4.4, "Appearance Streams";
+ * see also implementation note 60 in Appendix H).
+**/
+ bool has_AP() const {
+ return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "AP", "", NULL));
+ }
+
+ SkPdfDictionary* AP() const {
+ SkPdfDictionary* ret;
+ if (DictionaryFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "AP", "", &ret)) return ret;
+ // TODO(edisonn): warn about missing required field, assert for known good pdfs
+ return NULL;
+ }
+
+/** (Required if the appearance dictionary AP contains one or more subdictionaries;
+ * PDF 1.2) The annotation's appearance state, which selects the applicable
+ * appearance stream from an appearance subdictionary (see Section 8.4.4,
+ * "Appearance Streams"; see also implementation note 60 in Appendix H).
+**/
+ bool has_AS() const {
+ return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "AS", "", NULL));
+ }
+
+ std::string AS() const {
+ std::string ret;
+ if (NameFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "AS", "", &ret)) return ret;
+ // TODO(edisonn): warn about missing required field, assert for known good pdfs
+ return "";
+ }
+
+/** (Optional; PDF 1.1) An array of three numbers in the range 0.0 to 1.0, repre-
+ * senting the components of a color in the DeviceRGB color space. This color
+ * will be used for the following purposes:
+ * * The background of the annotation's icon when closed
+ * * The title bar of the annotation's pop-up window
+ * * The border of a link annotation
+**/
+ bool has_C() const {
+ return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "C", "", NULL));
+ }
+
+ SkPdfArray* C() const {
+ SkPdfArray* ret;
+ if (ArrayFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "C", "", &ret)) return ret;
+ // TODO(edisonn): warn about missing required field, assert for known good pdfs
+ return NULL;
+ }
+
+/** (Optional; PDF 1.4) The constant opacity value to be used in painting the
+ * annotation (see Sections 7.1, "Overview of Transparency," and 7.2.6, "Shape
+ * and Opacity Computations"). This value applies to all visible elements of
+ * the annotation in its closed state (including its background and border), but
+ * not to the pop-up window that appears when the annotation is opened. The
+ * specified value is used as the initial alpha constant (both stroking and non-
+ * stroking) for interpreting the annotation's appearance stream, if any (see
+ * Section 8.4.4, "Appearance Streams," and "Constant Shape and Opacity" on
+ * page 444). The implicit blend mode (see Section 7.2.4, "Blend Mode") is
+ * Normal. Default value: 1.0.
+ * Note: If no explicit appearance stream is defined for the annotation, it will be
+ * painted by implementation-dependent means that do not necessarily conform to
+ * the Adobe imaging model; in this case, the effect of this entry is implementation-
+ * dependent as well.
+ * Note: This entry is recognized by all of the standard annotation types listed in
+ * Table 8.14 on page 499 except Link, Movie, Widget, PrinterMark, and TrapNet.
+**/
+ bool has_CA() const {
+ return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "CA", "", NULL));
+ }
+
+ double CA() const {
+ double ret;
+ if (DoubleFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "CA", "", &ret)) return ret;
+ // TODO(edisonn): warn about missing required field, assert for known good pdfs
+ return 0;
+ }
+
+/** (Optional; PDF 1.1) The text label to be displayed in the title bar of the anno-
+ * tation's pop-up window when open and active.
+**/
+ bool has_T() const {
+ return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "T", "", NULL));
+ }
+
+ std::string T() const {
+ std::string ret;
+ if (StringFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "T", "", &ret)) return ret;
+ // TODO(edisonn): warn about missing required field, assert for known good pdfs
+ return "";
+ }
+
+/** (Optional; PDF 1.3) An indirect reference to a pop-up annotation for enter-
+ * ing or editing the text associated with this annotation.
+**/
+ bool has_Popup() const {
+ return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Popup", "", NULL));
+ }
+
+ SkPdfDictionary* Popup() const {
+ SkPdfDictionary* ret;
+ if (DictionaryFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Popup", "", &ret)) return ret;
+ // TODO(edisonn): warn about missing required field, assert for known good pdfs
+ return NULL;
+ }
+
+/** (Optional; PDF 1.1) An action to be performed when the annotation is acti-
+ * vated (see Section 8.5, "Actions").
+ * Note: This entry is not permitted in link annotations if a Dest entry is present
+ * (see "Link Annotations" on page 501). Also note that the A entry in movie anno-
+ * tations has a different meaning (see "Movie Annotations" on page 510).
+**/
+ bool has_A() const {
+ return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "A", "", NULL));
+ }
+
+ SkPdfDictionary* A() const {
+ SkPdfDictionary* ret;
+ if (DictionaryFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "A", "", &ret)) return ret;
+ // TODO(edisonn): warn about missing required field, assert for known good pdfs
+ return NULL;
+ }
+
+/** (Optional; PDF 1.2) An additional-actions dictionary defining the anno-
+ * tation's behavior in response to various trigger events (see Section 8.5.2,
+ * "Trigger Events"). At the time of publication, this entry is used only by wid-
+ * get annotations.
+**/
+ bool has_AA() const {
+ return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "AA", "", NULL));
+ }
+
+ SkPdfDictionary* AA() const {
+ SkPdfDictionary* ret;
+ if (DictionaryFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "AA", "", &ret)) return ret;
+ // TODO(edisonn): warn about missing required field, assert for known good pdfs
+ return NULL;
+ }
+
+/** (Required if the annotation is a structural content item; PDF 1.3) The integer
+ * key of the annotation's entry in the structural parent tree (see "Finding Struc-
+ * ture Elements from Content Items" on page 600).
+**/
+ bool has_StructParent() const {
+ return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "StructParent", "", NULL));
+ }
+
+ long StructParent() const {
+ long ret;
+ if (LongFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "StructParent", "", &ret)) return ret;
+ // TODO(edisonn): warn about missing required field, assert for known good pdfs
+ return 0;
+ }
+
+};
+
+#endif // __DEFINED__SkPdfAnnotationDictionary

Powered by Google App Engine
This is Rietveld 408576698