diff options
author | tonikitoo <tonikitoo@igalia.com> | 2016-08-18 20:10:17 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-08-18 20:10:17 -0700 |
commit | 618cb1f3e561b5d2a1dea9ec4653804f0da7267c (patch) | |
tree | a17067c25b751d6dfba46ab38114bd23a10ca2ff /fpdfsdk/javascript/cjs_runtime.cpp | |
parent | 7996fe888cb98597cd1608af05fb59f45c837fc6 (diff) | |
download | pdfium-618cb1f3e561b5d2a1dea9ec4653804f0da7267c.tar.xz |
Add initial Document::getAnnot supportchromium/2833
CL implements the first step in order to support
Annotations manipulation in PDFium: Document::getAnnot.
The method takes two arguments, an integer (page number)
and a string (annotation name).
When called, it iterates over the annotations on
the given page number, searching for the one whose name
matches the string in the second parameter.
If found, then an Annot instance (see Annot.cpp/g added by this
CL), is bound to a Javascript object and returned.
With the use cases described in bug [1] as an initial test case,
CL adds support to the following Annotation object properties:
- hidden
- name
- type
Idea is to keep evolving the implementation with more methods
and properties in follow up CLs.
[1] https://bugs.chromium.org/p/pdfium/issues/detail?id=492
BUG=pdfium:492
Review-Url: https://codereview.chromium.org/2260663002
Diffstat (limited to 'fpdfsdk/javascript/cjs_runtime.cpp')
-rw-r--r-- | fpdfsdk/javascript/cjs_runtime.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/fpdfsdk/javascript/cjs_runtime.cpp b/fpdfsdk/javascript/cjs_runtime.cpp index 7ea9b158a5..b12a3f5eeb 100644 --- a/fpdfsdk/javascript/cjs_runtime.cpp +++ b/fpdfsdk/javascript/cjs_runtime.cpp @@ -9,6 +9,7 @@ #include <algorithm> #include "fpdfsdk/include/fsdk_mgr.h" +#include "fpdfsdk/javascript/Annot.h" #include "fpdfsdk/javascript/Consts.h" #include "fpdfsdk/javascript/Document.h" #include "fpdfsdk/javascript/Field.h" @@ -175,9 +176,10 @@ void CJS_Runtime::DefineJSObjects() { CJS_GlobalConsts::DefineJSObjects(this); CJS_GlobalArrays::DefineJSObjects(this); - // ObjDefIDs 21 - 22. + // ObjDefIDs 21 - 23. CJS_TimerObj::DefineJSObjects(this, FXJSOBJTYPE_DYNAMIC); CJS_PrintParamsObj::DefineJSObjects(this, FXJSOBJTYPE_DYNAMIC); + CJS_Annot::DefineJSObjects(this, FXJSOBJTYPE_DYNAMIC); } IJS_Context* CJS_Runtime::NewContext() { |