1 // Copyright 2017 The PDFium Authors 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com 6 7 #include "fxjs/xfa/cjx_manifest.h" 8 9 #include <vector> 10 11 #include "fxjs/cfx_v8.h" 12 #include "fxjs/js_resources.h" 13 #include "fxjs/xfa/cfxjse_value.h" 14 #include "v8/include/v8-primitive.h" 15 #include "xfa/fxfa/parser/cxfa_manifest.h" 16 17 const CJX_MethodSpec CJX_Manifest::MethodSpecs[] = { 18 {"evaluate", evaluate_static}}; 19 CJX_Manifest(CXFA_Manifest * manifest)20CJX_Manifest::CJX_Manifest(CXFA_Manifest* manifest) : CJX_Node(manifest) { 21 DefineMethods(MethodSpecs); 22 } 23 24 CJX_Manifest::~CJX_Manifest() = default; 25 DynamicTypeIs(TypeTag eType) const26bool CJX_Manifest::DynamicTypeIs(TypeTag eType) const { 27 return eType == static_type__ || ParentType__::DynamicTypeIs(eType); 28 } 29 evaluate(CFXJSE_Engine * runtime,const std::vector<v8::Local<v8::Value>> & params)30CJS_Result CJX_Manifest::evaluate( 31 CFXJSE_Engine* runtime, 32 const std::vector<v8::Local<v8::Value>>& params) { 33 if (!params.empty()) 34 return CJS_Result::Failure(JSMessage::kParamError); 35 36 return CJS_Result::Success( 37 runtime->NewBoolean(GetXFANode()->IsWidgetReady())); 38 } 39