Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(60)

Side by Side Diff: xfa/fxfa/parser/xfa_object_imp.cpp

Issue 2029043002: Change ThrowScriptErrorMessage() to ThrowException(). (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@value_toobject_cleanup
Patch Set: Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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_object.h" 7 #include "xfa/fxfa/parser/xfa_object.h"
8 8
9 #include <memory> 9 #include <memory>
10 10
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
54 void CXFA_Object::Script_ObjectClass_ClassName(CFXJSE_Value* pValue, 54 void CXFA_Object::Script_ObjectClass_ClassName(CFXJSE_Value* pValue,
55 FX_BOOL bSetting, 55 FX_BOOL bSetting,
56 XFA_ATTRIBUTE eAttribute) { 56 XFA_ATTRIBUTE eAttribute) {
57 if (!bSetting) { 57 if (!bSetting) {
58 CFX_WideStringC className; 58 CFX_WideStringC className;
59 GetClassName(className); 59 GetClassName(className);
60 FXJSE_Value_SetUTF8String( 60 FXJSE_Value_SetUTF8String(
61 pValue, 61 pValue,
62 FX_UTF8Encode(className.c_str(), className.GetLength()).AsStringC()); 62 FX_UTF8Encode(className.c_str(), className.GetLength()).AsStringC());
63 } else { 63 } else {
64 ThrowScriptErrorMessage(XFA_IDS_INVAlID_PROP_SET); 64 Throw(XFA_IDS_INVAlID_PROP_SET);
65 } 65 }
66 } 66 }
67 void CXFA_Object::ThrowScriptErrorMessage(int32_t iStringID, ...) { 67 void CXFA_Object::Throw(int32_t iStringID, ...) {
68 IXFA_AppProvider* pAppProvider = m_pDocument->GetNotify()->GetAppProvider(); 68 IXFA_AppProvider* pAppProvider = m_pDocument->GetNotify()->GetAppProvider();
69 ASSERT(pAppProvider); 69 ASSERT(pAppProvider);
70 CFX_WideString wsFormat; 70 CFX_WideString wsFormat;
71 pAppProvider->LoadString(iStringID, wsFormat); 71 pAppProvider->LoadString(iStringID, wsFormat);
72 CFX_WideString wsMessage; 72 CFX_WideString wsMessage;
73 va_list arg_ptr; 73 va_list arg_ptr;
74 va_start(arg_ptr, iStringID); 74 va_start(arg_ptr, iStringID);
75 wsMessage.FormatV(wsFormat.c_str(), arg_ptr); 75 wsMessage.FormatV(wsFormat.c_str(), arg_ptr);
76 va_end(arg_ptr); 76 va_end(arg_ptr);
77 FXJSE_ThrowMessage( 77 FXJSE_ThrowMessage(
(...skipping 546 matching lines...) Expand 10 before | Expand all | Expand 10 after
624 } 624 }
625 return NULL; 625 return NULL;
626 } 626 }
627 void CXFA_Node::SetDataDescriptionNode(CXFA_Node* pDataDescriptionNode) { 627 void CXFA_Node::SetDataDescriptionNode(CXFA_Node* pDataDescriptionNode) {
628 ASSERT(m_ePacket == XFA_XDPPACKET_Datasets); 628 ASSERT(m_ePacket == XFA_XDPPACKET_Datasets);
629 m_pAuxNode = pDataDescriptionNode; 629 m_pAuxNode = pDataDescriptionNode;
630 } 630 }
631 void CXFA_Node::Script_TreeClass_ResolveNode(CFXJSE_Arguments* pArguments) { 631 void CXFA_Node::Script_TreeClass_ResolveNode(CFXJSE_Arguments* pArguments) {
632 int32_t iLength = pArguments->GetLength(); 632 int32_t iLength = pArguments->GetLength();
633 if (iLength != 1) { 633 if (iLength != 1) {
634 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"resolveNode"); 634 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"resolveNode");
635 return; 635 return;
636 } 636 }
637 CFX_WideString wsExpression = 637 CFX_WideString wsExpression =
638 CFX_WideString::FromUTF8(pArguments->GetUTF8String(0).AsStringC()); 638 CFX_WideString::FromUTF8(pArguments->GetUTF8String(0).AsStringC());
639 CXFA_ScriptContext* pScriptContext = m_pDocument->GetScriptContext(); 639 CXFA_ScriptContext* pScriptContext = m_pDocument->GetScriptContext();
640 if (!pScriptContext) { 640 if (!pScriptContext) {
641 return; 641 return;
642 } 642 }
643 CXFA_Node* refNode = this; 643 CXFA_Node* refNode = this;
644 if (refNode->GetClassID() == XFA_ELEMENT_Xfa) { 644 if (refNode->GetClassID() == XFA_ELEMENT_Xfa) {
(...skipping 22 matching lines...) Expand all
667 pValue.get(), FALSE, (XFA_ATTRIBUTE)lpAttributeInfo->eAttribute); 667 pValue.get(), FALSE, (XFA_ATTRIBUTE)lpAttributeInfo->eAttribute);
668 FXJSE_Value_Set(pArguments->GetReturnValue(), pValue.get()); 668 FXJSE_Value_Set(pArguments->GetReturnValue(), pValue.get());
669 } else { 669 } else {
670 FXJSE_Value_SetNull(pArguments->GetReturnValue()); 670 FXJSE_Value_SetNull(pArguments->GetReturnValue());
671 } 671 }
672 } 672 }
673 } 673 }
674 void CXFA_Node::Script_TreeClass_ResolveNodes(CFXJSE_Arguments* pArguments) { 674 void CXFA_Node::Script_TreeClass_ResolveNodes(CFXJSE_Arguments* pArguments) {
675 int32_t iLength = pArguments->GetLength(); 675 int32_t iLength = pArguments->GetLength();
676 if (iLength != 1) { 676 if (iLength != 1) {
677 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, 677 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"resolveNodes");
678 L"resolveNodes");
679 return; 678 return;
680 } 679 }
681 CFX_WideString wsExpression = 680 CFX_WideString wsExpression =
682 CFX_WideString::FromUTF8(pArguments->GetUTF8String(0).AsStringC()); 681 CFX_WideString::FromUTF8(pArguments->GetUTF8String(0).AsStringC());
683 CFXJSE_Value* pValue = pArguments->GetReturnValue(); 682 CFXJSE_Value* pValue = pArguments->GetReturnValue();
684 if (!pValue) { 683 if (!pValue) {
685 return; 684 return;
686 } 685 }
687 uint32_t dwFlag = XFA_RESOLVENODE_Children | XFA_RESOLVENODE_Attributes | 686 uint32_t dwFlag = XFA_RESOLVENODE_Children | XFA_RESOLVENODE_Attributes |
688 XFA_RESOLVENODE_Properties | XFA_RESOLVENODE_Parent | 687 XFA_RESOLVENODE_Properties | XFA_RESOLVENODE_Parent |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
724 } 723 }
725 } 724 }
726 } 725 }
727 FXJSE_Value_SetObject(pValue, (CXFA_Object*)pNodeList, 726 FXJSE_Value_SetObject(pValue, (CXFA_Object*)pNodeList,
728 pScriptContext->GetJseNormalClass()); 727 pScriptContext->GetJseNormalClass());
729 } 728 }
730 void CXFA_Node::Script_TreeClass_All(CFXJSE_Value* pValue, 729 void CXFA_Node::Script_TreeClass_All(CFXJSE_Value* pValue,
731 FX_BOOL bSetting, 730 FX_BOOL bSetting,
732 XFA_ATTRIBUTE eAttribute) { 731 XFA_ATTRIBUTE eAttribute) {
733 if (bSetting) { 732 if (bSetting) {
734 ThrowScriptErrorMessage(XFA_IDS_INVAlID_PROP_SET); 733 Throw(XFA_IDS_INVAlID_PROP_SET);
735 } else { 734 } else {
736 uint32_t dwFlag = XFA_RESOLVENODE_Siblings | XFA_RESOLVENODE_ALL; 735 uint32_t dwFlag = XFA_RESOLVENODE_Siblings | XFA_RESOLVENODE_ALL;
737 CFX_WideString wsName; 736 CFX_WideString wsName;
738 GetAttribute(XFA_ATTRIBUTE_Name, wsName); 737 GetAttribute(XFA_ATTRIBUTE_Name, wsName);
739 CFX_WideString wsExpression = wsName + FX_WSTRC(L"[*]"); 738 CFX_WideString wsExpression = wsName + FX_WSTRC(L"[*]");
740 Script_Som_ResolveNodeList(pValue, wsExpression, dwFlag); 739 Script_Som_ResolveNodeList(pValue, wsExpression, dwFlag);
741 } 740 }
742 } 741 }
743 void CXFA_Node::Script_TreeClass_Nodes(CFXJSE_Value* pValue, 742 void CXFA_Node::Script_TreeClass_Nodes(CFXJSE_Value* pValue,
744 FX_BOOL bSetting, 743 FX_BOOL bSetting,
(...skipping 13 matching lines...) Expand all
758 } else { 757 } else {
759 CXFA_AttachNodeList* pNodeList = new CXFA_AttachNodeList(m_pDocument, this); 758 CXFA_AttachNodeList* pNodeList = new CXFA_AttachNodeList(m_pDocument, this);
760 FXJSE_Value_SetObject(pValue, (CXFA_Object*)pNodeList, 759 FXJSE_Value_SetObject(pValue, (CXFA_Object*)pNodeList,
761 pScriptContext->GetJseNormalClass()); 760 pScriptContext->GetJseNormalClass());
762 } 761 }
763 } 762 }
764 void CXFA_Node::Script_TreeClass_ClassAll(CFXJSE_Value* pValue, 763 void CXFA_Node::Script_TreeClass_ClassAll(CFXJSE_Value* pValue,
765 FX_BOOL bSetting, 764 FX_BOOL bSetting,
766 XFA_ATTRIBUTE eAttribute) { 765 XFA_ATTRIBUTE eAttribute) {
767 if (bSetting) { 766 if (bSetting) {
768 ThrowScriptErrorMessage(XFA_IDS_INVAlID_PROP_SET); 767 Throw(XFA_IDS_INVAlID_PROP_SET);
769 } else { 768 } else {
770 uint32_t dwFlag = XFA_RESOLVENODE_Siblings | XFA_RESOLVENODE_ALL; 769 uint32_t dwFlag = XFA_RESOLVENODE_Siblings | XFA_RESOLVENODE_ALL;
771 CFX_WideStringC wsName; 770 CFX_WideStringC wsName;
772 GetClassName(wsName); 771 GetClassName(wsName);
773 CFX_WideString wsExpression = FX_WSTRC(L"#") + wsName + FX_WSTRC(L"[*]"); 772 CFX_WideString wsExpression = FX_WSTRC(L"#") + wsName + FX_WSTRC(L"[*]");
774 Script_Som_ResolveNodeList(pValue, wsExpression, dwFlag); 773 Script_Som_ResolveNodeList(pValue, wsExpression, dwFlag);
775 } 774 }
776 } 775 }
777 void CXFA_Node::Script_TreeClass_Parent(CFXJSE_Value* pValue, 776 void CXFA_Node::Script_TreeClass_Parent(CFXJSE_Value* pValue,
778 FX_BOOL bSetting, 777 FX_BOOL bSetting,
779 XFA_ATTRIBUTE eAttribute) { 778 XFA_ATTRIBUTE eAttribute) {
780 if (bSetting) { 779 if (bSetting) {
781 ThrowScriptErrorMessage(XFA_IDS_INVAlID_PROP_SET); 780 Throw(XFA_IDS_INVAlID_PROP_SET);
782 } else { 781 } else {
783 CXFA_Node* pParent = GetNodeItem(XFA_NODEITEM_Parent); 782 CXFA_Node* pParent = GetNodeItem(XFA_NODEITEM_Parent);
784 if (pParent) { 783 if (pParent) {
785 FXJSE_Value_Set( 784 FXJSE_Value_Set(
786 pValue, m_pDocument->GetScriptContext()->GetJSValueFromMap(pParent)); 785 pValue, m_pDocument->GetScriptContext()->GetJSValueFromMap(pParent));
787 } else { 786 } else {
788 FXJSE_Value_SetNull(pValue); 787 FXJSE_Value_SetNull(pValue);
789 } 788 }
790 } 789 }
791 } 790 }
792 void CXFA_Node::Script_TreeClass_Index(CFXJSE_Value* pValue, 791 void CXFA_Node::Script_TreeClass_Index(CFXJSE_Value* pValue,
793 FX_BOOL bSetting, 792 FX_BOOL bSetting,
794 XFA_ATTRIBUTE eAttribute) { 793 XFA_ATTRIBUTE eAttribute) {
795 if (bSetting) { 794 if (bSetting) {
796 ThrowScriptErrorMessage(XFA_IDS_INVAlID_PROP_SET); 795 Throw(XFA_IDS_INVAlID_PROP_SET);
797 } else { 796 } else {
798 FXJSE_Value_SetInteger(pValue, GetNodeSameNameIndex()); 797 FXJSE_Value_SetInteger(pValue, GetNodeSameNameIndex());
799 } 798 }
800 } 799 }
801 void CXFA_Node::Script_TreeClass_ClassIndex(CFXJSE_Value* pValue, 800 void CXFA_Node::Script_TreeClass_ClassIndex(CFXJSE_Value* pValue,
802 FX_BOOL bSetting, 801 FX_BOOL bSetting,
803 XFA_ATTRIBUTE eAttribute) { 802 XFA_ATTRIBUTE eAttribute) {
804 if (bSetting) { 803 if (bSetting) {
805 ThrowScriptErrorMessage(XFA_IDS_INVAlID_PROP_SET); 804 Throw(XFA_IDS_INVAlID_PROP_SET);
806 } else { 805 } else {
807 FXJSE_Value_SetInteger(pValue, GetNodeSameClassIndex()); 806 FXJSE_Value_SetInteger(pValue, GetNodeSameClassIndex());
808 } 807 }
809 } 808 }
810 void CXFA_Node::Script_TreeClass_SomExpression(CFXJSE_Value* pValue, 809 void CXFA_Node::Script_TreeClass_SomExpression(CFXJSE_Value* pValue,
811 FX_BOOL bSetting, 810 FX_BOOL bSetting,
812 XFA_ATTRIBUTE eAttribute) { 811 XFA_ATTRIBUTE eAttribute) {
813 if (bSetting) { 812 if (bSetting) {
814 ThrowScriptErrorMessage(XFA_IDS_INVAlID_PROP_SET); 813 Throw(XFA_IDS_INVAlID_PROP_SET);
815 } else { 814 } else {
816 CFX_WideString wsSOMExpression; 815 CFX_WideString wsSOMExpression;
817 GetSOMExpression(wsSOMExpression); 816 GetSOMExpression(wsSOMExpression);
818 FXJSE_Value_SetUTF8String(pValue, 817 FXJSE_Value_SetUTF8String(pValue,
819 FX_UTF8Encode(wsSOMExpression).AsStringC()); 818 FX_UTF8Encode(wsSOMExpression).AsStringC());
820 } 819 }
821 } 820 }
822 void CXFA_Node::Script_NodeClass_ApplyXSL(CFXJSE_Arguments* pArguments) { 821 void CXFA_Node::Script_NodeClass_ApplyXSL(CFXJSE_Arguments* pArguments) {
823 int32_t iLength = pArguments->GetLength(); 822 int32_t iLength = pArguments->GetLength();
824 if (iLength != 1) { 823 if (iLength != 1) {
825 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"applyXSL"); 824 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"applyXSL");
826 return; 825 return;
827 } 826 }
828 CFX_WideString wsExpression = 827 CFX_WideString wsExpression =
829 CFX_WideString::FromUTF8(pArguments->GetUTF8String(0).AsStringC()); 828 CFX_WideString::FromUTF8(pArguments->GetUTF8String(0).AsStringC());
830 // TODO(weili): check whether we need to implement this, pdfium:501. 829 // TODO(weili): check whether we need to implement this, pdfium:501.
831 // For now, just put the variables here to avoid unused variable warning. 830 // For now, just put the variables here to avoid unused variable warning.
832 (void)wsExpression; 831 (void)wsExpression;
833 } 832 }
834 833
835 void CXFA_Node::Script_NodeClass_AssignNode(CFXJSE_Arguments* pArguments) { 834 void CXFA_Node::Script_NodeClass_AssignNode(CFXJSE_Arguments* pArguments) {
836 int32_t iLength = pArguments->GetLength(); 835 int32_t iLength = pArguments->GetLength();
837 if (iLength < 1 || iLength > 3) { 836 if (iLength < 1 || iLength > 3) {
838 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"assignNode"); 837 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"assignNode");
839 return; 838 return;
840 } 839 }
841 CFX_WideString wsExpression; 840 CFX_WideString wsExpression;
842 CFX_WideString wsValue; 841 CFX_WideString wsValue;
843 int32_t iAction = 0; 842 int32_t iAction = 0;
844 if (iLength >= 1) { 843 if (iLength >= 1) {
845 wsExpression = 844 wsExpression =
846 CFX_WideString::FromUTF8(pArguments->GetUTF8String(0).AsStringC()); 845 CFX_WideString::FromUTF8(pArguments->GetUTF8String(0).AsStringC());
847 } 846 }
848 if (iLength >= 2) { 847 if (iLength >= 2) {
849 wsValue = 848 wsValue =
850 CFX_WideString::FromUTF8(pArguments->GetUTF8String(1).AsStringC()); 849 CFX_WideString::FromUTF8(pArguments->GetUTF8String(1).AsStringC());
851 } 850 }
852 if (iLength >= 3) 851 if (iLength >= 3)
853 iAction = pArguments->GetInt32(2); 852 iAction = pArguments->GetInt32(2);
854 // TODO(weili): check whether we need to implement this, pdfium:501. 853 // TODO(weili): check whether we need to implement this, pdfium:501.
855 // For now, just put the variables here to avoid unused variable warning. 854 // For now, just put the variables here to avoid unused variable warning.
856 (void)wsExpression; 855 (void)wsExpression;
857 (void)wsValue; 856 (void)wsValue;
858 (void)iAction; 857 (void)iAction;
859 } 858 }
860 859
861 void CXFA_Node::Script_NodeClass_Clone(CFXJSE_Arguments* pArguments) { 860 void CXFA_Node::Script_NodeClass_Clone(CFXJSE_Arguments* pArguments) {
862 int32_t iLength = pArguments->GetLength(); 861 int32_t iLength = pArguments->GetLength();
863 if (iLength != 1) { 862 if (iLength != 1) {
864 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"clone"); 863 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"clone");
865 return; 864 return;
866 } 865 }
867 FX_BOOL bClone = TRUE; 866 FX_BOOL bClone = TRUE;
868 bClone = pArguments->GetInt32(0) == 0 ? FALSE : TRUE; 867 bClone = pArguments->GetInt32(0) == 0 ? FALSE : TRUE;
869 CXFA_Node* pCloneNode = Clone(bClone); 868 CXFA_Node* pCloneNode = Clone(bClone);
870 FXJSE_Value_Set( 869 FXJSE_Value_Set(
871 pArguments->GetReturnValue(), 870 pArguments->GetReturnValue(),
872 m_pDocument->GetScriptContext()->GetJSValueFromMap(pCloneNode)); 871 m_pDocument->GetScriptContext()->GetJSValueFromMap(pCloneNode));
873 } 872 }
874 void CXFA_Node::Script_NodeClass_GetAttribute(CFXJSE_Arguments* pArguments) { 873 void CXFA_Node::Script_NodeClass_GetAttribute(CFXJSE_Arguments* pArguments) {
875 int32_t iLength = pArguments->GetLength(); 874 int32_t iLength = pArguments->GetLength();
876 if (iLength != 1) { 875 if (iLength != 1) {
877 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, 876 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"getAttribute");
878 L"getAttribute");
879 return; 877 return;
880 } 878 }
881 CFX_WideString wsExpression = 879 CFX_WideString wsExpression =
882 CFX_WideString::FromUTF8(pArguments->GetUTF8String(0).AsStringC()); 880 CFX_WideString::FromUTF8(pArguments->GetUTF8String(0).AsStringC());
883 CFX_WideString wsValue; 881 CFX_WideString wsValue;
884 GetAttribute(wsExpression.AsStringC(), wsValue); 882 GetAttribute(wsExpression.AsStringC(), wsValue);
885 CFXJSE_Value* pValue = pArguments->GetReturnValue(); 883 CFXJSE_Value* pValue = pArguments->GetReturnValue();
886 if (pValue) { 884 if (pValue) {
887 FXJSE_Value_SetUTF8String(pValue, FX_UTF8Encode(wsValue).AsStringC()); 885 FXJSE_Value_SetUTF8String(pValue, FX_UTF8Encode(wsValue).AsStringC());
888 } 886 }
889 } 887 }
890 void CXFA_Node::Script_NodeClass_GetElement(CFXJSE_Arguments* pArguments) { 888 void CXFA_Node::Script_NodeClass_GetElement(CFXJSE_Arguments* pArguments) {
891 int32_t iLength = pArguments->GetLength(); 889 int32_t iLength = pArguments->GetLength();
892 if (iLength < 1 || iLength > 2) { 890 if (iLength < 1 || iLength > 2) {
893 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"getElement"); 891 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"getElement");
894 return; 892 return;
895 } 893 }
896 CFX_WideString wsExpression; 894 CFX_WideString wsExpression;
897 int32_t iValue = 0; 895 int32_t iValue = 0;
898 if (iLength >= 1) { 896 if (iLength >= 1) {
899 CFX_ByteString bsExpression = pArguments->GetUTF8String(0); 897 CFX_ByteString bsExpression = pArguments->GetUTF8String(0);
900 wsExpression = CFX_WideString::FromUTF8(bsExpression.AsStringC()); 898 wsExpression = CFX_WideString::FromUTF8(bsExpression.AsStringC());
901 } 899 }
902 if (iLength >= 2) { 900 if (iLength >= 2) {
903 iValue = pArguments->GetInt32(1); 901 iValue = pArguments->GetInt32(1);
904 } 902 }
905 const XFA_ELEMENTINFO* pElementInfo = 903 const XFA_ELEMENTINFO* pElementInfo =
906 XFA_GetElementByName(wsExpression.AsStringC()); 904 XFA_GetElementByName(wsExpression.AsStringC());
907 CXFA_Node* pNode = GetProperty(iValue, pElementInfo->eName); 905 CXFA_Node* pNode = GetProperty(iValue, pElementInfo->eName);
908 FXJSE_Value_Set(pArguments->GetReturnValue(), 906 FXJSE_Value_Set(pArguments->GetReturnValue(),
909 m_pDocument->GetScriptContext()->GetJSValueFromMap(pNode)); 907 m_pDocument->GetScriptContext()->GetJSValueFromMap(pNode));
910 } 908 }
911 909
912 void CXFA_Node::Script_NodeClass_IsPropertySpecified( 910 void CXFA_Node::Script_NodeClass_IsPropertySpecified(
913 CFXJSE_Arguments* pArguments) { 911 CFXJSE_Arguments* pArguments) {
914 int32_t iLength = pArguments->GetLength(); 912 int32_t iLength = pArguments->GetLength();
915 if (iLength < 1 || iLength > 3) { 913 if (iLength < 1 || iLength > 3) {
916 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, 914 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"isPropertySpecified");
917 L"isPropertySpecified");
918 return; 915 return;
919 } 916 }
920 CFX_WideString wsExpression; 917 CFX_WideString wsExpression;
921 FX_BOOL bParent = TRUE; 918 FX_BOOL bParent = TRUE;
922 int32_t iIndex = 0; 919 int32_t iIndex = 0;
923 if (iLength >= 1) { 920 if (iLength >= 1) {
924 wsExpression = 921 wsExpression =
925 CFX_WideString::FromUTF8(pArguments->GetUTF8String(0).AsStringC()); 922 CFX_WideString::FromUTF8(pArguments->GetUTF8String(0).AsStringC());
926 } 923 }
927 if (iLength >= 2) 924 if (iLength >= 2)
(...skipping 18 matching lines...) Expand all
946 } 943 }
947 } 944 }
948 CFXJSE_Value* pValue = pArguments->GetReturnValue(); 945 CFXJSE_Value* pValue = pArguments->GetReturnValue();
949 if (pValue) 946 if (pValue)
950 FXJSE_Value_SetBoolean(pValue, bHas); 947 FXJSE_Value_SetBoolean(pValue, bHas);
951 } 948 }
952 949
953 void CXFA_Node::Script_NodeClass_LoadXML(CFXJSE_Arguments* pArguments) { 950 void CXFA_Node::Script_NodeClass_LoadXML(CFXJSE_Arguments* pArguments) {
954 int32_t iLength = pArguments->GetLength(); 951 int32_t iLength = pArguments->GetLength();
955 if (iLength < 1 || iLength > 3) { 952 if (iLength < 1 || iLength > 3) {
956 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"loadXML"); 953 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"loadXML");
957 return; 954 return;
958 } 955 }
959 CFX_WideString wsExpression; 956 CFX_WideString wsExpression;
960 FX_BOOL bIgnoreRoot = TRUE; 957 FX_BOOL bIgnoreRoot = TRUE;
961 FX_BOOL bOverwrite = 0; 958 FX_BOOL bOverwrite = 0;
962 if (iLength >= 1) { 959 if (iLength >= 1) {
963 CFX_ByteString bsExpression = pArguments->GetUTF8String(0); 960 CFX_ByteString bsExpression = pArguments->GetUTF8String(0);
964 wsExpression = CFX_WideString::FromUTF8(bsExpression.AsStringC()); 961 wsExpression = CFX_WideString::FromUTF8(bsExpression.AsStringC());
965 if (wsExpression.IsEmpty()) { 962 if (wsExpression.IsEmpty()) {
966 return; 963 return;
(...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after
1076 } 1073 }
1077 pParser->Release(); 1074 pParser->Release();
1078 pParser = NULL; 1075 pParser = NULL;
1079 } 1076 }
1080 void CXFA_Node::Script_NodeClass_SaveFilteredXML(CFXJSE_Arguments* pArguments) { 1077 void CXFA_Node::Script_NodeClass_SaveFilteredXML(CFXJSE_Arguments* pArguments) {
1081 } 1078 }
1082 1079
1083 void CXFA_Node::Script_NodeClass_SaveXML(CFXJSE_Arguments* pArguments) { 1080 void CXFA_Node::Script_NodeClass_SaveXML(CFXJSE_Arguments* pArguments) {
1084 int32_t iLength = pArguments->GetLength(); 1081 int32_t iLength = pArguments->GetLength();
1085 if (iLength < 0 || iLength > 1) { 1082 if (iLength < 0 || iLength > 1) {
1086 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"saveXML"); 1083 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"saveXML");
1087 return; 1084 return;
1088 } 1085 }
1089 FX_BOOL bPrettyMode = FALSE; 1086 FX_BOOL bPrettyMode = FALSE;
1090 if (iLength == 1) { 1087 if (iLength == 1) {
1091 if (pArguments->GetUTF8String(0) != "pretty") { 1088 if (pArguments->GetUTF8String(0) != "pretty") {
1092 ThrowScriptErrorMessage(XFA_IDS_ARGUMENT_MISMATCH); 1089 Throw(XFA_IDS_ARGUMENT_MISMATCH);
1093 return; 1090 return;
1094 } 1091 }
1095 bPrettyMode = TRUE; 1092 bPrettyMode = TRUE;
1096 } 1093 }
1097 CFX_ByteStringC bsXMLHeader = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"; 1094 CFX_ByteStringC bsXMLHeader = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n";
1098 if (GetPacketID() == XFA_XDPPACKET_Form || 1095 if (GetPacketID() == XFA_XDPPACKET_Form ||
1099 GetPacketID() == XFA_XDPPACKET_Datasets) { 1096 GetPacketID() == XFA_XDPPACKET_Datasets) {
1100 CFDE_XMLNode* pElement = nullptr; 1097 CFDE_XMLNode* pElement = nullptr;
1101 if (GetPacketID() == XFA_XDPPACKET_Datasets) { 1098 if (GetPacketID() == XFA_XDPPACKET_Datasets) {
1102 pElement = GetXMLMappingNode(); 1099 pElement = GetXMLMappingNode();
(...skipping 25 matching lines...) Expand all
1128 pArguments->GetReturnValue(), 1125 pArguments->GetReturnValue(),
1129 CFX_ByteStringC(pMemoryStream->GetBuffer(), pMemoryStream->GetSize())); 1126 CFX_ByteStringC(pMemoryStream->GetBuffer(), pMemoryStream->GetSize()));
1130 return; 1127 return;
1131 } 1128 }
1132 FXJSE_Value_SetUTF8String(pArguments->GetReturnValue(), ""); 1129 FXJSE_Value_SetUTF8String(pArguments->GetReturnValue(), "");
1133 } 1130 }
1134 1131
1135 void CXFA_Node::Script_NodeClass_SetAttribute(CFXJSE_Arguments* pArguments) { 1132 void CXFA_Node::Script_NodeClass_SetAttribute(CFXJSE_Arguments* pArguments) {
1136 int32_t iLength = pArguments->GetLength(); 1133 int32_t iLength = pArguments->GetLength();
1137 if (iLength != 2) { 1134 if (iLength != 2) {
1138 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, 1135 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"setAttribute");
1139 L"setAttribute");
1140 return; 1136 return;
1141 } 1137 }
1142 CFX_WideString wsAttributeValue = 1138 CFX_WideString wsAttributeValue =
1143 CFX_WideString::FromUTF8(pArguments->GetUTF8String(0).AsStringC()); 1139 CFX_WideString::FromUTF8(pArguments->GetUTF8String(0).AsStringC());
1144 CFX_WideString wsAttribute = 1140 CFX_WideString wsAttribute =
1145 CFX_WideString::FromUTF8(pArguments->GetUTF8String(1).AsStringC()); 1141 CFX_WideString::FromUTF8(pArguments->GetUTF8String(1).AsStringC());
1146 SetAttribute(wsAttribute.AsStringC(), wsAttributeValue.AsStringC(), TRUE); 1142 SetAttribute(wsAttribute.AsStringC(), wsAttributeValue.AsStringC(), TRUE);
1147 } 1143 }
1148 1144
1149 void CXFA_Node::Script_NodeClass_SetElement(CFXJSE_Arguments* pArguments) { 1145 void CXFA_Node::Script_NodeClass_SetElement(CFXJSE_Arguments* pArguments) {
1150 int32_t iLength = pArguments->GetLength(); 1146 int32_t iLength = pArguments->GetLength();
1151 if (iLength != 1 && iLength != 2) { 1147 if (iLength != 1 && iLength != 2) {
1152 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"setElement"); 1148 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"setElement");
1153 return; 1149 return;
1154 } 1150 }
1155 CXFA_Node* pNode = nullptr; 1151 CXFA_Node* pNode = nullptr;
1156 CFX_WideString wsName; 1152 CFX_WideString wsName;
1157 if (iLength >= 1) 1153 if (iLength >= 1)
1158 pNode = static_cast<CXFA_Node*>(pArguments->GetObject(0)); 1154 pNode = static_cast<CXFA_Node*>(pArguments->GetObject(0));
1159 if (iLength >= 2) { 1155 if (iLength >= 2) {
1160 wsName = CFX_WideString::FromUTF8(pArguments->GetUTF8String(1).AsStringC()); 1156 wsName = CFX_WideString::FromUTF8(pArguments->GetUTF8String(1).AsStringC());
1161 } 1157 }
1162 // TODO(weili): check whether we need to implement this, pdfium:501. 1158 // TODO(weili): check whether we need to implement this, pdfium:501.
1163 // For now, just put the variables here to avoid unused variable warning. 1159 // For now, just put the variables here to avoid unused variable warning.
1164 (void)pNode; 1160 (void)pNode;
1165 (void)wsName; 1161 (void)wsName;
1166 } 1162 }
1167 1163
1168 void CXFA_Node::Script_NodeClass_Ns(CFXJSE_Value* pValue, 1164 void CXFA_Node::Script_NodeClass_Ns(CFXJSE_Value* pValue,
1169 FX_BOOL bSetting, 1165 FX_BOOL bSetting,
1170 XFA_ATTRIBUTE eAttribute) { 1166 XFA_ATTRIBUTE eAttribute) {
1171 if (bSetting) { 1167 if (bSetting) {
1172 ThrowScriptErrorMessage(XFA_IDS_INVAlID_PROP_SET); 1168 Throw(XFA_IDS_INVAlID_PROP_SET);
1173 } else { 1169 } else {
1174 CFX_WideString wsNameSpace; 1170 CFX_WideString wsNameSpace;
1175 TryNamespace(wsNameSpace); 1171 TryNamespace(wsNameSpace);
1176 FXJSE_Value_SetUTF8String(pValue, FX_UTF8Encode(wsNameSpace).AsStringC()); 1172 FXJSE_Value_SetUTF8String(pValue, FX_UTF8Encode(wsNameSpace).AsStringC());
1177 } 1173 }
1178 } 1174 }
1179 void CXFA_Node::Script_NodeClass_Model(CFXJSE_Value* pValue, 1175 void CXFA_Node::Script_NodeClass_Model(CFXJSE_Value* pValue,
1180 FX_BOOL bSetting, 1176 FX_BOOL bSetting,
1181 XFA_ATTRIBUTE eAttribute) { 1177 XFA_ATTRIBUTE eAttribute) {
1182 if (bSetting) { 1178 if (bSetting) {
1183 ThrowScriptErrorMessage(XFA_IDS_INVAlID_PROP_SET); 1179 Throw(XFA_IDS_INVAlID_PROP_SET);
1184 } else { 1180 } else {
1185 FXJSE_Value_Set(pValue, m_pDocument->GetScriptContext()->GetJSValueFromMap( 1181 FXJSE_Value_Set(pValue, m_pDocument->GetScriptContext()->GetJSValueFromMap(
1186 GetModelNode())); 1182 GetModelNode()));
1187 } 1183 }
1188 } 1184 }
1189 void CXFA_Node::Script_NodeClass_IsContainer(CFXJSE_Value* pValue, 1185 void CXFA_Node::Script_NodeClass_IsContainer(CFXJSE_Value* pValue,
1190 FX_BOOL bSetting, 1186 FX_BOOL bSetting,
1191 XFA_ATTRIBUTE eAttribute) { 1187 XFA_ATTRIBUTE eAttribute) {
1192 if (bSetting) { 1188 if (bSetting) {
1193 ThrowScriptErrorMessage(XFA_IDS_INVAlID_PROP_SET); 1189 Throw(XFA_IDS_INVAlID_PROP_SET);
1194 } else { 1190 } else {
1195 FXJSE_Value_SetBoolean(pValue, IsContainerNode()); 1191 FXJSE_Value_SetBoolean(pValue, IsContainerNode());
1196 } 1192 }
1197 } 1193 }
1198 void CXFA_Node::Script_NodeClass_IsNull(CFXJSE_Value* pValue, 1194 void CXFA_Node::Script_NodeClass_IsNull(CFXJSE_Value* pValue,
1199 FX_BOOL bSetting, 1195 FX_BOOL bSetting,
1200 XFA_ATTRIBUTE eAttribute) { 1196 XFA_ATTRIBUTE eAttribute) {
1201 if (bSetting) { 1197 if (bSetting) {
1202 ThrowScriptErrorMessage(XFA_IDS_INVAlID_PROP_SET); 1198 Throw(XFA_IDS_INVAlID_PROP_SET);
1203 } else { 1199 } else {
1204 if (GetClassID() == XFA_ELEMENT_Subform) { 1200 if (GetClassID() == XFA_ELEMENT_Subform) {
1205 FXJSE_Value_SetBoolean(pValue, FALSE); 1201 FXJSE_Value_SetBoolean(pValue, FALSE);
1206 return; 1202 return;
1207 } 1203 }
1208 CFX_WideString strValue; 1204 CFX_WideString strValue;
1209 FXJSE_Value_SetBoolean(pValue, !TryContent(strValue) || strValue.IsEmpty()); 1205 FXJSE_Value_SetBoolean(pValue, !TryContent(strValue) || strValue.IsEmpty());
1210 } 1206 }
1211 } 1207 }
1212 void CXFA_Node::Script_NodeClass_OneOfChild(CFXJSE_Value* pValue, 1208 void CXFA_Node::Script_NodeClass_OneOfChild(CFXJSE_Value* pValue,
1213 FX_BOOL bSetting, 1209 FX_BOOL bSetting,
1214 XFA_ATTRIBUTE eAttribute) { 1210 XFA_ATTRIBUTE eAttribute) {
1215 if (bSetting) { 1211 if (bSetting) {
1216 ThrowScriptErrorMessage(XFA_IDS_INVAlID_PROP_SET); 1212 Throw(XFA_IDS_INVAlID_PROP_SET);
1217 } else { 1213 } else {
1218 CXFA_NodeArray properts; 1214 CXFA_NodeArray properts;
1219 int32_t iSize = GetNodeList(properts, XFA_NODEFILTER_OneOfProperty); 1215 int32_t iSize = GetNodeList(properts, XFA_NODEFILTER_OneOfProperty);
1220 if (iSize > 0) { 1216 if (iSize > 0) {
1221 FXJSE_Value_Set( 1217 FXJSE_Value_Set(
1222 pValue, 1218 pValue,
1223 m_pDocument->GetScriptContext()->GetJSValueFromMap(properts[0])); 1219 m_pDocument->GetScriptContext()->GetJSValueFromMap(properts[0]));
1224 } 1220 }
1225 } 1221 }
1226 } 1222 }
1227 void CXFA_Node::Script_ContainerClass_GetDelta(CFXJSE_Arguments* pArguments) {} 1223 void CXFA_Node::Script_ContainerClass_GetDelta(CFXJSE_Arguments* pArguments) {}
1228 void CXFA_Node::Script_ContainerClass_GetDeltas(CFXJSE_Arguments* pArguments) { 1224 void CXFA_Node::Script_ContainerClass_GetDeltas(CFXJSE_Arguments* pArguments) {
1229 CXFA_ArrayNodeList* pFormNodes = new CXFA_ArrayNodeList(m_pDocument); 1225 CXFA_ArrayNodeList* pFormNodes = new CXFA_ArrayNodeList(m_pDocument);
1230 FXJSE_Value_SetObject(pArguments->GetReturnValue(), (CXFA_Object*)pFormNodes, 1226 FXJSE_Value_SetObject(pArguments->GetReturnValue(), (CXFA_Object*)pFormNodes,
1231 m_pDocument->GetScriptContext()->GetJseNormalClass()); 1227 m_pDocument->GetScriptContext()->GetJseNormalClass());
1232 } 1228 }
1233 void CXFA_Node::Script_ModelClass_ClearErrorList(CFXJSE_Arguments* pArguments) { 1229 void CXFA_Node::Script_ModelClass_ClearErrorList(CFXJSE_Arguments* pArguments) {
1234 } 1230 }
1235 void CXFA_Node::Script_ModelClass_CreateNode(CFXJSE_Arguments* pArguments) { 1231 void CXFA_Node::Script_ModelClass_CreateNode(CFXJSE_Arguments* pArguments) {
1236 Script_Template_CreateNode(pArguments); 1232 Script_Template_CreateNode(pArguments);
1237 } 1233 }
1238 void CXFA_Node::Script_ModelClass_IsCompatibleNS(CFXJSE_Arguments* pArguments) { 1234 void CXFA_Node::Script_ModelClass_IsCompatibleNS(CFXJSE_Arguments* pArguments) {
1239 int32_t iLength = pArguments->GetLength(); 1235 int32_t iLength = pArguments->GetLength();
1240 if (iLength < 1) { 1236 if (iLength < 1) {
1241 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, 1237 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"isCompatibleNS");
1242 L"isCompatibleNS");
1243 return; 1238 return;
1244 } 1239 }
1245 CFX_WideString wsNameSpace; 1240 CFX_WideString wsNameSpace;
1246 if (iLength >= 1) { 1241 if (iLength >= 1) {
1247 CFX_ByteString bsNameSpace = pArguments->GetUTF8String(0); 1242 CFX_ByteString bsNameSpace = pArguments->GetUTF8String(0);
1248 wsNameSpace = CFX_WideString::FromUTF8(bsNameSpace.AsStringC()); 1243 wsNameSpace = CFX_WideString::FromUTF8(bsNameSpace.AsStringC());
1249 } 1244 }
1250 CFX_WideString wsNodeNameSpace; 1245 CFX_WideString wsNodeNameSpace;
1251 TryNamespace(wsNodeNameSpace); 1246 TryNamespace(wsNodeNameSpace);
1252 CFXJSE_Value* pValue = pArguments->GetReturnValue(); 1247 CFXJSE_Value* pValue = pArguments->GetReturnValue();
(...skipping 15 matching lines...) Expand all
1268 } else { 1263 } else {
1269 FXJSE_Value_SetInteger(pValue, GetInteger(eAttribute)); 1264 FXJSE_Value_SetInteger(pValue, GetInteger(eAttribute));
1270 } 1265 }
1271 } 1266 }
1272 void CXFA_Node::Script_Attribute_IntegerRead(CFXJSE_Value* pValue, 1267 void CXFA_Node::Script_Attribute_IntegerRead(CFXJSE_Value* pValue,
1273 FX_BOOL bSetting, 1268 FX_BOOL bSetting,
1274 XFA_ATTRIBUTE eAttribute) { 1269 XFA_ATTRIBUTE eAttribute) {
1275 if (!bSetting) { 1270 if (!bSetting) {
1276 FXJSE_Value_SetInteger(pValue, GetInteger(eAttribute)); 1271 FXJSE_Value_SetInteger(pValue, GetInteger(eAttribute));
1277 } else { 1272 } else {
1278 ThrowScriptErrorMessage(XFA_IDS_INVAlID_PROP_SET); 1273 Throw(XFA_IDS_INVAlID_PROP_SET);
1279 } 1274 }
1280 } 1275 }
1281 void CXFA_Node::Script_Attribute_BOOL(CFXJSE_Value* pValue, 1276 void CXFA_Node::Script_Attribute_BOOL(CFXJSE_Value* pValue,
1282 FX_BOOL bSetting, 1277 FX_BOOL bSetting,
1283 XFA_ATTRIBUTE eAttribute) { 1278 XFA_ATTRIBUTE eAttribute) {
1284 if (bSetting) { 1279 if (bSetting) {
1285 SetBoolean(eAttribute, FXJSE_Value_ToBoolean(pValue), true); 1280 SetBoolean(eAttribute, FXJSE_Value_ToBoolean(pValue), true);
1286 } else { 1281 } else {
1287 FXJSE_Value_SetUTF8String(pValue, GetBoolean(eAttribute) ? "1" : "0"); 1282 FXJSE_Value_SetUTF8String(pValue, GetBoolean(eAttribute) ? "1" : "0");
1288 } 1283 }
1289 } 1284 }
1290 void CXFA_Node::Script_Attribute_BOOLRead(CFXJSE_Value* pValue, 1285 void CXFA_Node::Script_Attribute_BOOLRead(CFXJSE_Value* pValue,
1291 FX_BOOL bSetting, 1286 FX_BOOL bSetting,
1292 XFA_ATTRIBUTE eAttribute) { 1287 XFA_ATTRIBUTE eAttribute) {
1293 if (!bSetting) { 1288 if (!bSetting) {
1294 FXJSE_Value_SetUTF8String(pValue, GetBoolean(eAttribute) ? "1" : "0"); 1289 FXJSE_Value_SetUTF8String(pValue, GetBoolean(eAttribute) ? "1" : "0");
1295 } else { 1290 } else {
1296 ThrowScriptErrorMessage(XFA_IDS_INVAlID_PROP_SET); 1291 Throw(XFA_IDS_INVAlID_PROP_SET);
1297 } 1292 }
1298 } 1293 }
1299 1294
1300 void CXFA_Node::Script_Attribute_SendAttributeChangeMessage( 1295 void CXFA_Node::Script_Attribute_SendAttributeChangeMessage(
1301 XFA_ATTRIBUTE eAttribute, 1296 XFA_ATTRIBUTE eAttribute,
1302 FX_BOOL bScriptModify) { 1297 FX_BOOL bScriptModify) {
1303 CXFA_LayoutProcessor* pLayoutPro = m_pDocument->GetLayoutProcessor(); 1298 CXFA_LayoutProcessor* pLayoutPro = m_pDocument->GetLayoutProcessor();
1304 if (!pLayoutPro) 1299 if (!pLayoutPro)
1305 return; 1300 return;
1306 1301
(...skipping 213 matching lines...) Expand 10 before | Expand all | Expand 10 after
1520 void CXFA_Node::Script_Attribute_StringRead(CFXJSE_Value* pValue, 1515 void CXFA_Node::Script_Attribute_StringRead(CFXJSE_Value* pValue,
1521 FX_BOOL bSetting, 1516 FX_BOOL bSetting,
1522 XFA_ATTRIBUTE eAttribute) { 1517 XFA_ATTRIBUTE eAttribute) {
1523 if (!bSetting) { 1518 if (!bSetting) {
1524 CFX_WideString wsValue; 1519 CFX_WideString wsValue;
1525 GetAttribute(eAttribute, wsValue); 1520 GetAttribute(eAttribute, wsValue);
1526 FXJSE_Value_SetUTF8String( 1521 FXJSE_Value_SetUTF8String(
1527 pValue, 1522 pValue,
1528 FX_UTF8Encode(wsValue.c_str(), wsValue.GetLength()).AsStringC()); 1523 FX_UTF8Encode(wsValue.c_str(), wsValue.GetLength()).AsStringC());
1529 } else { 1524 } else {
1530 ThrowScriptErrorMessage(XFA_IDS_INVAlID_PROP_SET); 1525 Throw(XFA_IDS_INVAlID_PROP_SET);
1531 } 1526 }
1532 } 1527 }
1533 void CXFA_Node::Script_WsdlConnection_Execute(CFXJSE_Arguments* pArguments) { 1528 void CXFA_Node::Script_WsdlConnection_Execute(CFXJSE_Arguments* pArguments) {
1534 int32_t argc = pArguments->GetLength(); 1529 int32_t argc = pArguments->GetLength();
1535 if ((argc == 0) || (argc == 1)) { 1530 if ((argc == 0) || (argc == 1)) {
1536 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(), FALSE); 1531 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(), FALSE);
1537 } else { 1532 } else {
1538 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"execute"); 1533 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"execute");
1539 } 1534 }
1540 } 1535 }
1541 void CXFA_Node::Script_Delta_Restore(CFXJSE_Arguments* pArguments) { 1536 void CXFA_Node::Script_Delta_Restore(CFXJSE_Arguments* pArguments) {
1542 int32_t argc = pArguments->GetLength(); 1537 int32_t argc = pArguments->GetLength();
1543 if (argc == 0) { 1538 if (argc == 0) {
1544 } else { 1539 } else {
1545 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"restore"); 1540 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"restore");
1546 } 1541 }
1547 } 1542 }
1548 void CXFA_Node::Script_Delta_CurrentValue(CFXJSE_Value* pValue, 1543 void CXFA_Node::Script_Delta_CurrentValue(CFXJSE_Value* pValue,
1549 FX_BOOL bSetting, 1544 FX_BOOL bSetting,
1550 XFA_ATTRIBUTE eAttribute) {} 1545 XFA_ATTRIBUTE eAttribute) {}
1551 void CXFA_Node::Script_Delta_SavedValue(CFXJSE_Value* pValue, 1546 void CXFA_Node::Script_Delta_SavedValue(CFXJSE_Value* pValue,
1552 FX_BOOL bSetting, 1547 FX_BOOL bSetting,
1553 XFA_ATTRIBUTE eAttribute) {} 1548 XFA_ATTRIBUTE eAttribute) {}
1554 void CXFA_Node::Script_Delta_Target(CFXJSE_Value* pValue, 1549 void CXFA_Node::Script_Delta_Target(CFXJSE_Value* pValue,
1555 FX_BOOL bSetting, 1550 FX_BOOL bSetting,
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
1613 } 1608 }
1614 void CXFA_Node::Script_Som_ValidationMessage(CFXJSE_Value* pValue, 1609 void CXFA_Node::Script_Som_ValidationMessage(CFXJSE_Value* pValue,
1615 FX_BOOL bSetting, 1610 FX_BOOL bSetting,
1616 XFA_ATTRIBUTE eAttribute) { 1611 XFA_ATTRIBUTE eAttribute) {
1617 Script_Som_Message(pValue, bSetting, XFA_SOM_ValidationMessage); 1612 Script_Som_Message(pValue, bSetting, XFA_SOM_ValidationMessage);
1618 } 1613 }
1619 void CXFA_Node::Script_Field_Length(CFXJSE_Value* pValue, 1614 void CXFA_Node::Script_Field_Length(CFXJSE_Value* pValue,
1620 FX_BOOL bSetting, 1615 FX_BOOL bSetting,
1621 XFA_ATTRIBUTE eAttribute) { 1616 XFA_ATTRIBUTE eAttribute) {
1622 if (bSetting) { 1617 if (bSetting) {
1623 ThrowScriptErrorMessage(XFA_IDS_INVAlID_PROP_SET); 1618 Throw(XFA_IDS_INVAlID_PROP_SET);
1624 } else { 1619 } else {
1625 CXFA_WidgetData* pWidgetData = GetWidgetData(); 1620 CXFA_WidgetData* pWidgetData = GetWidgetData();
1626 if (!pWidgetData) { 1621 if (!pWidgetData) {
1627 FXJSE_Value_SetInteger(pValue, 0); 1622 FXJSE_Value_SetInteger(pValue, 0);
1628 return; 1623 return;
1629 } 1624 }
1630 FXJSE_Value_SetInteger(pValue, pWidgetData->CountChoiceListItems(TRUE)); 1625 FXJSE_Value_SetInteger(pValue, pWidgetData->CountChoiceListItems(TRUE));
1631 } 1626 }
1632 } 1627 }
1633 void CXFA_Node::Script_Som_DefaultValue(CFXJSE_Value* pValue, 1628 void CXFA_Node::Script_Som_DefaultValue(CFXJSE_Value* pValue,
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
1692 FXJSE_Value_SetUTF8String( 1687 FXJSE_Value_SetUTF8String(
1693 pValue, 1688 pValue,
1694 FX_UTF8Encode(content.c_str(), content.GetLength()).AsStringC()); 1689 FX_UTF8Encode(content.c_str(), content.GetLength()).AsStringC());
1695 } 1690 }
1696 } 1691 }
1697 } 1692 }
1698 void CXFA_Node::Script_Som_DefaultValue_Read(CFXJSE_Value* pValue, 1693 void CXFA_Node::Script_Som_DefaultValue_Read(CFXJSE_Value* pValue,
1699 FX_BOOL bSetting, 1694 FX_BOOL bSetting,
1700 XFA_ATTRIBUTE eAttribute) { 1695 XFA_ATTRIBUTE eAttribute) {
1701 if (bSetting) { 1696 if (bSetting) {
1702 ThrowScriptErrorMessage(XFA_IDS_INVAlID_PROP_SET); 1697 Throw(XFA_IDS_INVAlID_PROP_SET);
1703 return; 1698 return;
1704 } 1699 }
1705 CFX_WideString content = GetScriptContent(TRUE); 1700 CFX_WideString content = GetScriptContent(TRUE);
1706 if (content.IsEmpty()) { 1701 if (content.IsEmpty()) {
1707 FXJSE_Value_SetNull(pValue); 1702 FXJSE_Value_SetNull(pValue);
1708 } else { 1703 } else {
1709 FXJSE_Value_SetUTF8String( 1704 FXJSE_Value_SetUTF8String(
1710 pValue, 1705 pValue,
1711 FX_UTF8Encode(content.c_str(), content.GetLength()).AsStringC()); 1706 FX_UTF8Encode(content.c_str(), content.GetLength()).AsStringC());
1712 } 1707 }
(...skipping 198 matching lines...) Expand 10 before | Expand all | Expand 10 after
1911 if (!bSetting) { 1906 if (!bSetting) {
1912 CXFA_Node* pDataNode = GetBindData(); 1907 CXFA_Node* pDataNode = GetBindData();
1913 if (pDataNode) { 1908 if (pDataNode) {
1914 FXJSE_Value_Set( 1909 FXJSE_Value_Set(
1915 pValue, 1910 pValue,
1916 m_pDocument->GetScriptContext()->GetJSValueFromMap(pDataNode)); 1911 m_pDocument->GetScriptContext()->GetJSValueFromMap(pDataNode));
1917 } else { 1912 } else {
1918 FXJSE_Value_SetNull(pValue); 1913 FXJSE_Value_SetNull(pValue);
1919 } 1914 }
1920 } else { 1915 } else {
1921 ThrowScriptErrorMessage(XFA_IDS_INVAlID_PROP_SET); 1916 Throw(XFA_IDS_INVAlID_PROP_SET);
1922 } 1917 }
1923 } 1918 }
1924 void CXFA_Node::Script_Draw_DefaultValue(CFXJSE_Value* pValue, 1919 void CXFA_Node::Script_Draw_DefaultValue(CFXJSE_Value* pValue,
1925 FX_BOOL bSetting, 1920 FX_BOOL bSetting,
1926 XFA_ATTRIBUTE eAttribute) { 1921 XFA_ATTRIBUTE eAttribute) {
1927 if (bSetting) { 1922 if (bSetting) {
1928 if (FXJSE_Value_IsUTF8String(pValue)) { 1923 if (FXJSE_Value_IsUTF8String(pValue)) {
1929 CXFA_WidgetData* pWidgetData = GetWidgetData(); 1924 CXFA_WidgetData* pWidgetData = GetWidgetData();
1930 ASSERT(pWidgetData); 1925 ASSERT(pWidgetData);
1931 XFA_ELEMENT uiType = pWidgetData->GetUIType(); 1926 XFA_ELEMENT uiType = pWidgetData->GetUIType();
(...skipping 184 matching lines...) Expand 10 before | Expand all | Expand 10 after
2116 } 2111 }
2117 void CXFA_Node::Script_Som_MandatoryMessage(CFXJSE_Value* pValue, 2112 void CXFA_Node::Script_Som_MandatoryMessage(CFXJSE_Value* pValue,
2118 FX_BOOL bSetting, 2113 FX_BOOL bSetting,
2119 XFA_ATTRIBUTE eAttribute) { 2114 XFA_ATTRIBUTE eAttribute) {
2120 Script_Som_Message(pValue, bSetting, XFA_SOM_MandatoryMessage); 2115 Script_Som_Message(pValue, bSetting, XFA_SOM_MandatoryMessage);
2121 } 2116 }
2122 void CXFA_Node::Script_Field_ParentSubform(CFXJSE_Value* pValue, 2117 void CXFA_Node::Script_Field_ParentSubform(CFXJSE_Value* pValue,
2123 FX_BOOL bSetting, 2118 FX_BOOL bSetting,
2124 XFA_ATTRIBUTE eAttribute) { 2119 XFA_ATTRIBUTE eAttribute) {
2125 if (bSetting) { 2120 if (bSetting) {
2126 ThrowScriptErrorMessage(XFA_IDS_INVAlID_PROP_SET); 2121 Throw(XFA_IDS_INVAlID_PROP_SET);
2127 } else { 2122 } else {
2128 FXJSE_Value_SetNull(pValue); 2123 FXJSE_Value_SetNull(pValue);
2129 } 2124 }
2130 } 2125 }
2131 void CXFA_Node::Script_Field_SelectedIndex(CFXJSE_Value* pValue, 2126 void CXFA_Node::Script_Field_SelectedIndex(CFXJSE_Value* pValue,
2132 FX_BOOL bSetting, 2127 FX_BOOL bSetting,
2133 XFA_ATTRIBUTE eAttribute) { 2128 XFA_ATTRIBUTE eAttribute) {
2134 CXFA_WidgetData* pWidgetData = GetWidgetData(); 2129 CXFA_WidgetData* pWidgetData = GetWidgetData();
2135 if (!pWidgetData) { 2130 if (!pWidgetData) {
2136 return; 2131 return;
(...skipping 21 matching lines...) Expand all
2158 if (argc == 1) { 2153 if (argc == 1) {
2159 CFX_ByteString eventString = pArguments->GetUTF8String(0); 2154 CFX_ByteString eventString = pArguments->GetUTF8String(0);
2160 int32_t iRet = execSingleEventByName( 2155 int32_t iRet = execSingleEventByName(
2161 CFX_WideString::FromUTF8(eventString.AsStringC()).AsStringC(), 2156 CFX_WideString::FromUTF8(eventString.AsStringC()).AsStringC(),
2162 XFA_ELEMENT_Field); 2157 XFA_ELEMENT_Field);
2163 if (eventString == "validate") { 2158 if (eventString == "validate") {
2164 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(), 2159 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(),
2165 ((iRet == XFA_EVENTERROR_Error) ? FALSE : TRUE)); 2160 ((iRet == XFA_EVENTERROR_Error) ? FALSE : TRUE));
2166 } 2161 }
2167 } else { 2162 } else {
2168 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"execEvent"); 2163 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"execEvent");
2169 } 2164 }
2170 } 2165 }
2171 void CXFA_Node::Script_Field_ExecInitialize(CFXJSE_Arguments* pArguments) { 2166 void CXFA_Node::Script_Field_ExecInitialize(CFXJSE_Arguments* pArguments) {
2172 int32_t argc = pArguments->GetLength(); 2167 int32_t argc = pArguments->GetLength();
2173 if (argc == 0) { 2168 if (argc == 0) {
2174 CXFA_FFNotify* pNotify = m_pDocument->GetParser()->GetNotify(); 2169 CXFA_FFNotify* pNotify = m_pDocument->GetParser()->GetNotify();
2175 if (!pNotify) { 2170 if (!pNotify) {
2176 return; 2171 return;
2177 } 2172 }
2178 pNotify->ExecEventByDeepFirst(this, XFA_EVENT_Initialize, FALSE, FALSE); 2173 pNotify->ExecEventByDeepFirst(this, XFA_EVENT_Initialize, FALSE, FALSE);
2179 } else { 2174 } else {
2180 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, 2175 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"execInitialize");
2181 L"execInitialize");
2182 } 2176 }
2183 } 2177 }
2184 void CXFA_Node::Script_Field_DeleteItem(CFXJSE_Arguments* pArguments) { 2178 void CXFA_Node::Script_Field_DeleteItem(CFXJSE_Arguments* pArguments) {
2185 int32_t iLength = pArguments->GetLength(); 2179 int32_t iLength = pArguments->GetLength();
2186 if (iLength != 1) { 2180 if (iLength != 1) {
2187 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"deleteItem"); 2181 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"deleteItem");
2188 return; 2182 return;
2189 } 2183 }
2190 CXFA_WidgetData* pWidgetData = GetWidgetData(); 2184 CXFA_WidgetData* pWidgetData = GetWidgetData();
2191 if (!pWidgetData) { 2185 if (!pWidgetData) {
2192 return; 2186 return;
2193 } 2187 }
2194 int32_t iIndex = pArguments->GetInt32(0); 2188 int32_t iIndex = pArguments->GetInt32(0);
2195 FX_BOOL bValue = pWidgetData->DeleteItem(iIndex, TRUE, TRUE); 2189 FX_BOOL bValue = pWidgetData->DeleteItem(iIndex, TRUE, TRUE);
2196 CFXJSE_Value* pValue = pArguments->GetReturnValue(); 2190 CFXJSE_Value* pValue = pArguments->GetReturnValue();
2197 if (pValue) { 2191 if (pValue) {
2198 FXJSE_Value_SetBoolean(pValue, bValue); 2192 FXJSE_Value_SetBoolean(pValue, bValue);
2199 } 2193 }
2200 } 2194 }
2201 void CXFA_Node::Script_Field_GetSaveItem(CFXJSE_Arguments* pArguments) { 2195 void CXFA_Node::Script_Field_GetSaveItem(CFXJSE_Arguments* pArguments) {
2202 int32_t iLength = pArguments->GetLength(); 2196 int32_t iLength = pArguments->GetLength();
2203 if (iLength != 1) { 2197 if (iLength != 1) {
2204 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"getSaveItem"); 2198 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"getSaveItem");
2205 return; 2199 return;
2206 } 2200 }
2207 int32_t iIndex = pArguments->GetInt32(0); 2201 int32_t iIndex = pArguments->GetInt32(0);
2208 if (iIndex < 0) { 2202 if (iIndex < 0) {
2209 FXJSE_Value_SetNull(pArguments->GetReturnValue()); 2203 FXJSE_Value_SetNull(pArguments->GetReturnValue());
2210 return; 2204 return;
2211 } 2205 }
2212 CXFA_WidgetData* pWidgetData = GetWidgetData(); 2206 CXFA_WidgetData* pWidgetData = GetWidgetData();
2213 if (!pWidgetData) { 2207 if (!pWidgetData) {
2214 FXJSE_Value_SetNull(pArguments->GetReturnValue()); 2208 FXJSE_Value_SetNull(pArguments->GetReturnValue());
2215 return; 2209 return;
2216 } 2210 }
2217 CFX_WideString wsValue; 2211 CFX_WideString wsValue;
2218 FX_BOOL bHasItem = pWidgetData->GetChoiceListItem(wsValue, iIndex, TRUE); 2212 FX_BOOL bHasItem = pWidgetData->GetChoiceListItem(wsValue, iIndex, TRUE);
2219 if (bHasItem) { 2213 if (bHasItem) {
2220 FXJSE_Value_SetUTF8String( 2214 FXJSE_Value_SetUTF8String(
2221 pArguments->GetReturnValue(), 2215 pArguments->GetReturnValue(),
2222 FX_UTF8Encode(wsValue.c_str(), wsValue.GetLength()).AsStringC()); 2216 FX_UTF8Encode(wsValue.c_str(), wsValue.GetLength()).AsStringC());
2223 } else { 2217 } else {
2224 FXJSE_Value_SetNull(pArguments->GetReturnValue()); 2218 FXJSE_Value_SetNull(pArguments->GetReturnValue());
2225 } 2219 }
2226 } 2220 }
2227 void CXFA_Node::Script_Field_BoundItem(CFXJSE_Arguments* pArguments) { 2221 void CXFA_Node::Script_Field_BoundItem(CFXJSE_Arguments* pArguments) {
2228 int32_t iLength = pArguments->GetLength(); 2222 int32_t iLength = pArguments->GetLength();
2229 if (iLength != 1) { 2223 if (iLength != 1) {
2230 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"boundItem"); 2224 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"boundItem");
2231 return; 2225 return;
2232 } 2226 }
2233 CXFA_WidgetData* pWidgetData = GetWidgetData(); 2227 CXFA_WidgetData* pWidgetData = GetWidgetData();
2234 if (!pWidgetData) { 2228 if (!pWidgetData) {
2235 return; 2229 return;
2236 } 2230 }
2237 CFX_ByteString bsValue = pArguments->GetUTF8String(0); 2231 CFX_ByteString bsValue = pArguments->GetUTF8String(0);
2238 CFX_WideString wsValue = CFX_WideString::FromUTF8(bsValue.AsStringC()); 2232 CFX_WideString wsValue = CFX_WideString::FromUTF8(bsValue.AsStringC());
2239 CFX_WideString wsBoundValue; 2233 CFX_WideString wsBoundValue;
2240 pWidgetData->GetItemValue(wsValue.AsStringC(), wsBoundValue); 2234 pWidgetData->GetItemValue(wsValue.AsStringC(), wsBoundValue);
2241 CFXJSE_Value* pValue = pArguments->GetReturnValue(); 2235 CFXJSE_Value* pValue = pArguments->GetReturnValue();
2242 if (pValue) { 2236 if (pValue) {
2243 FXJSE_Value_SetUTF8String(pValue, FX_UTF8Encode(wsBoundValue).AsStringC()); 2237 FXJSE_Value_SetUTF8String(pValue, FX_UTF8Encode(wsBoundValue).AsStringC());
2244 } 2238 }
2245 } 2239 }
2246 void CXFA_Node::Script_Field_GetItemState(CFXJSE_Arguments* pArguments) { 2240 void CXFA_Node::Script_Field_GetItemState(CFXJSE_Arguments* pArguments) {
2247 int32_t iLength = pArguments->GetLength(); 2241 int32_t iLength = pArguments->GetLength();
2248 if (iLength != 1) { 2242 if (iLength != 1) {
2249 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, 2243 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"getItemState");
2250 L"getItemState");
2251 return; 2244 return;
2252 } 2245 }
2253 CXFA_WidgetData* pWidgetData = GetWidgetData(); 2246 CXFA_WidgetData* pWidgetData = GetWidgetData();
2254 if (!pWidgetData) { 2247 if (!pWidgetData) {
2255 return; 2248 return;
2256 } 2249 }
2257 int32_t iIndex = pArguments->GetInt32(0); 2250 int32_t iIndex = pArguments->GetInt32(0);
2258 FX_BOOL bValue = pWidgetData->GetItemState(iIndex); 2251 FX_BOOL bValue = pWidgetData->GetItemState(iIndex);
2259 CFXJSE_Value* pValue = pArguments->GetReturnValue(); 2252 CFXJSE_Value* pValue = pArguments->GetReturnValue();
2260 if (pValue) { 2253 if (pValue) {
2261 FXJSE_Value_SetBoolean(pValue, bValue); 2254 FXJSE_Value_SetBoolean(pValue, bValue);
2262 } 2255 }
2263 } 2256 }
2264 void CXFA_Node::Script_Field_ExecCalculate(CFXJSE_Arguments* pArguments) { 2257 void CXFA_Node::Script_Field_ExecCalculate(CFXJSE_Arguments* pArguments) {
2265 int32_t argc = pArguments->GetLength(); 2258 int32_t argc = pArguments->GetLength();
2266 if (argc == 0) { 2259 if (argc == 0) {
2267 CXFA_FFNotify* pNotify = m_pDocument->GetParser()->GetNotify(); 2260 CXFA_FFNotify* pNotify = m_pDocument->GetParser()->GetNotify();
2268 if (!pNotify) { 2261 if (!pNotify) {
2269 return; 2262 return;
2270 } 2263 }
2271 pNotify->ExecEventByDeepFirst(this, XFA_EVENT_Calculate, FALSE, FALSE); 2264 pNotify->ExecEventByDeepFirst(this, XFA_EVENT_Calculate, FALSE, FALSE);
2272 } else { 2265 } else {
2273 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, 2266 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"execCalculate");
2274 L"execCalculate");
2275 } 2267 }
2276 } 2268 }
2277 void CXFA_Node::Script_Field_SetItems(CFXJSE_Arguments* pArguments) {} 2269 void CXFA_Node::Script_Field_SetItems(CFXJSE_Arguments* pArguments) {}
2278 void CXFA_Node::Script_Field_GetDisplayItem(CFXJSE_Arguments* pArguments) { 2270 void CXFA_Node::Script_Field_GetDisplayItem(CFXJSE_Arguments* pArguments) {
2279 int32_t iLength = pArguments->GetLength(); 2271 int32_t iLength = pArguments->GetLength();
2280 if (iLength != 1) { 2272 if (iLength != 1) {
2281 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, 2273 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"getDisplayItem");
2282 L"getDisplayItem");
2283 return; 2274 return;
2284 } 2275 }
2285 int32_t iIndex = pArguments->GetInt32(0); 2276 int32_t iIndex = pArguments->GetInt32(0);
2286 if (iIndex < 0) { 2277 if (iIndex < 0) {
2287 FXJSE_Value_SetNull(pArguments->GetReturnValue()); 2278 FXJSE_Value_SetNull(pArguments->GetReturnValue());
2288 return; 2279 return;
2289 } 2280 }
2290 CXFA_WidgetData* pWidgetData = GetWidgetData(); 2281 CXFA_WidgetData* pWidgetData = GetWidgetData();
2291 if (!pWidgetData) { 2282 if (!pWidgetData) {
2292 FXJSE_Value_SetNull(pArguments->GetReturnValue()); 2283 FXJSE_Value_SetNull(pArguments->GetReturnValue());
2293 return; 2284 return;
2294 } 2285 }
2295 CFX_WideString wsValue; 2286 CFX_WideString wsValue;
2296 FX_BOOL bHasItem = pWidgetData->GetChoiceListItem(wsValue, iIndex, FALSE); 2287 FX_BOOL bHasItem = pWidgetData->GetChoiceListItem(wsValue, iIndex, FALSE);
2297 if (bHasItem) { 2288 if (bHasItem) {
2298 FXJSE_Value_SetUTF8String( 2289 FXJSE_Value_SetUTF8String(
2299 pArguments->GetReturnValue(), 2290 pArguments->GetReturnValue(),
2300 FX_UTF8Encode(wsValue.c_str(), wsValue.GetLength()).AsStringC()); 2291 FX_UTF8Encode(wsValue.c_str(), wsValue.GetLength()).AsStringC());
2301 } else { 2292 } else {
2302 FXJSE_Value_SetNull(pArguments->GetReturnValue()); 2293 FXJSE_Value_SetNull(pArguments->GetReturnValue());
2303 } 2294 }
2304 } 2295 }
2305 void CXFA_Node::Script_Field_SetItemState(CFXJSE_Arguments* pArguments) { 2296 void CXFA_Node::Script_Field_SetItemState(CFXJSE_Arguments* pArguments) {
2306 int32_t iLength = pArguments->GetLength(); 2297 int32_t iLength = pArguments->GetLength();
2307 if (iLength != 2) { 2298 if (iLength != 2) {
2308 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, 2299 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"setItemState");
2309 L"setItemState");
2310 return; 2300 return;
2311 } 2301 }
2312 CXFA_WidgetData* pWidgetData = GetWidgetData(); 2302 CXFA_WidgetData* pWidgetData = GetWidgetData();
2313 if (!pWidgetData) 2303 if (!pWidgetData)
2314 return; 2304 return;
2315 2305
2316 int32_t iIndex = pArguments->GetInt32(0); 2306 int32_t iIndex = pArguments->GetInt32(0);
2317 if (pArguments->GetInt32(1) != 0) { 2307 if (pArguments->GetInt32(1) != 0) {
2318 pWidgetData->SetItemState(iIndex, TRUE, true, TRUE, TRUE); 2308 pWidgetData->SetItemState(iIndex, TRUE, true, TRUE, TRUE);
2319 } else { 2309 } else {
2320 if (pWidgetData->GetItemState(iIndex)) 2310 if (pWidgetData->GetItemState(iIndex))
2321 pWidgetData->SetItemState(iIndex, FALSE, true, TRUE, TRUE); 2311 pWidgetData->SetItemState(iIndex, FALSE, true, TRUE, TRUE);
2322 } 2312 }
2323 } 2313 }
2324 void CXFA_Node::Script_Field_AddItem(CFXJSE_Arguments* pArguments) { 2314 void CXFA_Node::Script_Field_AddItem(CFXJSE_Arguments* pArguments) {
2325 int32_t iLength = pArguments->GetLength(); 2315 int32_t iLength = pArguments->GetLength();
2326 if (iLength < 1 || iLength > 2) { 2316 if (iLength < 1 || iLength > 2) {
2327 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"addItem"); 2317 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"addItem");
2328 return; 2318 return;
2329 } 2319 }
2330 CXFA_WidgetData* pWidgetData = GetWidgetData(); 2320 CXFA_WidgetData* pWidgetData = GetWidgetData();
2331 if (!pWidgetData) { 2321 if (!pWidgetData) {
2332 return; 2322 return;
2333 } 2323 }
2334 CFX_WideString wsLabel; 2324 CFX_WideString wsLabel;
2335 CFX_WideString wsValue; 2325 CFX_WideString wsValue;
2336 if (iLength >= 1) { 2326 if (iLength >= 1) {
2337 CFX_ByteString bsLabel = pArguments->GetUTF8String(0); 2327 CFX_ByteString bsLabel = pArguments->GetUTF8String(0);
(...skipping 11 matching lines...) Expand all
2349 CXFA_FFNotify* pNotify = m_pDocument->GetParser()->GetNotify(); 2339 CXFA_FFNotify* pNotify = m_pDocument->GetParser()->GetNotify();
2350 if (!pNotify) { 2340 if (!pNotify) {
2351 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(), FALSE); 2341 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(), FALSE);
2352 } else { 2342 } else {
2353 int32_t iRet = 2343 int32_t iRet =
2354 pNotify->ExecEventByDeepFirst(this, XFA_EVENT_Validate, FALSE, FALSE); 2344 pNotify->ExecEventByDeepFirst(this, XFA_EVENT_Validate, FALSE, FALSE);
2355 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(), 2345 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(),
2356 ((iRet == XFA_EVENTERROR_Error) ? FALSE : TRUE)); 2346 ((iRet == XFA_EVENTERROR_Error) ? FALSE : TRUE));
2357 } 2347 }
2358 } else { 2348 } else {
2359 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, 2349 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"execValidate");
2360 L"execValidate");
2361 } 2350 }
2362 } 2351 }
2363 void CXFA_Node::Script_ExclGroup_ErrorText(CFXJSE_Value* pValue, 2352 void CXFA_Node::Script_ExclGroup_ErrorText(CFXJSE_Value* pValue,
2364 FX_BOOL bSetting, 2353 FX_BOOL bSetting,
2365 XFA_ATTRIBUTE eAttribute) { 2354 XFA_ATTRIBUTE eAttribute) {
2366 if (!bSetting) { 2355 if (!bSetting) {
2367 } else { 2356 } else {
2368 ThrowScriptErrorMessage(XFA_IDS_INVAlID_PROP_SET); 2357 Throw(XFA_IDS_INVAlID_PROP_SET);
2369 } 2358 }
2370 } 2359 }
2371 void CXFA_Node::Script_ExclGroup_DefaultAndRawValue(CFXJSE_Value* pValue, 2360 void CXFA_Node::Script_ExclGroup_DefaultAndRawValue(CFXJSE_Value* pValue,
2372 FX_BOOL bSetting, 2361 FX_BOOL bSetting,
2373 XFA_ATTRIBUTE eAttribute) { 2362 XFA_ATTRIBUTE eAttribute) {
2374 CXFA_WidgetData* pWidgetData = GetWidgetData(); 2363 CXFA_WidgetData* pWidgetData = GetWidgetData();
2375 if (!pWidgetData) { 2364 if (!pWidgetData) {
2376 return; 2365 return;
2377 } 2366 }
2378 if (bSetting) { 2367 if (bSetting) {
(...skipping 16 matching lines...) Expand all
2395 FX_BOOL bSetting, 2384 FX_BOOL bSetting,
2396 XFA_ATTRIBUTE eAttribute) {} 2385 XFA_ATTRIBUTE eAttribute) {}
2397 void CXFA_Node::Script_ExclGroup_ExecEvent(CFXJSE_Arguments* pArguments) { 2386 void CXFA_Node::Script_ExclGroup_ExecEvent(CFXJSE_Arguments* pArguments) {
2398 int32_t argc = pArguments->GetLength(); 2387 int32_t argc = pArguments->GetLength();
2399 if (argc == 1) { 2388 if (argc == 1) {
2400 CFX_ByteString eventString = pArguments->GetUTF8String(0); 2389 CFX_ByteString eventString = pArguments->GetUTF8String(0);
2401 execSingleEventByName( 2390 execSingleEventByName(
2402 CFX_WideString::FromUTF8(eventString.AsStringC()).AsStringC(), 2391 CFX_WideString::FromUTF8(eventString.AsStringC()).AsStringC(),
2403 XFA_ELEMENT_ExclGroup); 2392 XFA_ELEMENT_ExclGroup);
2404 } else { 2393 } else {
2405 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"execEvent"); 2394 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"execEvent");
2406 } 2395 }
2407 } 2396 }
2408 2397
2409 void CXFA_Node::Script_ExclGroup_SelectedMember(CFXJSE_Arguments* pArguments) { 2398 void CXFA_Node::Script_ExclGroup_SelectedMember(CFXJSE_Arguments* pArguments) {
2410 int32_t argc = pArguments->GetLength(); 2399 int32_t argc = pArguments->GetLength();
2411 if (argc < 0 || argc > 1) { 2400 if (argc < 0 || argc > 1) {
2412 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, 2401 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"selectedMember");
2413 L"selectedMember");
2414 return; 2402 return;
2415 } 2403 }
2416 2404
2417 CXFA_WidgetData* pWidgetData = GetWidgetData(); 2405 CXFA_WidgetData* pWidgetData = GetWidgetData();
2418 if (!pWidgetData) { 2406 if (!pWidgetData) {
2419 FXJSE_Value_SetNull(pArguments->GetReturnValue()); 2407 FXJSE_Value_SetNull(pArguments->GetReturnValue());
2420 return; 2408 return;
2421 } 2409 }
2422 2410
2423 CXFA_Node* pReturnNode = nullptr; 2411 CXFA_Node* pReturnNode = nullptr;
(...skipping 16 matching lines...) Expand all
2440 2428
2441 void CXFA_Node::Script_ExclGroup_ExecInitialize(CFXJSE_Arguments* pArguments) { 2429 void CXFA_Node::Script_ExclGroup_ExecInitialize(CFXJSE_Arguments* pArguments) {
2442 int32_t argc = pArguments->GetLength(); 2430 int32_t argc = pArguments->GetLength();
2443 if (argc == 0) { 2431 if (argc == 0) {
2444 CXFA_FFNotify* pNotify = m_pDocument->GetParser()->GetNotify(); 2432 CXFA_FFNotify* pNotify = m_pDocument->GetParser()->GetNotify();
2445 if (!pNotify) { 2433 if (!pNotify) {
2446 return; 2434 return;
2447 } 2435 }
2448 pNotify->ExecEventByDeepFirst(this, XFA_EVENT_Initialize); 2436 pNotify->ExecEventByDeepFirst(this, XFA_EVENT_Initialize);
2449 } else { 2437 } else {
2450 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, 2438 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"execInitialize");
2451 L"execInitialize");
2452 } 2439 }
2453 } 2440 }
2454 void CXFA_Node::Script_ExclGroup_ExecCalculate(CFXJSE_Arguments* pArguments) { 2441 void CXFA_Node::Script_ExclGroup_ExecCalculate(CFXJSE_Arguments* pArguments) {
2455 int32_t argc = pArguments->GetLength(); 2442 int32_t argc = pArguments->GetLength();
2456 if (argc == 0) { 2443 if (argc == 0) {
2457 CXFA_FFNotify* pNotify = m_pDocument->GetParser()->GetNotify(); 2444 CXFA_FFNotify* pNotify = m_pDocument->GetParser()->GetNotify();
2458 if (!pNotify) { 2445 if (!pNotify) {
2459 return; 2446 return;
2460 } 2447 }
2461 pNotify->ExecEventByDeepFirst(this, XFA_EVENT_Calculate); 2448 pNotify->ExecEventByDeepFirst(this, XFA_EVENT_Calculate);
2462 } else { 2449 } else {
2463 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, 2450 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"execCalculate");
2464 L"execCalculate");
2465 } 2451 }
2466 } 2452 }
2467 void CXFA_Node::Script_ExclGroup_ExecValidate(CFXJSE_Arguments* pArguments) { 2453 void CXFA_Node::Script_ExclGroup_ExecValidate(CFXJSE_Arguments* pArguments) {
2468 int32_t argc = pArguments->GetLength(); 2454 int32_t argc = pArguments->GetLength();
2469 if (argc == 0) { 2455 if (argc == 0) {
2470 CXFA_FFNotify* pNotify = m_pDocument->GetParser()->GetNotify(); 2456 CXFA_FFNotify* pNotify = m_pDocument->GetParser()->GetNotify();
2471 if (!pNotify) { 2457 if (!pNotify) {
2472 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(), FALSE); 2458 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(), FALSE);
2473 } else { 2459 } else {
2474 int32_t iRet = pNotify->ExecEventByDeepFirst(this, XFA_EVENT_Validate); 2460 int32_t iRet = pNotify->ExecEventByDeepFirst(this, XFA_EVENT_Validate);
2475 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(), 2461 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(),
2476 ((iRet == XFA_EVENTERROR_Error) ? FALSE : TRUE)); 2462 ((iRet == XFA_EVENTERROR_Error) ? FALSE : TRUE));
2477 } 2463 }
2478 } else { 2464 } else {
2479 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, 2465 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"execValidate");
2480 L"execValidate");
2481 } 2466 }
2482 } 2467 }
2483 static CXFA_Node* XFA_ScriptInstanceManager_GetItem(CXFA_Node* pInstMgrNode, 2468 static CXFA_Node* XFA_ScriptInstanceManager_GetItem(CXFA_Node* pInstMgrNode,
2484 int32_t iIndex) { 2469 int32_t iIndex) {
2485 ASSERT(pInstMgrNode); 2470 ASSERT(pInstMgrNode);
2486 int32_t iCount = 0; 2471 int32_t iCount = 0;
2487 uint32_t dwNameHash = 0; 2472 uint32_t dwNameHash = 0;
2488 for (CXFA_Node* pNode = pInstMgrNode->GetNodeItem(XFA_NODEITEM_NextSibling); 2473 for (CXFA_Node* pNode = pInstMgrNode->GetNodeItem(XFA_NODEITEM_NextSibling);
2489 pNode; pNode = pNode->GetNodeItem(XFA_NODEITEM_NextSibling)) { 2474 pNode; pNode = pNode->GetNodeItem(XFA_NODEITEM_NextSibling)) {
2490 XFA_ELEMENT eCurType = pNode->GetClassID(); 2475 XFA_ELEMENT eCurType = pNode->GetClassID();
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after
2567 } 2552 }
2568 } 2553 }
2569 if (pInstanceMgr) { 2554 if (pInstanceMgr) {
2570 FXJSE_Value_Set( 2555 FXJSE_Value_Set(
2571 pValue, 2556 pValue,
2572 m_pDocument->GetScriptContext()->GetJSValueFromMap(pInstanceMgr)); 2557 m_pDocument->GetScriptContext()->GetJSValueFromMap(pInstanceMgr));
2573 } else { 2558 } else {
2574 FXJSE_Value_SetNull(pValue); 2559 FXJSE_Value_SetNull(pValue);
2575 } 2560 }
2576 } else { 2561 } else {
2577 ThrowScriptErrorMessage(XFA_IDS_INVAlID_PROP_SET); 2562 Throw(XFA_IDS_INVAlID_PROP_SET);
2578 } 2563 }
2579 } 2564 }
2580 void CXFA_Node::Script_Subform_Locale(CFXJSE_Value* pValue, 2565 void CXFA_Node::Script_Subform_Locale(CFXJSE_Value* pValue,
2581 FX_BOOL bSetting, 2566 FX_BOOL bSetting,
2582 XFA_ATTRIBUTE eAttribute) { 2567 XFA_ATTRIBUTE eAttribute) {
2583 if (bSetting) { 2568 if (bSetting) {
2584 CFX_ByteString bsLocaleName; 2569 CFX_ByteString bsLocaleName;
2585 FXJSE_Value_ToUTF8String(pValue, bsLocaleName); 2570 FXJSE_Value_ToUTF8String(pValue, bsLocaleName);
2586 SetCData(XFA_ATTRIBUTE_Locale, 2571 SetCData(XFA_ATTRIBUTE_Locale,
2587 CFX_WideString::FromUTF8(bsLocaleName.AsStringC()), true, TRUE); 2572 CFX_WideString::FromUTF8(bsLocaleName.AsStringC()), true, TRUE);
2588 } else { 2573 } else {
2589 CFX_WideString wsLocaleName; 2574 CFX_WideString wsLocaleName;
2590 GetLocaleName(wsLocaleName); 2575 GetLocaleName(wsLocaleName);
2591 FXJSE_Value_SetUTF8String( 2576 FXJSE_Value_SetUTF8String(
2592 pValue, FX_UTF8Encode(wsLocaleName.c_str(), wsLocaleName.GetLength()) 2577 pValue, FX_UTF8Encode(wsLocaleName.c_str(), wsLocaleName.GetLength())
2593 .AsStringC()); 2578 .AsStringC());
2594 } 2579 }
2595 } 2580 }
2596 void CXFA_Node::Script_Subform_ExecEvent(CFXJSE_Arguments* pArguments) { 2581 void CXFA_Node::Script_Subform_ExecEvent(CFXJSE_Arguments* pArguments) {
2597 int32_t argc = pArguments->GetLength(); 2582 int32_t argc = pArguments->GetLength();
2598 if (argc == 1) { 2583 if (argc == 1) {
2599 CFX_ByteString eventString = pArguments->GetUTF8String(0); 2584 CFX_ByteString eventString = pArguments->GetUTF8String(0);
2600 execSingleEventByName( 2585 execSingleEventByName(
2601 CFX_WideString::FromUTF8(eventString.AsStringC()).AsStringC(), 2586 CFX_WideString::FromUTF8(eventString.AsStringC()).AsStringC(),
2602 XFA_ELEMENT_Subform); 2587 XFA_ELEMENT_Subform);
2603 } else { 2588 } else {
2604 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"execEvent"); 2589 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"execEvent");
2605 } 2590 }
2606 } 2591 }
2607 void CXFA_Node::Script_Subform_ExecInitialize(CFXJSE_Arguments* pArguments) { 2592 void CXFA_Node::Script_Subform_ExecInitialize(CFXJSE_Arguments* pArguments) {
2608 int32_t argc = pArguments->GetLength(); 2593 int32_t argc = pArguments->GetLength();
2609 if (argc == 0) { 2594 if (argc == 0) {
2610 CXFA_FFNotify* pNotify = m_pDocument->GetParser()->GetNotify(); 2595 CXFA_FFNotify* pNotify = m_pDocument->GetParser()->GetNotify();
2611 if (!pNotify) { 2596 if (!pNotify) {
2612 return; 2597 return;
2613 } 2598 }
2614 pNotify->ExecEventByDeepFirst(this, XFA_EVENT_Initialize); 2599 pNotify->ExecEventByDeepFirst(this, XFA_EVENT_Initialize);
2615 } else { 2600 } else {
2616 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, 2601 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"execInitialize");
2617 L"execInitialize");
2618 } 2602 }
2619 } 2603 }
2620 void CXFA_Node::Script_Subform_ExecCalculate(CFXJSE_Arguments* pArguments) { 2604 void CXFA_Node::Script_Subform_ExecCalculate(CFXJSE_Arguments* pArguments) {
2621 int32_t argc = pArguments->GetLength(); 2605 int32_t argc = pArguments->GetLength();
2622 if (argc == 0) { 2606 if (argc == 0) {
2623 CXFA_FFNotify* pNotify = m_pDocument->GetParser()->GetNotify(); 2607 CXFA_FFNotify* pNotify = m_pDocument->GetParser()->GetNotify();
2624 if (!pNotify) { 2608 if (!pNotify) {
2625 return; 2609 return;
2626 } 2610 }
2627 pNotify->ExecEventByDeepFirst(this, XFA_EVENT_Calculate); 2611 pNotify->ExecEventByDeepFirst(this, XFA_EVENT_Calculate);
2628 } else { 2612 } else {
2629 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, 2613 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"execCalculate");
2630 L"execCalculate");
2631 } 2614 }
2632 } 2615 }
2633 void CXFA_Node::Script_Subform_ExecValidate(CFXJSE_Arguments* pArguments) { 2616 void CXFA_Node::Script_Subform_ExecValidate(CFXJSE_Arguments* pArguments) {
2634 int32_t argc = pArguments->GetLength(); 2617 int32_t argc = pArguments->GetLength();
2635 if (argc == 0) { 2618 if (argc == 0) {
2636 CXFA_FFNotify* pNotify = m_pDocument->GetParser()->GetNotify(); 2619 CXFA_FFNotify* pNotify = m_pDocument->GetParser()->GetNotify();
2637 if (!pNotify) { 2620 if (!pNotify) {
2638 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(), FALSE); 2621 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(), FALSE);
2639 } else { 2622 } else {
2640 int32_t iRet = pNotify->ExecEventByDeepFirst(this, XFA_EVENT_Validate); 2623 int32_t iRet = pNotify->ExecEventByDeepFirst(this, XFA_EVENT_Validate);
2641 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(), 2624 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(),
2642 ((iRet == XFA_EVENTERROR_Error) ? FALSE : TRUE)); 2625 ((iRet == XFA_EVENTERROR_Error) ? FALSE : TRUE));
2643 } 2626 }
2644 } else { 2627 } else {
2645 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, 2628 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"execValidate");
2646 L"execValidate");
2647 } 2629 }
2648 } 2630 }
2649 void CXFA_Node::Script_Subform_GetInvalidObjects(CFXJSE_Arguments* pArguments) { 2631 void CXFA_Node::Script_Subform_GetInvalidObjects(CFXJSE_Arguments* pArguments) {
2650 int32_t argc = pArguments->GetLength(); 2632 int32_t argc = pArguments->GetLength();
2651 if (argc == 0) { 2633 if (argc == 0) {
2652 } else { 2634 } else {
2653 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, 2635 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"getInvalidObjects");
2654 L"getInvalidObjects");
2655 } 2636 }
2656 } 2637 }
2657 int32_t CXFA_Node::Subform_and_SubformSet_InstanceIndex() { 2638 int32_t CXFA_Node::Subform_and_SubformSet_InstanceIndex() {
2658 int32_t index = 0; 2639 int32_t index = 0;
2659 for (CXFA_Node* pNode = GetNodeItem(XFA_NODEITEM_PrevSibling); pNode; 2640 for (CXFA_Node* pNode = GetNodeItem(XFA_NODEITEM_PrevSibling); pNode;
2660 pNode = pNode->GetNodeItem(XFA_NODEITEM_PrevSibling)) { 2641 pNode = pNode->GetNodeItem(XFA_NODEITEM_PrevSibling)) {
2661 if ((pNode->GetClassID() == XFA_ELEMENT_Subform) || 2642 if ((pNode->GetClassID() == XFA_ELEMENT_Subform) ||
2662 (pNode->GetClassID() == XFA_ELEMENT_SubformSet)) { 2643 (pNode->GetClassID() == XFA_ELEMENT_SubformSet)) {
2663 index++; 2644 index++;
2664 } else { 2645 } else {
2665 break; 2646 break;
2666 } 2647 }
2667 } 2648 }
2668 return index; 2649 return index;
2669 } 2650 }
2670 void CXFA_Node::Script_Template_FormNodes(CFXJSE_Arguments* pArguments) { 2651 void CXFA_Node::Script_Template_FormNodes(CFXJSE_Arguments* pArguments) {
2671 int32_t argc = pArguments->GetLength(); 2652 int32_t argc = pArguments->GetLength();
2672 if (argc == 1) { 2653 if (argc == 1) {
2673 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(), TRUE); 2654 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(), TRUE);
2674 } else { 2655 } else {
2675 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"formNodes"); 2656 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"formNodes");
2676 } 2657 }
2677 } 2658 }
2678 void CXFA_Node::Script_Template_Remerge(CFXJSE_Arguments* pArguments) { 2659 void CXFA_Node::Script_Template_Remerge(CFXJSE_Arguments* pArguments) {
2679 int32_t argc = pArguments->GetLength(); 2660 int32_t argc = pArguments->GetLength();
2680 if (argc == 0) { 2661 if (argc == 0) {
2681 m_pDocument->DoDataRemerge(TRUE); 2662 m_pDocument->DoDataRemerge(TRUE);
2682 } else { 2663 } else {
2683 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"remerge"); 2664 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"remerge");
2684 } 2665 }
2685 } 2666 }
2686 void CXFA_Node::Script_Template_ExecInitialize(CFXJSE_Arguments* pArguments) { 2667 void CXFA_Node::Script_Template_ExecInitialize(CFXJSE_Arguments* pArguments) {
2687 int32_t argc = pArguments->GetLength(); 2668 int32_t argc = pArguments->GetLength();
2688 if (argc == 0) { 2669 if (argc == 0) {
2689 CXFA_WidgetData* pWidgetData = GetWidgetData(); 2670 CXFA_WidgetData* pWidgetData = GetWidgetData();
2690 if (!pWidgetData) { 2671 if (!pWidgetData) {
2691 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(), FALSE); 2672 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(), FALSE);
2692 } else { 2673 } else {
2693 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(), TRUE); 2674 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(), TRUE);
2694 } 2675 }
2695 } else { 2676 } else {
2696 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, 2677 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"execInitialize");
2697 L"execInitialize");
2698 } 2678 }
2699 } 2679 }
2700 void CXFA_Node::Script_Template_CreateNode(CFXJSE_Arguments* pArguments) { 2680 void CXFA_Node::Script_Template_CreateNode(CFXJSE_Arguments* pArguments) {
2701 int32_t argc = pArguments->GetLength(); 2681 int32_t argc = pArguments->GetLength();
2702 if ((argc > 0) && (argc < 4)) { 2682 if ((argc > 0) && (argc < 4)) {
2703 CFX_WideString strTagName; 2683 CFX_WideString strTagName;
2704 CFX_WideString strName; 2684 CFX_WideString strName;
2705 CFX_WideString strNameSpace; 2685 CFX_WideString strNameSpace;
2706 CFX_ByteString bsTagName = pArguments->GetUTF8String(0); 2686 CFX_ByteString bsTagName = pArguments->GetUTF8String(0);
2707 strTagName = CFX_WideString::FromUTF8(bsTagName.AsStringC()); 2687 strTagName = CFX_WideString::FromUTF8(bsTagName.AsStringC());
(...skipping 15 matching lines...) Expand all
2723 if (XFA_GetAttributeOfElement(pElement->eName, XFA_ATTRIBUTE_Name, 2703 if (XFA_GetAttributeOfElement(pElement->eName, XFA_ATTRIBUTE_Name,
2724 XFA_XDPPACKET_UNKNOWN)) { 2704 XFA_XDPPACKET_UNKNOWN)) {
2725 pNewNode->SetAttribute(XFA_ATTRIBUTE_Name, strName.AsStringC(), true); 2705 pNewNode->SetAttribute(XFA_ATTRIBUTE_Name, strName.AsStringC(), true);
2726 if (pNewNode->GetPacketID() == XFA_XDPPACKET_Datasets) { 2706 if (pNewNode->GetPacketID() == XFA_XDPPACKET_Datasets) {
2727 pNewNode->CreateXMLMappingNode(); 2707 pNewNode->CreateXMLMappingNode();
2728 } 2708 }
2729 FXJSE_Value_Set( 2709 FXJSE_Value_Set(
2730 pArguments->GetReturnValue(), 2710 pArguments->GetReturnValue(),
2731 m_pDocument->GetScriptContext()->GetJSValueFromMap(pNewNode)); 2711 m_pDocument->GetScriptContext()->GetJSValueFromMap(pNewNode));
2732 } else { 2712 } else {
2733 ThrowScriptErrorMessage(XFA_IDS_NOT_HAVE_PROPERTY, strTagName.c_str(), 2713 Throw(XFA_IDS_NOT_HAVE_PROPERTY, strTagName.c_str(), L"name");
2734 L"name");
2735 } 2714 }
2736 } else { 2715 } else {
2737 FXJSE_Value_Set( 2716 FXJSE_Value_Set(
2738 pArguments->GetReturnValue(), 2717 pArguments->GetReturnValue(),
2739 m_pDocument->GetScriptContext()->GetJSValueFromMap(pNewNode)); 2718 m_pDocument->GetScriptContext()->GetJSValueFromMap(pNewNode));
2740 } 2719 }
2741 } 2720 }
2742 } else { 2721 } else {
2743 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"createNode"); 2722 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"createNode");
2744 } 2723 }
2745 } 2724 }
2746 void CXFA_Node::Script_Template_Recalculate(CFXJSE_Arguments* pArguments) { 2725 void CXFA_Node::Script_Template_Recalculate(CFXJSE_Arguments* pArguments) {
2747 if (pArguments->GetLength() == 1) { 2726 if (pArguments->GetLength() == 1) {
2748 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(), TRUE); 2727 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(), TRUE);
2749 } else { 2728 } else {
2750 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"recalculate"); 2729 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"recalculate");
2751 } 2730 }
2752 } 2731 }
2753 void CXFA_Node::Script_Template_ExecCalculate(CFXJSE_Arguments* pArguments) { 2732 void CXFA_Node::Script_Template_ExecCalculate(CFXJSE_Arguments* pArguments) {
2754 int32_t argc = pArguments->GetLength(); 2733 int32_t argc = pArguments->GetLength();
2755 if (argc == 0) { 2734 if (argc == 0) {
2756 CXFA_WidgetData* pWidgetData = GetWidgetData(); 2735 CXFA_WidgetData* pWidgetData = GetWidgetData();
2757 if (!pWidgetData) { 2736 if (!pWidgetData) {
2758 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(), FALSE); 2737 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(), FALSE);
2759 } else { 2738 } else {
2760 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(), TRUE); 2739 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(), TRUE);
2761 } 2740 }
2762 } else { 2741 } else {
2763 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, 2742 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"execCalculate");
2764 L"execCalculate");
2765 } 2743 }
2766 } 2744 }
2767 void CXFA_Node::Script_Template_ExecValidate(CFXJSE_Arguments* pArguments) { 2745 void CXFA_Node::Script_Template_ExecValidate(CFXJSE_Arguments* pArguments) {
2768 int32_t argc = pArguments->GetLength(); 2746 int32_t argc = pArguments->GetLength();
2769 if (argc == 0) { 2747 if (argc == 0) {
2770 CXFA_WidgetData* pWidgetData = GetWidgetData(); 2748 CXFA_WidgetData* pWidgetData = GetWidgetData();
2771 if (!pWidgetData) { 2749 if (!pWidgetData) {
2772 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(), FALSE); 2750 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(), FALSE);
2773 } else { 2751 } else {
2774 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(), TRUE); 2752 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(), TRUE);
2775 } 2753 }
2776 } else { 2754 } else {
2777 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, 2755 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"execValidate");
2778 L"execValidate");
2779 } 2756 }
2780 } 2757 }
2781 void CXFA_Node::Script_Manifest_Evaluate(CFXJSE_Arguments* pArguments) { 2758 void CXFA_Node::Script_Manifest_Evaluate(CFXJSE_Arguments* pArguments) {
2782 int32_t argc = pArguments->GetLength(); 2759 int32_t argc = pArguments->GetLength();
2783 if (argc == 0) { 2760 if (argc == 0) {
2784 CXFA_WidgetData* pWidgetData = GetWidgetData(); 2761 CXFA_WidgetData* pWidgetData = GetWidgetData();
2785 if (!pWidgetData) { 2762 if (!pWidgetData) {
2786 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(), FALSE); 2763 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(), FALSE);
2787 } else { 2764 } else {
2788 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(), TRUE); 2765 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(), TRUE);
2789 } 2766 }
2790 } else { 2767 } else {
2791 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"evaluate"); 2768 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"evaluate");
2792 } 2769 }
2793 } 2770 }
2794 void CXFA_Node::Script_InstanceManager_Max(CFXJSE_Value* pValue, 2771 void CXFA_Node::Script_InstanceManager_Max(CFXJSE_Value* pValue,
2795 FX_BOOL bSetting, 2772 FX_BOOL bSetting,
2796 XFA_ATTRIBUTE eAttribute) { 2773 XFA_ATTRIBUTE eAttribute) {
2797 if (bSetting) { 2774 if (bSetting) {
2798 ThrowScriptErrorMessage(XFA_IDS_INVAlID_PROP_SET); 2775 Throw(XFA_IDS_INVAlID_PROP_SET);
2799 return; 2776 return;
2800 } 2777 }
2801 CXFA_Occur nodeOccur(GetOccurNode()); 2778 CXFA_Occur nodeOccur(GetOccurNode());
2802 FXJSE_Value_SetInteger(pValue, nodeOccur.GetMax()); 2779 FXJSE_Value_SetInteger(pValue, nodeOccur.GetMax());
2803 } 2780 }
2804 void CXFA_Node::Script_InstanceManager_Min(CFXJSE_Value* pValue, 2781 void CXFA_Node::Script_InstanceManager_Min(CFXJSE_Value* pValue,
2805 FX_BOOL bSetting, 2782 FX_BOOL bSetting,
2806 XFA_ATTRIBUTE eAttribute) { 2783 XFA_ATTRIBUTE eAttribute) {
2807 if (bSetting) { 2784 if (bSetting) {
2808 ThrowScriptErrorMessage(XFA_IDS_INVAlID_PROP_SET); 2785 Throw(XFA_IDS_INVAlID_PROP_SET);
2809 return; 2786 return;
2810 } 2787 }
2811 CXFA_Occur nodeOccur(GetOccurNode()); 2788 CXFA_Occur nodeOccur(GetOccurNode());
2812 FXJSE_Value_SetInteger(pValue, nodeOccur.GetMin()); 2789 FXJSE_Value_SetInteger(pValue, nodeOccur.GetMin());
2813 } 2790 }
2814 static int32_t XFA_ScriptInstanceManager_GetCount(CXFA_Node* pInstMgrNode) { 2791 static int32_t XFA_ScriptInstanceManager_GetCount(CXFA_Node* pInstMgrNode) {
2815 ASSERT(pInstMgrNode); 2792 ASSERT(pInstMgrNode);
2816 int32_t iCount = 0; 2793 int32_t iCount = 0;
2817 uint32_t dwNameHash = 0; 2794 uint32_t dwNameHash = 0;
2818 for (CXFA_Node* pNode = pInstMgrNode->GetNodeItem(XFA_NODEITEM_NextSibling); 2795 for (CXFA_Node* pNode = pInstMgrNode->GetNodeItem(XFA_NODEITEM_NextSibling);
(...skipping 301 matching lines...) Expand 10 before | Expand all | Expand 10 after
3120 void CXFA_Node::Script_InstanceManager_RemoveInstance( 3097 void CXFA_Node::Script_InstanceManager_RemoveInstance(
3121 CFXJSE_Arguments* pArguments) { 3098 CFXJSE_Arguments* pArguments) {
3122 int32_t argc = pArguments->GetLength(); 3099 int32_t argc = pArguments->GetLength();
3123 if (argc != 1) { 3100 if (argc != 1) {
3124 FXJSE_Value_SetUndefined(pArguments->GetReturnValue()); 3101 FXJSE_Value_SetUndefined(pArguments->GetReturnValue());
3125 return; 3102 return;
3126 } 3103 }
3127 int32_t iIndex = pArguments->GetInt32(0); 3104 int32_t iIndex = pArguments->GetInt32(0);
3128 int32_t iCount = XFA_ScriptInstanceManager_GetCount(this); 3105 int32_t iCount = XFA_ScriptInstanceManager_GetCount(this);
3129 if (iIndex < 0 || iIndex >= iCount) { 3106 if (iIndex < 0 || iIndex >= iCount) {
3130 ThrowScriptErrorMessage(XFA_IDS_INDEX_OUT_OF_BOUNDS); 3107 Throw(XFA_IDS_INDEX_OUT_OF_BOUNDS);
3131 return; 3108 return;
3132 } 3109 }
3133 CXFA_Occur nodeOccur(GetOccurNode()); 3110 CXFA_Occur nodeOccur(GetOccurNode());
3134 int32_t iMin = nodeOccur.GetMin(); 3111 int32_t iMin = nodeOccur.GetMin();
3135 if (iCount - 1 < iMin) { 3112 if (iCount - 1 < iMin) {
3136 ThrowScriptErrorMessage(XFA_IDS_VIOLATE_BOUNDARY, L"min"); 3113 Throw(XFA_IDS_VIOLATE_BOUNDARY, L"min");
3137 return; 3114 return;
3138 } 3115 }
3139 CXFA_Node* pRemoveInstance = XFA_ScriptInstanceManager_GetItem(this, iIndex); 3116 CXFA_Node* pRemoveInstance = XFA_ScriptInstanceManager_GetItem(this, iIndex);
3140 XFA_ScriptInstanceManager_RemoveItem(this, pRemoveInstance); 3117 XFA_ScriptInstanceManager_RemoveItem(this, pRemoveInstance);
3141 CXFA_FFNotify* pNotify = m_pDocument->GetParser()->GetNotify(); 3118 CXFA_FFNotify* pNotify = m_pDocument->GetParser()->GetNotify();
3142 if (pNotify) { 3119 if (pNotify) {
3143 for (int32_t i = iIndex; i < iCount - 1; i++) { 3120 for (int32_t i = iIndex; i < iCount - 1; i++) {
3144 CXFA_Node* pSubformInstance = XFA_ScriptInstanceManager_GetItem(this, i); 3121 CXFA_Node* pSubformInstance = XFA_ScriptInstanceManager_GetItem(this, i);
3145 if (pSubformInstance && 3122 if (pSubformInstance &&
3146 pSubformInstance->GetClassID() == XFA_ELEMENT_Subform) { 3123 pSubformInstance->GetClassID() == XFA_ELEMENT_Subform) {
(...skipping 15 matching lines...) Expand all
3162 FXJSE_Value_SetUndefined(pArguments->GetReturnValue()); 3139 FXJSE_Value_SetUndefined(pArguments->GetReturnValue());
3163 return; 3140 return;
3164 } 3141 }
3165 int32_t iDesired = pArguments->GetInt32(0); 3142 int32_t iDesired = pArguments->GetInt32(0);
3166 InstanceManager_SetInstances(iDesired); 3143 InstanceManager_SetInstances(iDesired);
3167 } 3144 }
3168 void CXFA_Node::Script_InstanceManager_AddInstance( 3145 void CXFA_Node::Script_InstanceManager_AddInstance(
3169 CFXJSE_Arguments* pArguments) { 3146 CFXJSE_Arguments* pArguments) {
3170 int32_t argc = pArguments->GetLength(); 3147 int32_t argc = pArguments->GetLength();
3171 if ((argc != 0) && (argc != 1)) { 3148 if ((argc != 0) && (argc != 1)) {
3172 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"addInstance"); 3149 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"addInstance");
3173 return; 3150 return;
3174 } 3151 }
3175 FX_BOOL fFlags = TRUE; 3152 FX_BOOL fFlags = TRUE;
3176 if (argc == 1) { 3153 if (argc == 1) {
3177 fFlags = pArguments->GetInt32(0) == 0 ? FALSE : TRUE; 3154 fFlags = pArguments->GetInt32(0) == 0 ? FALSE : TRUE;
3178 } 3155 }
3179 int32_t iCount = XFA_ScriptInstanceManager_GetCount(this); 3156 int32_t iCount = XFA_ScriptInstanceManager_GetCount(this);
3180 CXFA_Occur nodeOccur(GetOccurNode()); 3157 CXFA_Occur nodeOccur(GetOccurNode());
3181 int32_t iMax = nodeOccur.GetMax(); 3158 int32_t iMax = nodeOccur.GetMax();
3182 if (iMax >= 0 && iCount >= iMax) { 3159 if (iMax >= 0 && iCount >= iMax) {
3183 ThrowScriptErrorMessage(XFA_IDS_VIOLATE_BOUNDARY, L"max"); 3160 Throw(XFA_IDS_VIOLATE_BOUNDARY, L"max");
3184 return; 3161 return;
3185 } 3162 }
3186 CXFA_Node* pNewInstance = 3163 CXFA_Node* pNewInstance =
3187 XFA_ScriptInstanceManager_CreateInstance(this, fFlags); 3164 XFA_ScriptInstanceManager_CreateInstance(this, fFlags);
3188 XFA_ScriptInstanceManager_InsertItem(this, pNewInstance, iCount, iCount, 3165 XFA_ScriptInstanceManager_InsertItem(this, pNewInstance, iCount, iCount,
3189 FALSE); 3166 FALSE);
3190 FXJSE_Value_Set( 3167 FXJSE_Value_Set(
3191 pArguments->GetReturnValue(), 3168 pArguments->GetReturnValue(),
3192 m_pDocument->GetScriptContext()->GetJSValueFromMap(pNewInstance)); 3169 m_pDocument->GetScriptContext()->GetJSValueFromMap(pNewInstance));
3193 CXFA_FFNotify* pNotify = m_pDocument->GetParser()->GetNotify(); 3170 CXFA_FFNotify* pNotify = m_pDocument->GetParser()->GetNotify();
3194 if (!pNotify) { 3171 if (!pNotify) {
3195 return; 3172 return;
3196 } 3173 }
3197 pNotify->RunNodeInitialize(pNewInstance); 3174 pNotify->RunNodeInitialize(pNewInstance);
3198 CXFA_LayoutProcessor* pLayoutPro = m_pDocument->GetLayoutProcessor(); 3175 CXFA_LayoutProcessor* pLayoutPro = m_pDocument->GetLayoutProcessor();
3199 if (!pLayoutPro) { 3176 if (!pLayoutPro) {
3200 return; 3177 return;
3201 } 3178 }
3202 pLayoutPro->AddChangedContainer( 3179 pLayoutPro->AddChangedContainer(
3203 ToNode(m_pDocument->GetXFAObject(XFA_HASHCODE_Form))); 3180 ToNode(m_pDocument->GetXFAObject(XFA_HASHCODE_Form)));
3204 } 3181 }
3205 void CXFA_Node::Script_InstanceManager_InsertInstance( 3182 void CXFA_Node::Script_InstanceManager_InsertInstance(
3206 CFXJSE_Arguments* pArguments) { 3183 CFXJSE_Arguments* pArguments) {
3207 int32_t argc = pArguments->GetLength(); 3184 int32_t argc = pArguments->GetLength();
3208 if ((argc != 1) && (argc != 2)) { 3185 if ((argc != 1) && (argc != 2)) {
3209 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, 3186 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"insertInstance");
3210 L"insertInstance");
3211 return; 3187 return;
3212 } 3188 }
3213 int32_t iIndex = pArguments->GetInt32(0); 3189 int32_t iIndex = pArguments->GetInt32(0);
3214 FX_BOOL bBind = FALSE; 3190 FX_BOOL bBind = FALSE;
3215 if (argc == 2) { 3191 if (argc == 2) {
3216 bBind = pArguments->GetInt32(1) == 0 ? FALSE : TRUE; 3192 bBind = pArguments->GetInt32(1) == 0 ? FALSE : TRUE;
3217 } 3193 }
3218 CXFA_Occur nodeOccur(GetOccurNode()); 3194 CXFA_Occur nodeOccur(GetOccurNode());
3219 int32_t iCount = XFA_ScriptInstanceManager_GetCount(this); 3195 int32_t iCount = XFA_ScriptInstanceManager_GetCount(this);
3220 if (iIndex < 0 || iIndex > iCount) { 3196 if (iIndex < 0 || iIndex > iCount) {
3221 ThrowScriptErrorMessage(XFA_IDS_INDEX_OUT_OF_BOUNDS); 3197 Throw(XFA_IDS_INDEX_OUT_OF_BOUNDS);
3222 return; 3198 return;
3223 } 3199 }
3224 int32_t iMax = nodeOccur.GetMax(); 3200 int32_t iMax = nodeOccur.GetMax();
3225 if (iMax >= 0 && iCount >= iMax) { 3201 if (iMax >= 0 && iCount >= iMax) {
3226 ThrowScriptErrorMessage(XFA_IDS_VIOLATE_BOUNDARY, L"max"); 3202 Throw(XFA_IDS_VIOLATE_BOUNDARY, L"max");
3227 return; 3203 return;
3228 } 3204 }
3229 CXFA_Node* pNewInstance = 3205 CXFA_Node* pNewInstance =
3230 XFA_ScriptInstanceManager_CreateInstance(this, bBind); 3206 XFA_ScriptInstanceManager_CreateInstance(this, bBind);
3231 XFA_ScriptInstanceManager_InsertItem(this, pNewInstance, iIndex, iCount, 3207 XFA_ScriptInstanceManager_InsertItem(this, pNewInstance, iIndex, iCount,
3232 TRUE); 3208 TRUE);
3233 FXJSE_Value_Set( 3209 FXJSE_Value_Set(
3234 pArguments->GetReturnValue(), 3210 pArguments->GetReturnValue(),
3235 m_pDocument->GetScriptContext()->GetJSValueFromMap(pNewInstance)); 3211 m_pDocument->GetScriptContext()->GetJSValueFromMap(pNewInstance));
3236 CXFA_FFNotify* pNotify = m_pDocument->GetParser()->GetNotify(); 3212 CXFA_FFNotify* pNotify = m_pDocument->GetParser()->GetNotify();
3237 if (!pNotify) { 3213 if (!pNotify) {
3238 return; 3214 return;
3239 } 3215 }
3240 pNotify->RunNodeInitialize(pNewInstance); 3216 pNotify->RunNodeInitialize(pNewInstance);
3241 CXFA_LayoutProcessor* pLayoutPro = m_pDocument->GetLayoutProcessor(); 3217 CXFA_LayoutProcessor* pLayoutPro = m_pDocument->GetLayoutProcessor();
3242 if (!pLayoutPro) { 3218 if (!pLayoutPro) {
3243 return; 3219 return;
3244 } 3220 }
3245 pLayoutPro->AddChangedContainer( 3221 pLayoutPro->AddChangedContainer(
3246 ToNode(m_pDocument->GetXFAObject(XFA_HASHCODE_Form))); 3222 ToNode(m_pDocument->GetXFAObject(XFA_HASHCODE_Form)));
3247 } 3223 }
3248 int32_t CXFA_Node::InstanceManager_SetInstances(int32_t iDesired) { 3224 int32_t CXFA_Node::InstanceManager_SetInstances(int32_t iDesired) {
3249 CXFA_Occur nodeOccur(GetOccurNode()); 3225 CXFA_Occur nodeOccur(GetOccurNode());
3250 int32_t iMax = nodeOccur.GetMax(); 3226 int32_t iMax = nodeOccur.GetMax();
3251 int32_t iMin = nodeOccur.GetMin(); 3227 int32_t iMin = nodeOccur.GetMin();
3252 if (iDesired < iMin) { 3228 if (iDesired < iMin) {
3253 ThrowScriptErrorMessage(XFA_IDS_VIOLATE_BOUNDARY, L"min"); 3229 Throw(XFA_IDS_VIOLATE_BOUNDARY, L"min");
3254 return 1; 3230 return 1;
3255 } 3231 }
3256 if ((iMax >= 0) && (iDesired > iMax)) { 3232 if ((iMax >= 0) && (iDesired > iMax)) {
3257 ThrowScriptErrorMessage(XFA_IDS_VIOLATE_BOUNDARY, L"max"); 3233 Throw(XFA_IDS_VIOLATE_BOUNDARY, L"max");
3258 return 2; 3234 return 2;
3259 } 3235 }
3260 int32_t iCount = XFA_ScriptInstanceManager_GetCount(this); 3236 int32_t iCount = XFA_ScriptInstanceManager_GetCount(this);
3261 if (iDesired == iCount) { 3237 if (iDesired == iCount) {
3262 return 0; 3238 return 0;
3263 } 3239 }
3264 if (iDesired < iCount) { 3240 if (iDesired < iCount) {
3265 CFX_WideStringC wsInstManagerName = GetCData(XFA_ATTRIBUTE_Name); 3241 CFX_WideStringC wsInstManagerName = GetCData(XFA_ATTRIBUTE_Name);
3266 CFX_WideString wsInstanceName = 3242 CFX_WideString wsInstanceName =
3267 CFX_WideString(wsInstManagerName.IsEmpty() ? wsInstManagerName 3243 CFX_WideString(wsInstManagerName.IsEmpty() ? wsInstManagerName
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
3304 CXFA_LayoutProcessor* pLayoutPro = m_pDocument->GetLayoutProcessor(); 3280 CXFA_LayoutProcessor* pLayoutPro = m_pDocument->GetLayoutProcessor();
3305 if (pLayoutPro) { 3281 if (pLayoutPro) {
3306 pLayoutPro->AddChangedContainer( 3282 pLayoutPro->AddChangedContainer(
3307 ToNode(m_pDocument->GetXFAObject(XFA_HASHCODE_Form))); 3283 ToNode(m_pDocument->GetXFAObject(XFA_HASHCODE_Form)));
3308 } 3284 }
3309 return 0; 3285 return 0;
3310 } 3286 }
3311 int32_t CXFA_Node::InstanceManager_MoveInstance(int32_t iTo, int32_t iFrom) { 3287 int32_t CXFA_Node::InstanceManager_MoveInstance(int32_t iTo, int32_t iFrom) {
3312 int32_t iCount = XFA_ScriptInstanceManager_GetCount(this); 3288 int32_t iCount = XFA_ScriptInstanceManager_GetCount(this);
3313 if (iFrom > iCount || iTo > iCount - 1) { 3289 if (iFrom > iCount || iTo > iCount - 1) {
3314 ThrowScriptErrorMessage(XFA_IDS_INDEX_OUT_OF_BOUNDS); 3290 Throw(XFA_IDS_INDEX_OUT_OF_BOUNDS);
3315 return 1; 3291 return 1;
3316 } 3292 }
3317 if (iFrom < 0 || iTo < 0 || iFrom == iTo) { 3293 if (iFrom < 0 || iTo < 0 || iFrom == iTo) {
3318 return 0; 3294 return 0;
3319 } 3295 }
3320 CXFA_Node* pMoveInstance = XFA_ScriptInstanceManager_GetItem(this, iFrom); 3296 CXFA_Node* pMoveInstance = XFA_ScriptInstanceManager_GetItem(this, iFrom);
3321 XFA_ScriptInstanceManager_RemoveItem(this, pMoveInstance, FALSE); 3297 XFA_ScriptInstanceManager_RemoveItem(this, pMoveInstance, FALSE);
3322 XFA_ScriptInstanceManager_InsertItem(this, pMoveInstance, iTo, iCount - 1, 3298 XFA_ScriptInstanceManager_InsertItem(this, pMoveInstance, iTo, iCount - 1,
3323 TRUE); 3299 TRUE);
3324 CXFA_LayoutProcessor* pLayoutPro = m_pDocument->GetLayoutProcessor(); 3300 CXFA_LayoutProcessor* pLayoutPro = m_pDocument->GetLayoutProcessor();
(...skipping 23 matching lines...) Expand all
3348 occur.SetMin(iMin); 3324 occur.SetMin(iMin);
3349 } else { 3325 } else {
3350 FXJSE_Value_SetInteger(pValue, occur.GetMin()); 3326 FXJSE_Value_SetInteger(pValue, occur.GetMin());
3351 } 3327 }
3352 } 3328 }
3353 void CXFA_Node::Script_Desc_Metadata(CFXJSE_Arguments* pArguments) { 3329 void CXFA_Node::Script_Desc_Metadata(CFXJSE_Arguments* pArguments) {
3354 int32_t argc = pArguments->GetLength(); 3330 int32_t argc = pArguments->GetLength();
3355 if ((argc == 0) || (argc == 1)) { 3331 if ((argc == 0) || (argc == 1)) {
3356 FXJSE_Value_SetUTF8String(pArguments->GetReturnValue(), ""); 3332 FXJSE_Value_SetUTF8String(pArguments->GetReturnValue(), "");
3357 } else { 3333 } else {
3358 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"metadata"); 3334 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"metadata");
3359 } 3335 }
3360 } 3336 }
3361 void CXFA_Node::Script_Form_FormNodes(CFXJSE_Arguments* pArguments) { 3337 void CXFA_Node::Script_Form_FormNodes(CFXJSE_Arguments* pArguments) {
3362 int32_t argc = pArguments->GetLength(); 3338 int32_t argc = pArguments->GetLength();
3363 if (argc == 1) { 3339 if (argc == 1) {
3364 CXFA_Node* pDataNode = static_cast<CXFA_Node*>(pArguments->GetObject(0)); 3340 CXFA_Node* pDataNode = static_cast<CXFA_Node*>(pArguments->GetObject(0));
3365 if (pDataNode) { 3341 if (pDataNode) {
3366 CXFA_NodeArray formItems; 3342 CXFA_NodeArray formItems;
3367 CXFA_ArrayNodeList* pFormNodes = new CXFA_ArrayNodeList(m_pDocument); 3343 CXFA_ArrayNodeList* pFormNodes = new CXFA_ArrayNodeList(m_pDocument);
3368 pFormNodes->SetArrayNodeList(formItems); 3344 pFormNodes->SetArrayNodeList(formItems);
3369 FXJSE_Value_SetObject( 3345 FXJSE_Value_SetObject(
3370 pArguments->GetReturnValue(), (CXFA_Object*)pFormNodes, 3346 pArguments->GetReturnValue(), (CXFA_Object*)pFormNodes,
3371 m_pDocument->GetScriptContext()->GetJseNormalClass()); 3347 m_pDocument->GetScriptContext()->GetJseNormalClass());
3372 } else { 3348 } else {
3373 ThrowScriptErrorMessage(XFA_IDS_ARGUMENT_MISMATCH); 3349 Throw(XFA_IDS_ARGUMENT_MISMATCH);
3374 } 3350 }
3375 } else { 3351 } else {
3376 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"formNodes"); 3352 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"formNodes");
3377 } 3353 }
3378 } 3354 }
3379 void CXFA_Node::Script_Form_Remerge(CFXJSE_Arguments* pArguments) { 3355 void CXFA_Node::Script_Form_Remerge(CFXJSE_Arguments* pArguments) {
3380 int32_t argc = pArguments->GetLength(); 3356 int32_t argc = pArguments->GetLength();
3381 if (argc == 0) { 3357 if (argc == 0) {
3382 m_pDocument->DoDataRemerge(TRUE); 3358 m_pDocument->DoDataRemerge(TRUE);
3383 } else { 3359 } else {
3384 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"remerge"); 3360 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"remerge");
3385 } 3361 }
3386 } 3362 }
3387 void CXFA_Node::Script_Form_ExecInitialize(CFXJSE_Arguments* pArguments) { 3363 void CXFA_Node::Script_Form_ExecInitialize(CFXJSE_Arguments* pArguments) {
3388 int32_t argc = pArguments->GetLength(); 3364 int32_t argc = pArguments->GetLength();
3389 if (argc == 0) { 3365 if (argc == 0) {
3390 CXFA_FFNotify* pNotify = m_pDocument->GetParser()->GetNotify(); 3366 CXFA_FFNotify* pNotify = m_pDocument->GetParser()->GetNotify();
3391 if (!pNotify) { 3367 if (!pNotify) {
3392 return; 3368 return;
3393 } 3369 }
3394 pNotify->ExecEventByDeepFirst(this, XFA_EVENT_Initialize); 3370 pNotify->ExecEventByDeepFirst(this, XFA_EVENT_Initialize);
3395 } else { 3371 } else {
3396 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, 3372 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"execInitialize");
3397 L"execInitialize");
3398 } 3373 }
3399 } 3374 }
3400 void CXFA_Node::Script_Form_Recalculate(CFXJSE_Arguments* pArguments) { 3375 void CXFA_Node::Script_Form_Recalculate(CFXJSE_Arguments* pArguments) {
3401 CXFA_EventParam* pEventParam = 3376 CXFA_EventParam* pEventParam =
3402 m_pDocument->GetScriptContext()->GetEventParam(); 3377 m_pDocument->GetScriptContext()->GetEventParam();
3403 if (pEventParam->m_eType == XFA_EVENT_Calculate || 3378 if (pEventParam->m_eType == XFA_EVENT_Calculate ||
3404 pEventParam->m_eType == XFA_EVENT_InitCalculate) { 3379 pEventParam->m_eType == XFA_EVENT_InitCalculate) {
3405 return; 3380 return;
3406 } 3381 }
3407 int32_t argc = pArguments->GetLength(); 3382 int32_t argc = pArguments->GetLength();
3408 if (argc == 1) { 3383 if (argc == 1) {
3409 const bool bScriptFlags = pArguments->GetInt32(0) != 0; 3384 const bool bScriptFlags = pArguments->GetInt32(0) != 0;
3410 CXFA_FFNotify* pNotify = m_pDocument->GetParser()->GetNotify(); 3385 CXFA_FFNotify* pNotify = m_pDocument->GetParser()->GetNotify();
3411 if (!pNotify) { 3386 if (!pNotify) {
3412 return; 3387 return;
3413 } 3388 }
3414 if (bScriptFlags) { 3389 if (bScriptFlags) {
3415 pNotify->ExecEventByDeepFirst(this, XFA_EVENT_Calculate); 3390 pNotify->ExecEventByDeepFirst(this, XFA_EVENT_Calculate);
3416 pNotify->ExecEventByDeepFirst(this, XFA_EVENT_Validate); 3391 pNotify->ExecEventByDeepFirst(this, XFA_EVENT_Validate);
3417 pNotify->ExecEventByDeepFirst(this, XFA_EVENT_Ready, TRUE); 3392 pNotify->ExecEventByDeepFirst(this, XFA_EVENT_Ready, TRUE);
3418 } else { 3393 } else {
3419 } 3394 }
3420 } else { 3395 } else {
3421 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"recalculate"); 3396 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"recalculate");
3422 } 3397 }
3423 } 3398 }
3424 void CXFA_Node::Script_Form_ExecCalculate(CFXJSE_Arguments* pArguments) { 3399 void CXFA_Node::Script_Form_ExecCalculate(CFXJSE_Arguments* pArguments) {
3425 int32_t argc = pArguments->GetLength(); 3400 int32_t argc = pArguments->GetLength();
3426 if (argc == 0) { 3401 if (argc == 0) {
3427 CXFA_FFNotify* pNotify = m_pDocument->GetParser()->GetNotify(); 3402 CXFA_FFNotify* pNotify = m_pDocument->GetParser()->GetNotify();
3428 if (!pNotify) { 3403 if (!pNotify) {
3429 return; 3404 return;
3430 } 3405 }
3431 pNotify->ExecEventByDeepFirst(this, XFA_EVENT_Calculate); 3406 pNotify->ExecEventByDeepFirst(this, XFA_EVENT_Calculate);
3432 } else { 3407 } else {
3433 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, 3408 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"execCalculate");
3434 L"execCalculate");
3435 } 3409 }
3436 } 3410 }
3437 void CXFA_Node::Script_Form_ExecValidate(CFXJSE_Arguments* pArguments) { 3411 void CXFA_Node::Script_Form_ExecValidate(CFXJSE_Arguments* pArguments) {
3438 int32_t argc = pArguments->GetLength(); 3412 int32_t argc = pArguments->GetLength();
3439 if (argc == 0) { 3413 if (argc == 0) {
3440 CXFA_FFNotify* pNotify = m_pDocument->GetParser()->GetNotify(); 3414 CXFA_FFNotify* pNotify = m_pDocument->GetParser()->GetNotify();
3441 if (!pNotify) { 3415 if (!pNotify) {
3442 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(), FALSE); 3416 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(), FALSE);
3443 } else { 3417 } else {
3444 int32_t iRet = pNotify->ExecEventByDeepFirst(this, XFA_EVENT_Validate); 3418 int32_t iRet = pNotify->ExecEventByDeepFirst(this, XFA_EVENT_Validate);
3445 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(), 3419 FXJSE_Value_SetBoolean(pArguments->GetReturnValue(),
3446 ((iRet == XFA_EVENTERROR_Error) ? FALSE : TRUE)); 3420 ((iRet == XFA_EVENTERROR_Error) ? FALSE : TRUE));
3447 } 3421 }
3448 } else { 3422 } else {
3449 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, 3423 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"execValidate");
3450 L"execValidate");
3451 } 3424 }
3452 } 3425 }
3453 void CXFA_Node::Script_Form_Checksum(CFXJSE_Value* pValue, 3426 void CXFA_Node::Script_Form_Checksum(CFXJSE_Value* pValue,
3454 FX_BOOL bSetting, 3427 FX_BOOL bSetting,
3455 XFA_ATTRIBUTE eAttribute) { 3428 XFA_ATTRIBUTE eAttribute) {
3456 if (bSetting) { 3429 if (bSetting) {
3457 CFX_ByteString bsChecksum; 3430 CFX_ByteString bsChecksum;
3458 FXJSE_Value_ToUTF8String(pValue, bsChecksum); 3431 FXJSE_Value_ToUTF8String(pValue, bsChecksum);
3459 SetAttribute(XFA_ATTRIBUTE_Checksum, 3432 SetAttribute(XFA_ATTRIBUTE_Checksum,
3460 CFX_WideString::FromUTF8(bsChecksum.AsStringC()).AsStringC()); 3433 CFX_WideString::FromUTF8(bsChecksum.AsStringC()).AsStringC());
(...skipping 14 matching lines...) Expand all
3475 if (pXMLNode && pXMLNode->GetType() == FDE_XMLNODE_Element) { 3448 if (pXMLNode && pXMLNode->GetType() == FDE_XMLNODE_Element) {
3476 static_cast<CFDE_XMLElement*>(pXMLNode)->GetString( 3449 static_cast<CFDE_XMLElement*>(pXMLNode)->GetString(
3477 CFX_WideString::FromUTF8(bsAttributeName.AsStringC()).c_str(), 3450 CFX_WideString::FromUTF8(bsAttributeName.AsStringC()).c_str(),
3478 wsAttributeValue); 3451 wsAttributeValue);
3479 } 3452 }
3480 FXJSE_Value_SetUTF8String( 3453 FXJSE_Value_SetUTF8String(
3481 pArguments->GetReturnValue(), 3454 pArguments->GetReturnValue(),
3482 FX_UTF8Encode(wsAttributeValue.c_str(), wsAttributeValue.GetLength()) 3455 FX_UTF8Encode(wsAttributeValue.c_str(), wsAttributeValue.GetLength())
3483 .AsStringC()); 3456 .AsStringC());
3484 } else { 3457 } else {
3485 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, 3458 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"getAttribute");
3486 L"getAttribute");
3487 } 3459 }
3488 } 3460 }
3489 void CXFA_Node::Script_Packet_SetAttribute(CFXJSE_Arguments* pArguments) { 3461 void CXFA_Node::Script_Packet_SetAttribute(CFXJSE_Arguments* pArguments) {
3490 int32_t argc = pArguments->GetLength(); 3462 int32_t argc = pArguments->GetLength();
3491 if (argc == 2) { 3463 if (argc == 2) {
3492 CFX_ByteString bsValue = pArguments->GetUTF8String(0); 3464 CFX_ByteString bsValue = pArguments->GetUTF8String(0);
3493 CFX_ByteString bsName = pArguments->GetUTF8String(1); 3465 CFX_ByteString bsName = pArguments->GetUTF8String(1);
3494 CFDE_XMLNode* pXMLNode = GetXMLMappingNode(); 3466 CFDE_XMLNode* pXMLNode = GetXMLMappingNode();
3495 if (pXMLNode && pXMLNode->GetType() == FDE_XMLNODE_Element) { 3467 if (pXMLNode && pXMLNode->GetType() == FDE_XMLNODE_Element) {
3496 static_cast<CFDE_XMLElement*>(pXMLNode) 3468 static_cast<CFDE_XMLElement*>(pXMLNode)
3497 ->SetString(CFX_WideString::FromUTF8(bsName.AsStringC()), 3469 ->SetString(CFX_WideString::FromUTF8(bsName.AsStringC()),
3498 CFX_WideString::FromUTF8(bsValue.AsStringC())); 3470 CFX_WideString::FromUTF8(bsValue.AsStringC()));
3499 } 3471 }
3500 FXJSE_Value_SetNull(pArguments->GetReturnValue()); 3472 FXJSE_Value_SetNull(pArguments->GetReturnValue());
3501 } else { 3473 } else {
3502 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, 3474 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"setAttribute");
3503 L"setAttribute");
3504 } 3475 }
3505 } 3476 }
3506 void CXFA_Node::Script_Packet_RemoveAttribute(CFXJSE_Arguments* pArguments) { 3477 void CXFA_Node::Script_Packet_RemoveAttribute(CFXJSE_Arguments* pArguments) {
3507 int32_t argc = pArguments->GetLength(); 3478 int32_t argc = pArguments->GetLength();
3508 if (argc == 1) { 3479 if (argc == 1) {
3509 CFX_ByteString bsName = pArguments->GetUTF8String(0); 3480 CFX_ByteString bsName = pArguments->GetUTF8String(0);
3510 CFX_WideString wsName = CFX_WideString::FromUTF8(bsName.AsStringC()); 3481 CFX_WideString wsName = CFX_WideString::FromUTF8(bsName.AsStringC());
3511 CFDE_XMLNode* pXMLNode = GetXMLMappingNode(); 3482 CFDE_XMLNode* pXMLNode = GetXMLMappingNode();
3512 if (pXMLNode && pXMLNode->GetType() == FDE_XMLNODE_Element) { 3483 if (pXMLNode && pXMLNode->GetType() == FDE_XMLNODE_Element) {
3513 CFDE_XMLElement* pXMLElement = static_cast<CFDE_XMLElement*>(pXMLNode); 3484 CFDE_XMLElement* pXMLElement = static_cast<CFDE_XMLElement*>(pXMLNode);
3514 if (pXMLElement->HasAttribute(wsName.c_str())) { 3485 if (pXMLElement->HasAttribute(wsName.c_str())) {
3515 pXMLElement->RemoveAttribute(wsName.c_str()); 3486 pXMLElement->RemoveAttribute(wsName.c_str());
3516 } 3487 }
3517 } 3488 }
3518 FXJSE_Value_SetNull(pArguments->GetReturnValue()); 3489 FXJSE_Value_SetNull(pArguments->GetReturnValue());
3519 } else { 3490 } else {
3520 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, 3491 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"removeAttribute");
3521 L"removeAttribute");
3522 } 3492 }
3523 } 3493 }
3524 void CXFA_Node::Script_Packet_Content(CFXJSE_Value* pValue, 3494 void CXFA_Node::Script_Packet_Content(CFXJSE_Value* pValue,
3525 FX_BOOL bSetting, 3495 FX_BOOL bSetting,
3526 XFA_ATTRIBUTE eAttribute) { 3496 XFA_ATTRIBUTE eAttribute) {
3527 if (bSetting) { 3497 if (bSetting) {
3528 CFX_ByteString bsNewContent; 3498 CFX_ByteString bsNewContent;
3529 FXJSE_Value_ToUTF8String(pValue, bsNewContent); 3499 FXJSE_Value_ToUTF8String(pValue, bsNewContent);
3530 CFDE_XMLNode* pXMLNode = GetXMLMappingNode(); 3500 CFDE_XMLNode* pXMLNode = GetXMLMappingNode();
3531 if (pXMLNode && pXMLNode->GetType() == FDE_XMLNODE_Element) { 3501 if (pXMLNode && pXMLNode->GetType() == FDE_XMLNODE_Element) {
(...skipping 10 matching lines...) Expand all
3542 } 3512 }
3543 FXJSE_Value_SetUTF8String( 3513 FXJSE_Value_SetUTF8String(
3544 pValue, 3514 pValue,
3545 FX_UTF8Encode(wsTextData.c_str(), wsTextData.GetLength()).AsStringC()); 3515 FX_UTF8Encode(wsTextData.c_str(), wsTextData.GetLength()).AsStringC());
3546 } 3516 }
3547 } 3517 }
3548 void CXFA_Node::Script_Source_Next(CFXJSE_Arguments* pArguments) { 3518 void CXFA_Node::Script_Source_Next(CFXJSE_Arguments* pArguments) {
3549 int32_t argc = pArguments->GetLength(); 3519 int32_t argc = pArguments->GetLength();
3550 if (argc == 0) { 3520 if (argc == 0) {
3551 } else { 3521 } else {
3552 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"next"); 3522 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"next");
3553 } 3523 }
3554 } 3524 }
3555 void CXFA_Node::Script_Source_CancelBatch(CFXJSE_Arguments* pArguments) { 3525 void CXFA_Node::Script_Source_CancelBatch(CFXJSE_Arguments* pArguments) {
3556 int32_t argc = pArguments->GetLength(); 3526 int32_t argc = pArguments->GetLength();
3557 if (argc == 0) { 3527 if (argc == 0) {
3558 } else { 3528 } else {
3559 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"cancelBatch"); 3529 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"cancelBatch");
3560 } 3530 }
3561 } 3531 }
3562 void CXFA_Node::Script_Source_First(CFXJSE_Arguments* pArguments) { 3532 void CXFA_Node::Script_Source_First(CFXJSE_Arguments* pArguments) {
3563 int32_t argc = pArguments->GetLength(); 3533 int32_t argc = pArguments->GetLength();
3564 if (argc == 0) { 3534 if (argc == 0) {
3565 } else { 3535 } else {
3566 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"first"); 3536 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"first");
3567 } 3537 }
3568 } 3538 }
3569 void CXFA_Node::Script_Source_UpdateBatch(CFXJSE_Arguments* pArguments) { 3539 void CXFA_Node::Script_Source_UpdateBatch(CFXJSE_Arguments* pArguments) {
3570 int32_t argc = pArguments->GetLength(); 3540 int32_t argc = pArguments->GetLength();
3571 if (argc == 0) { 3541 if (argc == 0) {
3572 } else { 3542 } else {
3573 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"updateBatch"); 3543 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"updateBatch");
3574 } 3544 }
3575 } 3545 }
3576 void CXFA_Node::Script_Source_Previous(CFXJSE_Arguments* pArguments) { 3546 void CXFA_Node::Script_Source_Previous(CFXJSE_Arguments* pArguments) {
3577 int32_t argc = pArguments->GetLength(); 3547 int32_t argc = pArguments->GetLength();
3578 if (argc == 0) { 3548 if (argc == 0) {
3579 } else { 3549 } else {
3580 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"previous"); 3550 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"previous");
3581 } 3551 }
3582 } 3552 }
3583 void CXFA_Node::Script_Source_IsBOF(CFXJSE_Arguments* pArguments) { 3553 void CXFA_Node::Script_Source_IsBOF(CFXJSE_Arguments* pArguments) {
3584 int32_t argc = pArguments->GetLength(); 3554 int32_t argc = pArguments->GetLength();
3585 if (argc == 0) { 3555 if (argc == 0) {
3586 } else { 3556 } else {
3587 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"isBOF"); 3557 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"isBOF");
3588 } 3558 }
3589 } 3559 }
3590 void CXFA_Node::Script_Source_IsEOF(CFXJSE_Arguments* pArguments) { 3560 void CXFA_Node::Script_Source_IsEOF(CFXJSE_Arguments* pArguments) {
3591 int32_t argc = pArguments->GetLength(); 3561 int32_t argc = pArguments->GetLength();
3592 if (argc == 0) { 3562 if (argc == 0) {
3593 } else { 3563 } else {
3594 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"isEOF"); 3564 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"isEOF");
3595 } 3565 }
3596 } 3566 }
3597 void CXFA_Node::Script_Source_Cancel(CFXJSE_Arguments* pArguments) { 3567 void CXFA_Node::Script_Source_Cancel(CFXJSE_Arguments* pArguments) {
3598 int32_t argc = pArguments->GetLength(); 3568 int32_t argc = pArguments->GetLength();
3599 if (argc == 0) { 3569 if (argc == 0) {
3600 } else { 3570 } else {
3601 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"cancel"); 3571 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"cancel");
3602 } 3572 }
3603 } 3573 }
3604 void CXFA_Node::Script_Source_Update(CFXJSE_Arguments* pArguments) { 3574 void CXFA_Node::Script_Source_Update(CFXJSE_Arguments* pArguments) {
3605 int32_t argc = pArguments->GetLength(); 3575 int32_t argc = pArguments->GetLength();
3606 if (argc == 0) { 3576 if (argc == 0) {
3607 } else { 3577 } else {
3608 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"update"); 3578 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"update");
3609 } 3579 }
3610 } 3580 }
3611 void CXFA_Node::Script_Source_Open(CFXJSE_Arguments* pArguments) { 3581 void CXFA_Node::Script_Source_Open(CFXJSE_Arguments* pArguments) {
3612 int32_t argc = pArguments->GetLength(); 3582 int32_t argc = pArguments->GetLength();
3613 if (argc == 0) { 3583 if (argc == 0) {
3614 } else { 3584 } else {
3615 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"open"); 3585 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"open");
3616 } 3586 }
3617 } 3587 }
3618 void CXFA_Node::Script_Source_Delete(CFXJSE_Arguments* pArguments) { 3588 void CXFA_Node::Script_Source_Delete(CFXJSE_Arguments* pArguments) {
3619 int32_t argc = pArguments->GetLength(); 3589 int32_t argc = pArguments->GetLength();
3620 if (argc == 0) { 3590 if (argc == 0) {
3621 } else { 3591 } else {
3622 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"delete"); 3592 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"delete");
3623 } 3593 }
3624 } 3594 }
3625 void CXFA_Node::Script_Source_AddNew(CFXJSE_Arguments* pArguments) { 3595 void CXFA_Node::Script_Source_AddNew(CFXJSE_Arguments* pArguments) {
3626 int32_t argc = pArguments->GetLength(); 3596 int32_t argc = pArguments->GetLength();
3627 if (argc == 0) { 3597 if (argc == 0) {
3628 } else { 3598 } else {
3629 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"addNew"); 3599 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"addNew");
3630 } 3600 }
3631 } 3601 }
3632 void CXFA_Node::Script_Source_Requery(CFXJSE_Arguments* pArguments) { 3602 void CXFA_Node::Script_Source_Requery(CFXJSE_Arguments* pArguments) {
3633 int32_t argc = pArguments->GetLength(); 3603 int32_t argc = pArguments->GetLength();
3634 if (argc == 0) { 3604 if (argc == 0) {
3635 } else { 3605 } else {
3636 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"requery"); 3606 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"requery");
3637 } 3607 }
3638 } 3608 }
3639 void CXFA_Node::Script_Source_Resync(CFXJSE_Arguments* pArguments) { 3609 void CXFA_Node::Script_Source_Resync(CFXJSE_Arguments* pArguments) {
3640 int32_t argc = pArguments->GetLength(); 3610 int32_t argc = pArguments->GetLength();
3641 if (argc == 0) { 3611 if (argc == 0) {
3642 } else { 3612 } else {
3643 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"resync"); 3613 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"resync");
3644 } 3614 }
3645 } 3615 }
3646 void CXFA_Node::Script_Source_Close(CFXJSE_Arguments* pArguments) { 3616 void CXFA_Node::Script_Source_Close(CFXJSE_Arguments* pArguments) {
3647 int32_t argc = pArguments->GetLength(); 3617 int32_t argc = pArguments->GetLength();
3648 if (argc == 0) { 3618 if (argc == 0) {
3649 } else { 3619 } else {
3650 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"close"); 3620 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"close");
3651 } 3621 }
3652 } 3622 }
3653 void CXFA_Node::Script_Source_Last(CFXJSE_Arguments* pArguments) { 3623 void CXFA_Node::Script_Source_Last(CFXJSE_Arguments* pArguments) {
3654 int32_t argc = pArguments->GetLength(); 3624 int32_t argc = pArguments->GetLength();
3655 if (argc == 0) { 3625 if (argc == 0) {
3656 } else { 3626 } else {
3657 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"last"); 3627 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"last");
3658 } 3628 }
3659 } 3629 }
3660 void CXFA_Node::Script_Source_HasDataChanged(CFXJSE_Arguments* pArguments) { 3630 void CXFA_Node::Script_Source_HasDataChanged(CFXJSE_Arguments* pArguments) {
3661 int32_t argc = pArguments->GetLength(); 3631 int32_t argc = pArguments->GetLength();
3662 if (argc == 0) { 3632 if (argc == 0) {
3663 } else { 3633 } else {
3664 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, 3634 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"hasDataChanged");
3665 L"hasDataChanged");
3666 } 3635 }
3667 } 3636 }
3668 void CXFA_Node::Script_Source_Db(CFXJSE_Value* pValue, 3637 void CXFA_Node::Script_Source_Db(CFXJSE_Value* pValue,
3669 FX_BOOL bSetting, 3638 FX_BOOL bSetting,
3670 XFA_ATTRIBUTE eAttribute) {} 3639 XFA_ATTRIBUTE eAttribute) {}
3671 void CXFA_Node::Script_Xfa_This(CFXJSE_Value* pValue, 3640 void CXFA_Node::Script_Xfa_This(CFXJSE_Value* pValue,
3672 FX_BOOL bSetting, 3641 FX_BOOL bSetting,
3673 XFA_ATTRIBUTE eAttribute) { 3642 XFA_ATTRIBUTE eAttribute) {
3674 if (!bSetting) { 3643 if (!bSetting) {
3675 CXFA_Object* pThis = m_pDocument->GetScriptContext()->GetThisObject(); 3644 CXFA_Object* pThis = m_pDocument->GetScriptContext()->GetThisObject();
3676 ASSERT(pThis); 3645 ASSERT(pThis);
3677 FXJSE_Value_Set(pValue, 3646 FXJSE_Value_Set(pValue,
3678 m_pDocument->GetScriptContext()->GetJSValueFromMap(pThis)); 3647 m_pDocument->GetScriptContext()->GetJSValueFromMap(pThis));
3679 } 3648 }
3680 } 3649 }
3681 void CXFA_Node::Script_Handler_Version(CFXJSE_Value* pValue, 3650 void CXFA_Node::Script_Handler_Version(CFXJSE_Value* pValue,
3682 FX_BOOL bSetting, 3651 FX_BOOL bSetting,
3683 XFA_ATTRIBUTE eAttribute) {} 3652 XFA_ATTRIBUTE eAttribute) {}
3684 void CXFA_Node::Script_SubmitFormat_Mode(CFXJSE_Value* pValue, 3653 void CXFA_Node::Script_SubmitFormat_Mode(CFXJSE_Value* pValue,
3685 FX_BOOL bSetting, 3654 FX_BOOL bSetting,
3686 XFA_ATTRIBUTE eAttribute) {} 3655 XFA_ATTRIBUTE eAttribute) {}
3687 void CXFA_Node::Script_Extras_Type(CFXJSE_Value* pValue, 3656 void CXFA_Node::Script_Extras_Type(CFXJSE_Value* pValue,
3688 FX_BOOL bSetting, 3657 FX_BOOL bSetting,
3689 XFA_ATTRIBUTE eAttribute) {} 3658 XFA_ATTRIBUTE eAttribute) {}
3690 void CXFA_Node::Script_Script_Stateless(CFXJSE_Value* pValue, 3659 void CXFA_Node::Script_Script_Stateless(CFXJSE_Value* pValue,
3691 FX_BOOL bSetting, 3660 FX_BOOL bSetting,
3692 XFA_ATTRIBUTE eAttribute) { 3661 XFA_ATTRIBUTE eAttribute) {
3693 if (bSetting) { 3662 if (bSetting) {
3694 ThrowScriptErrorMessage(XFA_IDS_INVAlID_PROP_SET); 3663 Throw(XFA_IDS_INVAlID_PROP_SET);
3695 return; 3664 return;
3696 } 3665 }
3697 FXJSE_Value_SetUTF8String(pValue, FX_UTF8Encode(FX_WSTRC(L"0")).AsStringC()); 3666 FXJSE_Value_SetUTF8String(pValue, FX_UTF8Encode(FX_WSTRC(L"0")).AsStringC());
3698 } 3667 }
3699 void CXFA_Node::Script_Encrypt_Format(CFXJSE_Value* pValue, 3668 void CXFA_Node::Script_Encrypt_Format(CFXJSE_Value* pValue,
3700 FX_BOOL bSetting, 3669 FX_BOOL bSetting,
3701 XFA_ATTRIBUTE eAttribute) {} 3670 XFA_ATTRIBUTE eAttribute) {}
3702 enum XFA_KEYTYPE { 3671 enum XFA_KEYTYPE {
3703 XFA_KEYTYPE_Custom, 3672 XFA_KEYTYPE_Custom,
3704 XFA_KEYTYPE_Element, 3673 XFA_KEYTYPE_Element,
(...skipping 1508 matching lines...) Expand 10 before | Expand all | Expand 10 after
5213 } 5182 }
5214 return NULL; 5183 return NULL;
5215 } 5184 }
5216 void CXFA_NodeList::Script_ListClass_Append(CFXJSE_Arguments* pArguments) { 5185 void CXFA_NodeList::Script_ListClass_Append(CFXJSE_Arguments* pArguments) {
5217 int32_t argc = pArguments->GetLength(); 5186 int32_t argc = pArguments->GetLength();
5218 if (argc == 1) { 5187 if (argc == 1) {
5219 CXFA_Node* pNode = static_cast<CXFA_Node*>(pArguments->GetObject(0)); 5188 CXFA_Node* pNode = static_cast<CXFA_Node*>(pArguments->GetObject(0));
5220 if (pNode) { 5189 if (pNode) {
5221 Append(pNode); 5190 Append(pNode);
5222 } else { 5191 } else {
5223 ThrowScriptErrorMessage(XFA_IDS_ARGUMENT_MISMATCH); 5192 Throw(XFA_IDS_ARGUMENT_MISMATCH);
5224 } 5193 }
5225 } else { 5194 } else {
5226 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"append"); 5195 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"append");
5227 } 5196 }
5228 } 5197 }
5229 void CXFA_NodeList::Script_ListClass_Insert(CFXJSE_Arguments* pArguments) { 5198 void CXFA_NodeList::Script_ListClass_Insert(CFXJSE_Arguments* pArguments) {
5230 int32_t argc = pArguments->GetLength(); 5199 int32_t argc = pArguments->GetLength();
5231 if (argc == 2) { 5200 if (argc == 2) {
5232 CXFA_Node* pNewNode = static_cast<CXFA_Node*>(pArguments->GetObject(0)); 5201 CXFA_Node* pNewNode = static_cast<CXFA_Node*>(pArguments->GetObject(0));
5233 CXFA_Node* pBeforeNode = static_cast<CXFA_Node*>(pArguments->GetObject(1)); 5202 CXFA_Node* pBeforeNode = static_cast<CXFA_Node*>(pArguments->GetObject(1));
5234 if (pNewNode) { 5203 if (pNewNode) {
5235 Insert(pNewNode, pBeforeNode); 5204 Insert(pNewNode, pBeforeNode);
5236 } else { 5205 } else {
5237 ThrowScriptErrorMessage(XFA_IDS_ARGUMENT_MISMATCH); 5206 Throw(XFA_IDS_ARGUMENT_MISMATCH);
5238 } 5207 }
5239 } else { 5208 } else {
5240 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"insert"); 5209 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"insert");
5241 } 5210 }
5242 } 5211 }
5243 void CXFA_NodeList::Script_ListClass_Remove(CFXJSE_Arguments* pArguments) { 5212 void CXFA_NodeList::Script_ListClass_Remove(CFXJSE_Arguments* pArguments) {
5244 int32_t argc = pArguments->GetLength(); 5213 int32_t argc = pArguments->GetLength();
5245 if (argc == 1) { 5214 if (argc == 1) {
5246 CXFA_Node* pNode = static_cast<CXFA_Node*>(pArguments->GetObject(0)); 5215 CXFA_Node* pNode = static_cast<CXFA_Node*>(pArguments->GetObject(0));
5247 if (pNode) { 5216 if (pNode) {
5248 Remove(pNode); 5217 Remove(pNode);
5249 } else { 5218 } else {
5250 ThrowScriptErrorMessage(XFA_IDS_ARGUMENT_MISMATCH); 5219 Throw(XFA_IDS_ARGUMENT_MISMATCH);
5251 } 5220 }
5252 } else { 5221 } else {
5253 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"remove"); 5222 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"remove");
5254 } 5223 }
5255 } 5224 }
5256 void CXFA_NodeList::Script_ListClass_Item(CFXJSE_Arguments* pArguments) { 5225 void CXFA_NodeList::Script_ListClass_Item(CFXJSE_Arguments* pArguments) {
5257 int32_t argc = pArguments->GetLength(); 5226 int32_t argc = pArguments->GetLength();
5258 if (argc == 1) { 5227 if (argc == 1) {
5259 int32_t iIndex = pArguments->GetInt32(0); 5228 int32_t iIndex = pArguments->GetInt32(0);
5260 if ((iIndex >= 0) && (iIndex + 1 <= GetLength())) { 5229 if ((iIndex >= 0) && (iIndex + 1 <= GetLength())) {
5261 FXJSE_Value_Set( 5230 FXJSE_Value_Set(
5262 pArguments->GetReturnValue(), 5231 pArguments->GetReturnValue(),
5263 m_pDocument->GetScriptContext()->GetJSValueFromMap(Item(iIndex))); 5232 m_pDocument->GetScriptContext()->GetJSValueFromMap(Item(iIndex)));
5264 } else { 5233 } else {
5265 ThrowScriptErrorMessage(XFA_IDS_INDEX_OUT_OF_BOUNDS); 5234 Throw(XFA_IDS_INDEX_OUT_OF_BOUNDS);
5266 } 5235 }
5267 } else { 5236 } else {
5268 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"item"); 5237 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"item");
5269 } 5238 }
5270 } 5239 }
5271 void CXFA_NodeList::Script_TreelistClass_NamedItem( 5240 void CXFA_NodeList::Script_TreelistClass_NamedItem(
5272 CFXJSE_Arguments* pArguments) { 5241 CFXJSE_Arguments* pArguments) {
5273 int32_t argc = pArguments->GetLength(); 5242 int32_t argc = pArguments->GetLength();
5274 if (argc == 1) { 5243 if (argc == 1) {
5275 CFX_ByteString szName = pArguments->GetUTF8String(0); 5244 CFX_ByteString szName = pArguments->GetUTF8String(0);
5276 CXFA_Node* pNode = 5245 CXFA_Node* pNode =
5277 NamedItem(CFX_WideString::FromUTF8(szName.AsStringC()).AsStringC()); 5246 NamedItem(CFX_WideString::FromUTF8(szName.AsStringC()).AsStringC());
5278 if (!pNode) { 5247 if (!pNode) {
5279 return; 5248 return;
5280 } 5249 }
5281 FXJSE_Value_Set(pArguments->GetReturnValue(), 5250 FXJSE_Value_Set(pArguments->GetReturnValue(),
5282 m_pDocument->GetScriptContext()->GetJSValueFromMap(pNode)); 5251 m_pDocument->GetScriptContext()->GetJSValueFromMap(pNode));
5283 } else { 5252 } else {
5284 ThrowScriptErrorMessage(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"namedItem"); 5253 Throw(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"namedItem");
5285 } 5254 }
5286 } 5255 }
5287 void CXFA_NodeList::Script_ListClass_Length(CFXJSE_Value* pValue, 5256 void CXFA_NodeList::Script_ListClass_Length(CFXJSE_Value* pValue,
5288 FX_BOOL bSetting, 5257 FX_BOOL bSetting,
5289 XFA_ATTRIBUTE eAttribute) { 5258 XFA_ATTRIBUTE eAttribute) {
5290 if (!bSetting) { 5259 if (!bSetting) {
5291 FXJSE_Value_SetInteger(pValue, GetLength()); 5260 FXJSE_Value_SetInteger(pValue, GetLength());
5292 } else { 5261 } else {
5293 ThrowScriptErrorMessage(XFA_IDS_INVAlID_PROP_SET); 5262 Throw(XFA_IDS_INVAlID_PROP_SET);
5294 } 5263 }
5295 } 5264 }
5296 CXFA_ArrayNodeList::CXFA_ArrayNodeList(CXFA_Document* pDocument) 5265 CXFA_ArrayNodeList::CXFA_ArrayNodeList(CXFA_Document* pDocument)
5297 : CXFA_NodeList(pDocument) {} 5266 : CXFA_NodeList(pDocument) {}
5298 void CXFA_ArrayNodeList::SetArrayNodeList(const CXFA_NodeArray& srcArray) { 5267 void CXFA_ArrayNodeList::SetArrayNodeList(const CXFA_NodeArray& srcArray) {
5299 if (srcArray.GetSize() > 0) { 5268 if (srcArray.GetSize() > 0) {
5300 m_array.Copy(srcArray); 5269 m_array.Copy(srcArray);
5301 } 5270 }
5302 } 5271 }
5303 int32_t CXFA_ArrayNodeList::GetLength() { 5272 int32_t CXFA_ArrayNodeList::GetLength() {
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after
5364 return m_pAttachNode->InsertChild(pNewNode, pBeforeNode); 5333 return m_pAttachNode->InsertChild(pNewNode, pBeforeNode);
5365 } 5334 }
5366 FX_BOOL CXFA_AttachNodeList::Remove(CXFA_Node* pNode) { 5335 FX_BOOL CXFA_AttachNodeList::Remove(CXFA_Node* pNode) {
5367 return m_pAttachNode->RemoveChild(pNode); 5336 return m_pAttachNode->RemoveChild(pNode);
5368 } 5337 }
5369 CXFA_Node* CXFA_AttachNodeList::Item(int32_t iIndex) { 5338 CXFA_Node* CXFA_AttachNodeList::Item(int32_t iIndex) {
5370 return m_pAttachNode->GetChild( 5339 return m_pAttachNode->GetChild(
5371 iIndex, XFA_ELEMENT_UNKNOWN, 5340 iIndex, XFA_ELEMENT_UNKNOWN,
5372 m_pAttachNode->GetClassID() == XFA_ELEMENT_Subform); 5341 m_pAttachNode->GetClassID() == XFA_ELEMENT_Subform);
5373 } 5342 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698