summaryrefslogtreecommitdiff
path: root/fpdfsdk/javascript/cjs_display.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_display.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_display.cpp')
-rw-r--r--fpdfsdk/javascript/cjs_display.cpp19
1 files changed, 18 insertions, 1 deletions
diff --git a/fpdfsdk/javascript/cjs_display.cpp b/fpdfsdk/javascript/cjs_display.cpp
index 4b6000f568..df05ed2671 100644
--- a/fpdfsdk/javascript/cjs_display.cpp
+++ b/fpdfsdk/javascript/cjs_display.cpp
@@ -12,4 +12,21 @@ JSConstSpec CJS_Display::ConstSpecs[] = {{"visible", JSConstSpec::Number, 0, 0},
{"noView", JSConstSpec::Number, 3, 0},
{0, JSConstSpec::Number, 0, 0}};
-IMPLEMENT_JS_CLASS_CONST(CJS_Display, display)
+const char* CJS_Display::g_pClassName = "display";
+int CJS_Display::g_nObjDefnID = -1;
+
+void CJS_Display::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_Display::DefineJSObjects(CFXJS_Engine* pEngine, FXJSOBJTYPE eObjType) {
+ g_nObjDefnID =
+ pEngine->DefineObj(CJS_Display::g_pClassName, eObjType, nullptr, nullptr);
+ DefineConsts(pEngine);
+}