From fe9d640ea90cfccac39b6475dad9df62072542fc Mon Sep 17 00:00:00 2001 From: Dan Sinclair Date: Thu, 14 Dec 2017 19:45:53 +0000 Subject: 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 Reviewed-by: Henrique Nakashima --- fxjs/xfa/cjx_exclgroup.cpp | 182 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 182 insertions(+) (limited to 'fxjs/xfa/cjx_exclgroup.cpp') diff --git a/fxjs/xfa/cjx_exclgroup.cpp b/fxjs/xfa/cjx_exclgroup.cpp index 1041e3ffbb..fac58ff054 100644 --- a/fxjs/xfa/cjx_exclgroup.cpp +++ b/fxjs/xfa/cjx_exclgroup.cpp @@ -107,3 +107,185 @@ CJS_Return CJX_ExclGroup::selectedMember( return CJS_Return(value->DirectGetValue().Get(runtime->GetIsolate())); } + +void CJX_ExclGroup::defaultValue(CFXJSE_Value* pValue, + bool bSetting, + XFA_Attribute eAttribute) { + CXFA_WidgetData* pWidgetData = GetXFANode()->GetWidgetData(); + if (!pWidgetData) + return; + + if (bSetting) { + pWidgetData->SetSelectedMemberByValue(pValue->ToWideString().AsStringView(), + true, true, true); + return; + } + + WideString wsValue = GetContent(true); + XFA_VERSION curVersion = GetDocument()->GetCurVersionMode(); + if (wsValue.IsEmpty() && curVersion >= XFA_VERSION_300) { + pValue->SetNull(); + return; + } + pValue->SetString(wsValue.UTF8Encode().AsStringView()); +} + +void CJX_ExclGroup::rawValue(CFXJSE_Value* pValue, + bool bSetting, + XFA_Attribute eAttribute) { + defaultValue(pValue, bSetting, eAttribute); +} + +void CJX_ExclGroup::transient(CFXJSE_Value* pValue, + bool bSetting, + XFA_Attribute eAttribute) {} + +void CJX_ExclGroup::access(CFXJSE_Value* pValue, + bool bSetting, + XFA_Attribute eAttribute) { + Script_Attribute_String(pValue, bSetting, eAttribute); +} + +void CJX_ExclGroup::accessKey(CFXJSE_Value* pValue, + bool bSetting, + XFA_Attribute eAttribute) { + Script_Attribute_String(pValue, bSetting, eAttribute); +} + +void CJX_ExclGroup::anchorType(CFXJSE_Value* pValue, + bool bSetting, + XFA_Attribute eAttribute) { + Script_Attribute_String(pValue, bSetting, eAttribute); +} + +void CJX_ExclGroup::borderColor(CFXJSE_Value* pValue, + bool bSetting, + XFA_Attribute eAttribute) { + Script_Som_BorderColor(pValue, bSetting, eAttribute); +} + +void CJX_ExclGroup::borderWidth(CFXJSE_Value* pValue, + bool bSetting, + XFA_Attribute eAttribute) { + Script_Som_BorderWidth(pValue, bSetting, eAttribute); +} + +void CJX_ExclGroup::colSpan(CFXJSE_Value* pValue, + bool bSetting, + XFA_Attribute eAttribute) { + Script_Attribute_String(pValue, bSetting, eAttribute); +} + +void CJX_ExclGroup::fillColor(CFXJSE_Value* pValue, + bool bSetting, + XFA_Attribute eAttribute) { + Script_Som_FillColor(pValue, bSetting, eAttribute); +} + +void CJX_ExclGroup::h(CFXJSE_Value* pValue, + bool bSetting, + XFA_Attribute eAttribute) { + Script_Attribute_String(pValue, bSetting, eAttribute); +} + +void CJX_ExclGroup::hAlign(CFXJSE_Value* pValue, + bool bSetting, + XFA_Attribute eAttribute) { + Script_Attribute_String(pValue, bSetting, eAttribute); +} + +void CJX_ExclGroup::layout(CFXJSE_Value* pValue, + bool bSetting, + XFA_Attribute eAttribute) { + Script_Attribute_String(pValue, bSetting, eAttribute); +} + +void CJX_ExclGroup::mandatory(CFXJSE_Value* pValue, + bool bSetting, + XFA_Attribute eAttribute) { + Script_Som_Mandatory(pValue, bSetting, eAttribute); +} + +void CJX_ExclGroup::mandatoryMessage(CFXJSE_Value* pValue, + bool bSetting, + XFA_Attribute eAttribute) { + Script_Som_MandatoryMessage(pValue, bSetting, eAttribute); +} + +void CJX_ExclGroup::maxH(CFXJSE_Value* pValue, + bool bSetting, + XFA_Attribute eAttribute) { + Script_Attribute_String(pValue, bSetting, eAttribute); +} + +void CJX_ExclGroup::maxW(CFXJSE_Value* pValue, + bool bSetting, + XFA_Attribute eAttribute) { + Script_Attribute_String(pValue, bSetting, eAttribute); +} + +void CJX_ExclGroup::minH(CFXJSE_Value* pValue, + bool bSetting, + XFA_Attribute eAttribute) { + Script_Attribute_String(pValue, bSetting, eAttribute); +} + +void CJX_ExclGroup::minW(CFXJSE_Value* pValue, + bool bSetting, + XFA_Attribute eAttribute) { + Script_Attribute_String(pValue, bSetting, eAttribute); +} + +void CJX_ExclGroup::presence(CFXJSE_Value* pValue, + bool bSetting, + XFA_Attribute eAttribute) { + Script_Attribute_String(pValue, bSetting, eAttribute); +} + +void CJX_ExclGroup::relevant(CFXJSE_Value* pValue, + bool bSetting, + XFA_Attribute eAttribute) { + Script_Attribute_String(pValue, bSetting, eAttribute); +} + +void CJX_ExclGroup::use(CFXJSE_Value* pValue, + bool bSetting, + XFA_Attribute eAttribute) { + Script_Attribute_String(pValue, bSetting, eAttribute); +} + +void CJX_ExclGroup::usehref(CFXJSE_Value* pValue, + bool bSetting, + XFA_Attribute eAttribute) { + Script_Attribute_String(pValue, bSetting, eAttribute); +} + +void CJX_ExclGroup::validationMessage(CFXJSE_Value* pValue, + bool bSetting, + XFA_Attribute eAttribute) { + Script_Som_ValidationMessage(pValue, bSetting, eAttribute); +} + +void CJX_ExclGroup::vAlign(CFXJSE_Value* pValue, + bool bSetting, + XFA_Attribute eAttribute) { + Script_Attribute_String(pValue, bSetting, eAttribute); +} + +void CJX_ExclGroup::w(CFXJSE_Value* pValue, + bool bSetting, + XFA_Attribute eAttribute) { + Script_Attribute_String(pValue, bSetting, eAttribute); +} + +void CJX_ExclGroup::x(CFXJSE_Value* pValue, + bool bSetting, + XFA_Attribute eAttribute) { + Script_Attribute_String(pValue, bSetting, eAttribute); +} + +void CJX_ExclGroup::y(CFXJSE_Value* pValue, + bool bSetting, + XFA_Attribute eAttribute) { + Script_Attribute_String(pValue, bSetting, eAttribute); +} -- cgit v1.2.3