7#include "fxjs/xfa/cjx_exclgroup.h"
12#include "fxjs/js_resources.h"
13#include "fxjs/xfa/cfxjse_engine.h"
14#include "third_party/base/containers/span.h"
15#include "v8/include/v8-object.h"
16#include "v8/include/v8-primitive.h"
17#include "xfa/fxfa/cxfa_eventparam.h"
18#include "xfa/fxfa/cxfa_ffnotify.h"
19#include "xfa/fxfa/fxfa.h"
20#include "xfa/fxfa/parser/cxfa_document.h"
21#include "xfa/fxfa/parser/cxfa_exclgroup.h"
24 {
"execCalculate", execCalculate_static},
25 {
"execEvent", execEvent_static},
26 {
"execInitialize", execInitialize_static},
27 {
"execValidate", execValidate_static},
28 {
"selectedMember", selectedMember_static}};
30CJX_ExclGroup::CJX_ExclGroup(CXFA_ExclGroup* group) :
CJX_Node(group) {
41 pdfium::span<v8::Local<v8::Value>> params) {
42 if (params.size() != 1)
45 execSingleEventByName(runtime->ToWideString(params[0]).AsStringView(),
46 XFA_Element::ExclGroup);
52 pdfium::span<v8::Local<v8::Value>> params) {
65 pdfium::span<v8::Local<v8::Value>> params) {
78 pdfium::span<v8::Local<v8::Value>> params) {
94 pdfium::span<v8::Local<v8::Value>> params) {
103 if (params.empty()) {
106 pReturnNode = node->SetSelectedMember(
107 runtime->ToWideString(params[0]).AsStringView());
115void CJX_ExclGroup::defaultValue(
v8::Isolate* pIsolate,
116 v8::Local<v8::Value>* pValue,
125 fxv8::ReentrantToWideStringHelper(pIsolate, *pValue).AsStringView()
,
133 *pValue = fxv8::NewNullHelper(pIsolate);
136 *pValue = fxv8::NewStringHelper(pIsolate, wsValue
.ToUTF8().AsStringView());
139void CJX_ExclGroup::rawValue(
v8::Isolate* pIsolate,
140 v8::Local<v8::Value>* pValue,
143 defaultValue(pIsolate, pValue, bSetting, eAttribute);
146void CJX_ExclGroup::transient(
v8::Isolate* pIsolate,
147 v8::Local<v8::Value>* pValue,
151void CJX_ExclGroup::errorText(
v8::Isolate* pIsolate,
152 v8::Local<v8::Value>* pValue,
friend class EventParamScope
static CJS_Result Success()
static CJS_Result Failure(JSMessage id)
~CJX_ExclGroup() override
bool DynamicTypeIs(TypeTag eType) const override
bool DynamicTypeIs(TypeTag eType) const override
void DefineMethods(pdfium::span< const CJX_MethodSpec > methods)
WideString GetContent(bool bScriptModify) const
void ThrowInvalidPropertyException(v8::Isolate *pIsolate) const
CXFA_Document * GetDocument() const
CXFA_Node * GetXFANode() const
XFA_EventError ExecEventByDeepFirst(CXFA_Node *pFormNode, XFA_EVENTTYPE eEventType, bool bIsFormReady, bool bRecursive)
void SetSelectedMemberByValue(WideStringView wsValue, bool bNotify, bool bScriptModify, bool bSyncData)
CXFA_Node * GetSelectedMember()
bool IsWidgetReady() const
ByteString ToUTF8() const