| 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/src/foxitlib.h" | 7 #include "xfa/src/foxitlib.h" |
| 8 #include "xfa/src/fxfa/src/common/xfa_utils.h" | 8 #include "xfa/src/fxfa/src/common/xfa_utils.h" |
| 9 #include "xfa/src/fxfa/src/common/xfa_object.h" | 9 #include "xfa/src/fxfa/src/common/xfa_object.h" |
| 10 #include "xfa/src/fxfa/src/common/xfa_document.h" | 10 #include "xfa/src/fxfa/src/common/xfa_document.h" |
| (...skipping 287 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 298 return; | 298 return; |
| 299 } | 299 } |
| 300 IXFA_Notify* pNotify = m_pDocument->GetParser()->GetNotify(); | 300 IXFA_Notify* pNotify = m_pDocument->GetParser()->GetNotify(); |
| 301 if (!pNotify) { | 301 if (!pNotify) { |
| 302 return; | 302 return; |
| 303 } | 303 } |
| 304 CXFA_Node* pNode = NULL; | 304 CXFA_Node* pNode = NULL; |
| 305 if (iLength >= 1) { | 305 if (iLength >= 1) { |
| 306 FXJSE_HVALUE hValue = pArguments->GetValue(0); | 306 FXJSE_HVALUE hValue = pArguments->GetValue(0); |
| 307 if (FXJSE_Value_IsObject(hValue)) { | 307 if (FXJSE_Value_IsObject(hValue)) { |
| 308 pNode = (CXFA_Node*)FXJSE_Value_ToObject(hValue, NULL); | 308 pNode = static_cast<CXFA_Node*>(FXJSE_Value_ToObject(hValue, nullptr)); |
| 309 } else if (FXJSE_Value_IsUTF8String(hValue)) { | 309 } else if (FXJSE_Value_IsUTF8String(hValue)) { |
| 310 CFX_ByteString bsString; | 310 CFX_ByteString bsString; |
| 311 FXJSE_Value_ToUTF8String(hValue, bsString); | 311 FXJSE_Value_ToUTF8String(hValue, bsString); |
| 312 CFX_WideString wsExpression = | 312 CFX_WideString wsExpression = |
| 313 CFX_WideString::FromUTF8(bsString, bsString.GetLength()); | 313 CFX_WideString::FromUTF8(bsString, bsString.GetLength()); |
| 314 IXFA_ScriptContext* pScriptContext = m_pDocument->GetScriptContext(); | 314 IXFA_ScriptContext* pScriptContext = m_pDocument->GetScriptContext(); |
| 315 if (!pScriptContext) { | 315 if (!pScriptContext) { |
| 316 FXJSE_Value_Release(hValue); | 316 FXJSE_Value_Release(hValue); |
| 317 return; | 317 return; |
| 318 } | 318 } |
| 319 CXFA_Object* pObject = pScriptContext->GetThisObject(); | 319 CXFA_Object* pObject = pScriptContext->GetThisObject(); |
| 320 if (!pObject) { | 320 if (!pObject) { |
| 321 FXJSE_Value_Release(hValue); | 321 FXJSE_Value_Release(hValue); |
| 322 return; | 322 return; |
| 323 } | 323 } |
| 324 FX_DWORD dwFlag = XFA_RESOLVENODE_Children | XFA_RESOLVENODE_Parent | | 324 FX_DWORD dwFlag = XFA_RESOLVENODE_Children | XFA_RESOLVENODE_Parent | |
| 325 XFA_RESOLVENODE_Siblings; | 325 XFA_RESOLVENODE_Siblings; |
| 326 XFA_RESOLVENODE_RS resoveNodeRS; | 326 XFA_RESOLVENODE_RS resoveNodeRS; |
| 327 int32_t iRet = pScriptContext->ResolveObjects(pObject, wsExpression, | 327 int32_t iRet = pScriptContext->ResolveObjects(pObject, wsExpression, |
| 328 resoveNodeRS, dwFlag); | 328 resoveNodeRS, dwFlag); |
| 329 if (iRet < 1 || !resoveNodeRS.nodes[0]->IsNode()) { | 329 if (iRet < 1 || !resoveNodeRS.nodes[0]->IsNode()) { |
| 330 FXJSE_Value_Release(hValue); | 330 FXJSE_Value_Release(hValue); |
| 331 return; | 331 return; |
| 332 } | 332 } |
| 333 pNode = (CXFA_Node*)resoveNodeRS.nodes[0]; | 333 pNode = resoveNodeRS.nodes[0]->AsNode(); |
| 334 } | 334 } |
| 335 FXJSE_Value_Release(hValue); | 335 FXJSE_Value_Release(hValue); |
| 336 } | 336 } |
| 337 IXFA_DocLayout* pDocLayout = m_pDocument->GetDocLayout(); | 337 IXFA_DocLayout* pDocLayout = m_pDocument->GetDocLayout(); |
| 338 if (!pDocLayout) { | 338 if (!pDocLayout) { |
| 339 return; | 339 return; |
| 340 } | 340 } |
| 341 IXFA_Widget* hWidget = pNotify->GetHWidget(pDocLayout->GetLayoutItem(pNode)); | 341 IXFA_Widget* hWidget = pNotify->GetHWidget(pDocLayout->GetLayoutItem(pNode)); |
| 342 if (!hWidget) { | 342 if (!hWidget) { |
| 343 return; | 343 return; |
| (...skipping 112 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 456 return; | 456 return; |
| 457 } | 457 } |
| 458 FX_DWORD dwFlag = XFA_RESOLVENODE_Children | XFA_RESOLVENODE_Parent | | 458 FX_DWORD dwFlag = XFA_RESOLVENODE_Children | XFA_RESOLVENODE_Parent | |
| 459 XFA_RESOLVENODE_Siblings; | 459 XFA_RESOLVENODE_Siblings; |
| 460 XFA_RESOLVENODE_RS resoveNodeRS; | 460 XFA_RESOLVENODE_RS resoveNodeRS; |
| 461 int32_t iRet = | 461 int32_t iRet = |
| 462 pScriptContext->ResolveObjects(pObject, wsName, resoveNodeRS, dwFlag); | 462 pScriptContext->ResolveObjects(pObject, wsName, resoveNodeRS, dwFlag); |
| 463 if (iRet < 1 || !resoveNodeRS.nodes[0]->IsNode()) { | 463 if (iRet < 1 || !resoveNodeRS.nodes[0]->IsNode()) { |
| 464 continue; | 464 continue; |
| 465 } | 465 } |
| 466 pNode = (CXFA_Node*)resoveNodeRS.nodes[0]; | 466 pNode = resoveNodeRS.nodes[0]->AsNode(); |
| 467 pNotify->ResetData(pNode->GetWidgetData()); | 467 pNotify->ResetData(pNode->GetWidgetData()); |
| 468 } | 468 } |
| 469 if (!pNode) { | 469 if (!pNode) { |
| 470 pNotify->ResetData(); | 470 pNotify->ResetData(); |
| 471 } | 471 } |
| 472 } | 472 } |
| 473 void CScript_HostPseudoModel::Script_HostPseudoModel_Beep( | 473 void CScript_HostPseudoModel::Script_HostPseudoModel_Beep( |
| 474 CFXJSE_Arguments* pArguments) { | 474 CFXJSE_Arguments* pArguments) { |
| 475 if (!m_pDocument->GetScriptContext()->IsRunAtClient()) { | 475 if (!m_pDocument->GetScriptContext()->IsRunAtClient()) { |
| 476 return; | 476 return; |
| (...skipping 24 matching lines...) Expand all Loading... |
| 501 return; | 501 return; |
| 502 } | 502 } |
| 503 IXFA_Notify* pNotify = m_pDocument->GetParser()->GetNotify(); | 503 IXFA_Notify* pNotify = m_pDocument->GetParser()->GetNotify(); |
| 504 if (!pNotify) { | 504 if (!pNotify) { |
| 505 return; | 505 return; |
| 506 } | 506 } |
| 507 CXFA_Node* pNode = NULL; | 507 CXFA_Node* pNode = NULL; |
| 508 if (iLength >= 1) { | 508 if (iLength >= 1) { |
| 509 FXJSE_HVALUE hValue = pArguments->GetValue(0); | 509 FXJSE_HVALUE hValue = pArguments->GetValue(0); |
| 510 if (FXJSE_Value_IsObject(hValue)) { | 510 if (FXJSE_Value_IsObject(hValue)) { |
| 511 pNode = (CXFA_Node*)FXJSE_Value_ToObject(hValue, NULL); | 511 pNode = static_cast<CXFA_Node*>(FXJSE_Value_ToObject(hValue, NULL)); |
| 512 } else if (FXJSE_Value_IsUTF8String(hValue)) { | 512 } else if (FXJSE_Value_IsUTF8String(hValue)) { |
| 513 CFX_ByteString bsString; | 513 CFX_ByteString bsString; |
| 514 FXJSE_Value_ToUTF8String(hValue, bsString); | 514 FXJSE_Value_ToUTF8String(hValue, bsString); |
| 515 CFX_WideString wsExpression = | 515 CFX_WideString wsExpression = |
| 516 CFX_WideString::FromUTF8(bsString, bsString.GetLength()); | 516 CFX_WideString::FromUTF8(bsString, bsString.GetLength()); |
| 517 IXFA_ScriptContext* pScriptContext = m_pDocument->GetScriptContext(); | 517 IXFA_ScriptContext* pScriptContext = m_pDocument->GetScriptContext(); |
| 518 if (!pScriptContext) { | 518 if (!pScriptContext) { |
| 519 FXJSE_Value_Release(hValue); | 519 FXJSE_Value_Release(hValue); |
| 520 return; | 520 return; |
| 521 } | 521 } |
| 522 CXFA_Object* pObject = pScriptContext->GetThisObject(); | 522 CXFA_Object* pObject = pScriptContext->GetThisObject(); |
| 523 if (!pObject) { | 523 if (!pObject) { |
| 524 FXJSE_Value_Release(hValue); | 524 FXJSE_Value_Release(hValue); |
| 525 return; | 525 return; |
| 526 } | 526 } |
| 527 FX_DWORD dwFlag = XFA_RESOLVENODE_Children | XFA_RESOLVENODE_Parent | | 527 FX_DWORD dwFlag = XFA_RESOLVENODE_Children | XFA_RESOLVENODE_Parent | |
| 528 XFA_RESOLVENODE_Siblings; | 528 XFA_RESOLVENODE_Siblings; |
| 529 XFA_RESOLVENODE_RS resoveNodeRS; | 529 XFA_RESOLVENODE_RS resoveNodeRS; |
| 530 int32_t iRet = pScriptContext->ResolveObjects(pObject, wsExpression, | 530 int32_t iRet = pScriptContext->ResolveObjects(pObject, wsExpression, |
| 531 resoveNodeRS, dwFlag); | 531 resoveNodeRS, dwFlag); |
| 532 if (iRet < 1 || !resoveNodeRS.nodes[0]->IsNode()) { | 532 if (iRet < 1 || !resoveNodeRS.nodes[0]->IsNode()) { |
| 533 FXJSE_Value_Release(hValue); | 533 FXJSE_Value_Release(hValue); |
| 534 return; | 534 return; |
| 535 } | 535 } |
| 536 pNode = (CXFA_Node*)resoveNodeRS.nodes[0]; | 536 pNode = resoveNodeRS.nodes[0]->AsNode(); |
| 537 } | 537 } |
| 538 FXJSE_Value_Release(hValue); | 538 FXJSE_Value_Release(hValue); |
| 539 } | 539 } |
| 540 pNotify->SetFocusWidgetNode(pNode); | 540 pNotify->SetFocusWidgetNode(pNode); |
| 541 } | 541 } |
| 542 void CScript_HostPseudoModel::Script_HostPseudoModel_GetFocus( | 542 void CScript_HostPseudoModel::Script_HostPseudoModel_GetFocus( |
| 543 CFXJSE_Arguments* pArguments) { | 543 CFXJSE_Arguments* pArguments) { |
| 544 IXFA_Notify* pNotify = m_pDocument->GetParser()->GetNotify(); | 544 IXFA_Notify* pNotify = m_pDocument->GetParser()->GetNotify(); |
| 545 if (!pNotify) { | 545 if (!pNotify) { |
| 546 return; | 546 return; |
| (...skipping 243 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 790 IXFA_Notify* pNotify = m_pDocument->GetParser()->GetNotify(); | 790 IXFA_Notify* pNotify = m_pDocument->GetParser()->GetNotify(); |
| 791 if (!pNotify) { | 791 if (!pNotify) { |
| 792 return; | 792 return; |
| 793 } | 793 } |
| 794 CFX_WideString wsDataTime = pNotify->GetCurrentDateTime(); | 794 CFX_WideString wsDataTime = pNotify->GetCurrentDateTime(); |
| 795 FXJSE_HVALUE hValue = pArguments->GetReturnValue(); | 795 FXJSE_HVALUE hValue = pArguments->GetReturnValue(); |
| 796 if (hValue) { | 796 if (hValue) { |
| 797 FXJSE_Value_SetUTF8String(hValue, FX_UTF8Encode(wsDataTime)); | 797 FXJSE_Value_SetUTF8String(hValue, FX_UTF8Encode(wsDataTime)); |
| 798 } | 798 } |
| 799 } | 799 } |
| OLD | NEW |