summaryrefslogtreecommitdiff
path: root/fpdfsdk/javascript/cjs_position.cpp
diff options
context:
space:
mode:
authorDan Sinclair <dsinclair@chromium.org>2017-10-26 12:21:28 -0400
committerChromium commit bot <commit-bot@chromium.org>2017-10-26 18:42:28 +0000
commit89d26c8ccf336b4f46da2de140313918f2a4ffdf (patch)
tree907130e47e510c7158735c41904bfba21de3f788 /fpdfsdk/javascript/cjs_position.cpp
parent3a1ba8efdbfffad723646dd878e6ca511f9f75bd (diff)
downloadpdfium-89d26c8ccf336b4f46da2de140313918f2a4ffdf.tar.xz
Remove JS macros
This CL removes the JS macros and inlines the code directly into the requisite classes. Change-Id: I514ca025be42cd46b041b4af271f7b1d1067ab42 Reviewed-on: https://pdfium-review.googlesource.com/16890 Reviewed-by: Tom Sepez <tsepez@chromium.org> Commit-Queue: dsinclair <dsinclair@chromium.org>
Diffstat (limited to 'fpdfsdk/javascript/cjs_position.cpp')
-rw-r--r--fpdfsdk/javascript/cjs_position.cpp20
1 files changed, 19 insertions, 1 deletions
diff --git a/fpdfsdk/javascript/cjs_position.cpp b/fpdfsdk/javascript/cjs_position.cpp
index 9180ff54dd..5c33546896 100644
--- a/fpdfsdk/javascript/cjs_position.cpp
+++ b/fpdfsdk/javascript/cjs_position.cpp
@@ -16,4 +16,22 @@ JSConstSpec CJS_Position::ConstSpecs[] = {
{"overlay", JSConstSpec::Number, 6, 0},
{0, JSConstSpec::Number, 0, 0}};
-IMPLEMENT_JS_CLASS_CONST(CJS_Position, position)
+const char* CJS_Position::g_pClassName = "position";
+int CJS_Position::g_nObjDefnID = -1;
+
+void CJS_Position::DefineConsts(CFXJS_Engine* pEngine) {
+ for (size_t i = 0; i < FX_ArraySize(ConstSpecs) - 1; ++i) {
+ pEngine->DefineObjConst(
+ g_nObjDefnID, ConstSpecs[i].pName,
+ ConstSpecs[i].eType == JSConstSpec::Number
+ ? pEngine->NewNumber(ConstSpecs[i].number).As<v8::Value>()
+ : pEngine->NewString(ConstSpecs[i].pStr).As<v8::Value>());
+ }
+}
+
+void CJS_Position::DefineJSObjects(CFXJS_Engine* pEngine,
+ FXJSOBJTYPE eObjType) {
+ g_nObjDefnID = pEngine->DefineObj(CJS_Position::g_pClassName, eObjType,
+ nullptr, nullptr);
+ DefineConsts(pEngine);
+}