OLD | NEW |
1 // Copyright 2014 PDFium Authors. All rights reserved. | 1 // Copyright 2014 PDFium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com | 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com |
6 | 6 |
7 #include "xfa/fxfa/parser/xfa_script_imp.h" | 7 #include "xfa/fxfa/parser/xfa_script_imp.h" |
8 | 8 |
9 #include "core/fxcrt/include/fx_ext.h" | 9 #include "core/fxcrt/include/fx_ext.h" |
| 10 #include "xfa/fxfa/app/xfa_ffnotify.h" |
10 #include "xfa/fxfa/fm2js/xfa_fm2jsapi.h" | 11 #include "xfa/fxfa/fm2js/xfa_fm2jsapi.h" |
11 #include "xfa/fxfa/parser/xfa_docdata.h" | 12 #include "xfa/fxfa/parser/xfa_docdata.h" |
12 #include "xfa/fxfa/parser/xfa_doclayout.h" | 13 #include "xfa/fxfa/parser/xfa_doclayout.h" |
13 #include "xfa/fxfa/parser/xfa_document.h" | 14 #include "xfa/fxfa/parser/xfa_document.h" |
14 #include "xfa/fxfa/parser/xfa_localemgr.h" | 15 #include "xfa/fxfa/parser/xfa_localemgr.h" |
15 #include "xfa/fxfa/parser/xfa_object.h" | 16 #include "xfa/fxfa/parser/xfa_object.h" |
16 #include "xfa/fxfa/parser/xfa_parser.h" | 17 #include "xfa/fxfa/parser/xfa_parser.h" |
17 #include "xfa/fxfa/parser/xfa_script.h" | 18 #include "xfa/fxfa/parser/xfa_script.h" |
18 #include "xfa/fxfa/parser/xfa_script_nodehelper.h" | 19 #include "xfa/fxfa/parser/xfa_script_nodehelper.h" |
19 #include "xfa/fxfa/parser/xfa_script_resolveprocessor.h" | 20 #include "xfa/fxfa/parser/xfa_script_resolveprocessor.h" |
(...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
126 if (lpScriptContext->QueryNodeByFlag(pRefNode, wsPropName, hValue, dwFlag, | 127 if (lpScriptContext->QueryNodeByFlag(pRefNode, wsPropName, hValue, dwFlag, |
127 TRUE)) { | 128 TRUE)) { |
128 return; | 129 return; |
129 } | 130 } |
130 if (lpOrginalNode->GetObjectType() == XFA_OBJECTTYPE_VariablesThis) { | 131 if (lpOrginalNode->GetObjectType() == XFA_OBJECTTYPE_VariablesThis) { |
131 if (FXJSE_Value_IsUndefined(hValue)) { | 132 if (FXJSE_Value_IsUndefined(hValue)) { |
132 FXJSE_Value_SetObjectOwnProp(hObject, szPropName, hValue); | 133 FXJSE_Value_SetObjectOwnProp(hObject, szPropName, hValue); |
133 return; | 134 return; |
134 } | 135 } |
135 } | 136 } |
136 IXFA_Notify* pNotify = pDoc->GetNotify(); | 137 CXFA_FFNotify* pNotify = pDoc->GetNotify(); |
137 if (!pNotify) { | 138 if (!pNotify) { |
138 return; | 139 return; |
139 } | 140 } |
140 pNotify->GetDocProvider()->SetGlobalProperty(pNotify->GetHDOC(), szPropName, | 141 pNotify->GetDocProvider()->SetGlobalProperty(pNotify->GetHDOC(), szPropName, |
141 hValue); | 142 hValue); |
142 } | 143 } |
143 FX_BOOL CXFA_ScriptContext::QueryNodeByFlag(CXFA_Node* refNode, | 144 FX_BOOL CXFA_ScriptContext::QueryNodeByFlag(CXFA_Node* refNode, |
144 const CFX_WideStringC& propname, | 145 const CFX_WideStringC& propname, |
145 FXJSE_HVALUE hValue, | 146 FXJSE_HVALUE hValue, |
146 uint32_t dwFlag, | 147 uint32_t dwFlag, |
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
206 FALSE)) { | 207 FALSE)) { |
207 return; | 208 return; |
208 } | 209 } |
209 CXFA_Object* pScriptObject = | 210 CXFA_Object* pScriptObject = |
210 lpScriptContext->GetVariablesThis(pOrginalObject, TRUE); | 211 lpScriptContext->GetVariablesThis(pOrginalObject, TRUE); |
211 if (pScriptObject && | 212 if (pScriptObject && |
212 lpScriptContext->QueryVariableHValue(pScriptObject->AsNode(), szPropName, | 213 lpScriptContext->QueryVariableHValue(pScriptObject->AsNode(), szPropName, |
213 hValue, TRUE)) { | 214 hValue, TRUE)) { |
214 return; | 215 return; |
215 } | 216 } |
216 IXFA_Notify* pNotify = pDoc->GetNotify(); | 217 CXFA_FFNotify* pNotify = pDoc->GetNotify(); |
217 if (!pNotify) { | 218 if (!pNotify) { |
218 return; | 219 return; |
219 } | 220 } |
220 pNotify->GetDocProvider()->GetGlobalProperty(pNotify->GetHDOC(), szPropName, | 221 pNotify->GetDocProvider()->GetGlobalProperty(pNotify->GetHDOC(), szPropName, |
221 hValue); | 222 hValue); |
222 } | 223 } |
223 void CXFA_ScriptContext::NormalPropertyGetter(FXJSE_HOBJECT hObject, | 224 void CXFA_ScriptContext::NormalPropertyGetter(FXJSE_HOBJECT hObject, |
224 const CFX_ByteStringC& szPropName, | 225 const CFX_ByteStringC& szPropName, |
225 FXJSE_HVALUE hValue) { | 226 FXJSE_HVALUE hValue) { |
226 CXFA_Object* pOrginalObject = | 227 CXFA_Object* pOrginalObject = |
(...skipping 543 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
770 } | 771 } |
771 } | 772 } |
772 void CXFA_ScriptContext::AddNodesOfRunScript(CXFA_Node* pNode) { | 773 void CXFA_ScriptContext::AddNodesOfRunScript(CXFA_Node* pNode) { |
773 if (!m_pScriptNodeArray) { | 774 if (!m_pScriptNodeArray) { |
774 return; | 775 return; |
775 } | 776 } |
776 if (m_pScriptNodeArray->Find(pNode) == -1) { | 777 if (m_pScriptNodeArray->Find(pNode) == -1) { |
777 m_pScriptNodeArray->Add(pNode); | 778 m_pScriptNodeArray->Add(pNode); |
778 } | 779 } |
779 } | 780 } |
780 IXFA_ScriptContext* XFA_ScriptContext_Create(CXFA_Document* pDocument) { | |
781 return new CXFA_ScriptContext(pDocument); | |
782 } | |
OLD | NEW |