summaryrefslogtreecommitdiff
path: root/fxjs/xfa/cjx_xfa.cpp
diff options
context:
space:
mode:
authorDan Sinclair <dsinclair@chromium.org>2017-12-14 19:45:53 +0000
committerChromium commit bot <commit-bot@chromium.org>2017-12-14 19:45:53 +0000
commitfe9d640ea90cfccac39b6475dad9df62072542fc (patch)
tree653ac8e2ad76ae2fc4030b63d7625bd40ca07875 /fxjs/xfa/cjx_xfa.cpp
parent604f5b9e042267cffd8949f309a86c370a3d01d4 (diff)
downloadpdfium-fe9d640ea90cfccac39b6475dad9df62072542fc.tar.xz
Create classes for XFA JS objects
This CL creates classes for the various XFA JS objects. The method calls from xfa_basic_data_element_script have been modified to call these methods instead of methods in CJX_Object. Change-Id: Idb2de38656f7e8edc559d44921eba25073e6c806 Reviewed-on: https://pdfium-review.googlesource.com/21110 Commit-Queue: dsinclair <dsinclair@chromium.org> Reviewed-by: Henrique Nakashima <hnakashima@chromium.org>
Diffstat (limited to 'fxjs/xfa/cjx_xfa.cpp')
-rw-r--r--fxjs/xfa/cjx_xfa.cpp39
1 files changed, 39 insertions, 0 deletions
diff --git a/fxjs/xfa/cjx_xfa.cpp b/fxjs/xfa/cjx_xfa.cpp
new file mode 100644
index 0000000000..bc0d7f118e
--- /dev/null
+++ b/fxjs/xfa/cjx_xfa.cpp
@@ -0,0 +1,39 @@
+// Copyright 2017 PDFium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
+
+#include "fxjs/xfa/cjx_xfa.h"
+
+#include "fxjs/cfxjse_engine.h"
+#include "fxjs/cfxjse_value.h"
+#include "xfa/fxfa/parser/cxfa_document.h"
+#include "xfa/fxfa/parser/cxfa_xfa.h"
+
+CJX_Xfa::CJX_Xfa(CXFA_Xfa* node) : CJX_Model(node) {}
+
+CJX_Xfa::~CJX_Xfa() = default;
+
+void CJX_Xfa::thisValue(CFXJSE_Value* pValue,
+ bool bSetting,
+ XFA_Attribute eAttribute) {
+ if (bSetting)
+ return;
+
+ CXFA_Object* pThis = GetDocument()->GetScriptContext()->GetThisObject();
+ ASSERT(pThis);
+ pValue->Assign(GetDocument()->GetScriptContext()->GetJSValueFromMap(pThis));
+}
+
+void CJX_Xfa::timeStamp(CFXJSE_Value* pValue,
+ bool bSetting,
+ XFA_Attribute eAttribute) {
+ Script_Attribute_String(pValue, bSetting, eAttribute);
+}
+
+void CJX_Xfa::uuid(CFXJSE_Value* pValue,
+ bool bSetting,
+ XFA_Attribute eAttribute) {
+ Script_Attribute_String(pValue, bSetting, eAttribute);
+}