OLD | NEW |
1 // Copyright 2016 PDFium Authors. All rights reserved. | 1 // Copyright 2016 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/cxfa_widgetdata.h" | 7 #include "xfa/fxfa/parser/cxfa_widgetdata.h" |
8 | 8 |
9 #include "core/fxcrt/include/fx_ext.h" | 9 #include "core/fxcrt/include/fx_ext.h" |
10 #include "xfa/fxbarcode/include/BC_Library.h" | 10 #include "xfa/fxbarcode/include/BC_Library.h" |
(...skipping 276 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
287 | 287 |
288 FX_BOOL CXFA_WidgetData::GetButtonRollover(CFX_WideString& wsRollover, | 288 FX_BOOL CXFA_WidgetData::GetButtonRollover(CFX_WideString& wsRollover, |
289 FX_BOOL& bRichText) { | 289 FX_BOOL& bRichText) { |
290 if (CXFA_Node* pItems = m_pNode->GetChild(0, XFA_Element::Items)) { | 290 if (CXFA_Node* pItems = m_pNode->GetChild(0, XFA_Element::Items)) { |
291 CXFA_Node* pText = pItems->GetNodeItem(XFA_NODEITEM_FirstChild); | 291 CXFA_Node* pText = pItems->GetNodeItem(XFA_NODEITEM_FirstChild); |
292 while (pText) { | 292 while (pText) { |
293 CFX_WideStringC wsName; | 293 CFX_WideStringC wsName; |
294 pText->TryCData(XFA_ATTRIBUTE_Name, wsName); | 294 pText->TryCData(XFA_ATTRIBUTE_Name, wsName); |
295 if (wsName == FX_WSTRC(L"rollover")) { | 295 if (wsName == FX_WSTRC(L"rollover")) { |
296 pText->TryContent(wsRollover); | 296 pText->TryContent(wsRollover); |
297 bRichText = pText->GetClassID() == XFA_Element::ExData; | 297 bRichText = pText->GetElementType() == XFA_Element::ExData; |
298 return !wsRollover.IsEmpty(); | 298 return !wsRollover.IsEmpty(); |
299 } | 299 } |
300 pText = pText->GetNodeItem(XFA_NODEITEM_NextSibling); | 300 pText = pText->GetNodeItem(XFA_NODEITEM_NextSibling); |
301 } | 301 } |
302 } | 302 } |
303 return FALSE; | 303 return FALSE; |
304 } | 304 } |
305 | 305 |
306 FX_BOOL CXFA_WidgetData::GetButtonDown(CFX_WideString& wsDown, | 306 FX_BOOL CXFA_WidgetData::GetButtonDown(CFX_WideString& wsDown, |
307 FX_BOOL& bRichText) { | 307 FX_BOOL& bRichText) { |
308 if (CXFA_Node* pItems = m_pNode->GetChild(0, XFA_Element::Items)) { | 308 if (CXFA_Node* pItems = m_pNode->GetChild(0, XFA_Element::Items)) { |
309 CXFA_Node* pText = pItems->GetNodeItem(XFA_NODEITEM_FirstChild); | 309 CXFA_Node* pText = pItems->GetNodeItem(XFA_NODEITEM_FirstChild); |
310 while (pText) { | 310 while (pText) { |
311 CFX_WideStringC wsName; | 311 CFX_WideStringC wsName; |
312 pText->TryCData(XFA_ATTRIBUTE_Name, wsName); | 312 pText->TryCData(XFA_ATTRIBUTE_Name, wsName); |
313 if (wsName == FX_WSTRC(L"down")) { | 313 if (wsName == FX_WSTRC(L"down")) { |
314 pText->TryContent(wsDown); | 314 pText->TryContent(wsDown); |
315 bRichText = pText->GetClassID() == XFA_Element::ExData; | 315 bRichText = pText->GetElementType() == XFA_Element::ExData; |
316 return !wsDown.IsEmpty(); | 316 return !wsDown.IsEmpty(); |
317 } | 317 } |
318 pText = pText->GetNodeItem(XFA_NODEITEM_NextSibling); | 318 pText = pText->GetNodeItem(XFA_NODEITEM_NextSibling); |
319 } | 319 } |
320 } | 320 } |
321 return FALSE; | 321 return FALSE; |
322 } | 322 } |
323 | 323 |
324 int32_t CXFA_WidgetData::GetCheckButtonShape() { | 324 int32_t CXFA_WidgetData::GetCheckButtonShape() { |
325 CXFA_Node* pUIChild = GetUIChild(); | 325 CXFA_Node* pUIChild = GetUIChild(); |
326 if (pUIChild) | 326 if (pUIChild) |
327 return pUIChild->GetEnum(XFA_ATTRIBUTE_Shape); | 327 return pUIChild->GetEnum(XFA_ATTRIBUTE_Shape); |
328 return XFA_GetAttributeDefaultValue_Enum( | 328 return XFA_GetAttributeDefaultValue_Enum( |
329 XFA_Element::CheckButton, XFA_ATTRIBUTE_Shape, XFA_XDPPACKET_Form); | 329 XFA_Element::CheckButton, XFA_ATTRIBUTE_Shape, XFA_XDPPACKET_Form); |
330 } | 330 } |
331 | 331 |
332 int32_t CXFA_WidgetData::GetCheckButtonMark() { | 332 int32_t CXFA_WidgetData::GetCheckButtonMark() { |
333 CXFA_Node* pUIChild = GetUIChild(); | 333 CXFA_Node* pUIChild = GetUIChild(); |
334 if (pUIChild) | 334 if (pUIChild) |
335 return pUIChild->GetEnum(XFA_ATTRIBUTE_Mark); | 335 return pUIChild->GetEnum(XFA_ATTRIBUTE_Mark); |
336 return XFA_GetAttributeDefaultValue_Enum( | 336 return XFA_GetAttributeDefaultValue_Enum( |
337 XFA_Element::CheckButton, XFA_ATTRIBUTE_Mark, XFA_XDPPACKET_Form); | 337 XFA_Element::CheckButton, XFA_ATTRIBUTE_Mark, XFA_XDPPACKET_Form); |
338 } | 338 } |
339 | 339 |
340 FX_BOOL CXFA_WidgetData::IsRadioButton() { | 340 FX_BOOL CXFA_WidgetData::IsRadioButton() { |
341 if (CXFA_Node* pParent = m_pNode->GetNodeItem(XFA_NODEITEM_Parent)) | 341 if (CXFA_Node* pParent = m_pNode->GetNodeItem(XFA_NODEITEM_Parent)) |
342 return pParent->GetClassID() == XFA_Element::ExclGroup; | 342 return pParent->GetElementType() == XFA_Element::ExclGroup; |
343 return FALSE; | 343 return FALSE; |
344 } | 344 } |
345 | 345 |
346 FX_FLOAT CXFA_WidgetData::GetCheckButtonSize() { | 346 FX_FLOAT CXFA_WidgetData::GetCheckButtonSize() { |
347 CXFA_Node* pUIChild = GetUIChild(); | 347 CXFA_Node* pUIChild = GetUIChild(); |
348 if (pUIChild) | 348 if (pUIChild) |
349 return pUIChild->GetMeasure(XFA_ATTRIBUTE_Size).ToUnit(XFA_UNIT_Pt); | 349 return pUIChild->GetMeasure(XFA_ATTRIBUTE_Size).ToUnit(XFA_UNIT_Pt); |
350 return XFA_GetAttributeDefaultValue_Measure( | 350 return XFA_GetAttributeDefaultValue_Measure( |
351 XFA_Element::CheckButton, XFA_ATTRIBUTE_Size, XFA_XDPPACKET_Form) | 351 XFA_Element::CheckButton, XFA_ATTRIBUTE_Size, XFA_XDPPACKET_Form) |
352 .ToUnit(XFA_UNIT_Pt); | 352 .ToUnit(XFA_UNIT_Pt); |
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
387 if (eCheckState != XFA_CHECKSTATE_Off) { | 387 if (eCheckState != XFA_CHECKSTATE_Off) { |
388 if (CXFA_Node* pItems = m_pNode->GetChild(0, XFA_Element::Items)) { | 388 if (CXFA_Node* pItems = m_pNode->GetChild(0, XFA_Element::Items)) { |
389 CXFA_Node* pText = pItems->GetNodeItem(XFA_NODEITEM_FirstChild); | 389 CXFA_Node* pText = pItems->GetNodeItem(XFA_NODEITEM_FirstChild); |
390 if (pText) | 390 if (pText) |
391 pText->TryContent(wsValue); | 391 pText->TryContent(wsValue); |
392 } | 392 } |
393 } | 393 } |
394 CXFA_Node* pChild = | 394 CXFA_Node* pChild = |
395 exclGroup.GetNode()->GetNodeItem(XFA_NODEITEM_FirstChild); | 395 exclGroup.GetNode()->GetNodeItem(XFA_NODEITEM_FirstChild); |
396 for (; pChild; pChild = pChild->GetNodeItem(XFA_NODEITEM_NextSibling)) { | 396 for (; pChild; pChild = pChild->GetNodeItem(XFA_NODEITEM_NextSibling)) { |
397 if (pChild->GetClassID() != XFA_Element::Field) | 397 if (pChild->GetElementType() != XFA_Element::Field) |
398 continue; | 398 continue; |
399 | 399 |
400 CXFA_Node* pItem = pChild->GetChild(0, XFA_Element::Items); | 400 CXFA_Node* pItem = pChild->GetChild(0, XFA_Element::Items); |
401 if (!pItem) | 401 if (!pItem) |
402 continue; | 402 continue; |
403 | 403 |
404 CXFA_Node* pItemchild = pItem->GetNodeItem(XFA_NODEITEM_FirstChild); | 404 CXFA_Node* pItemchild = pItem->GetNodeItem(XFA_NODEITEM_FirstChild); |
405 if (!pItemchild) | 405 if (!pItemchild) |
406 continue; | 406 continue; |
407 | 407 |
(...skipping 25 matching lines...) Expand all Loading... |
433 break; | 433 break; |
434 } | 434 } |
435 pText = pText->GetNodeItem(XFA_NODEITEM_NextSibling); | 435 pText = pText->GetNodeItem(XFA_NODEITEM_NextSibling); |
436 } | 436 } |
437 SyncValue(wsContent, bNotify); | 437 SyncValue(wsContent, bNotify); |
438 } | 438 } |
439 } | 439 } |
440 | 440 |
441 CXFA_Node* CXFA_WidgetData::GetExclGroupNode() { | 441 CXFA_Node* CXFA_WidgetData::GetExclGroupNode() { |
442 CXFA_Node* pExcl = ToNode(m_pNode->GetNodeItem(XFA_NODEITEM_Parent)); | 442 CXFA_Node* pExcl = ToNode(m_pNode->GetNodeItem(XFA_NODEITEM_Parent)); |
443 if (!pExcl || pExcl->GetClassID() != XFA_Element::ExclGroup) | 443 if (!pExcl || pExcl->GetElementType() != XFA_Element::ExclGroup) |
444 return NULL; | 444 return NULL; |
445 return pExcl; | 445 return pExcl; |
446 } | 446 } |
447 | 447 |
448 CXFA_Node* CXFA_WidgetData::GetSelectedMember() { | 448 CXFA_Node* CXFA_WidgetData::GetSelectedMember() { |
449 CXFA_Node* pSelectedMember = NULL; | 449 CXFA_Node* pSelectedMember = NULL; |
450 CFX_WideString wsState = GetRawValue(); | 450 CFX_WideString wsState = GetRawValue(); |
451 if (wsState.IsEmpty()) | 451 if (wsState.IsEmpty()) |
452 return pSelectedMember; | 452 return pSelectedMember; |
453 | 453 |
(...skipping 22 matching lines...) Expand all Loading... |
476 return nullptr; | 476 return nullptr; |
477 } | 477 } |
478 | 478 |
479 void CXFA_WidgetData::SetSelectedMemberByValue(const CFX_WideStringC& wsValue, | 479 void CXFA_WidgetData::SetSelectedMemberByValue(const CFX_WideStringC& wsValue, |
480 bool bNotify, | 480 bool bNotify, |
481 FX_BOOL bScriptModify, | 481 FX_BOOL bScriptModify, |
482 FX_BOOL bSyncData) { | 482 FX_BOOL bSyncData) { |
483 CFX_WideString wsExclGroup; | 483 CFX_WideString wsExclGroup; |
484 for (CXFA_Node* pNode = m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild); pNode; | 484 for (CXFA_Node* pNode = m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild); pNode; |
485 pNode = pNode->GetNodeItem(XFA_NODEITEM_NextSibling)) { | 485 pNode = pNode->GetNodeItem(XFA_NODEITEM_NextSibling)) { |
486 if (pNode->GetClassID() != XFA_Element::Field) | 486 if (pNode->GetElementType() != XFA_Element::Field) |
487 continue; | 487 continue; |
488 | 488 |
489 CXFA_Node* pItem = pNode->GetChild(0, XFA_Element::Items); | 489 CXFA_Node* pItem = pNode->GetChild(0, XFA_Element::Items); |
490 if (!pItem) | 490 if (!pItem) |
491 continue; | 491 continue; |
492 | 492 |
493 CXFA_Node* pItemchild = pItem->GetNodeItem(XFA_NODEITEM_FirstChild); | 493 CXFA_Node* pItemchild = pItem->GetNodeItem(XFA_NODEITEM_FirstChild); |
494 if (!pItemchild) | 494 if (!pItemchild) |
495 continue; | 495 continue; |
496 | 496 |
(...skipping 16 matching lines...) Expand all Loading... |
513 } | 513 } |
514 } | 514 } |
515 | 515 |
516 CXFA_Node* CXFA_WidgetData::GetExclGroupFirstMember() { | 516 CXFA_Node* CXFA_WidgetData::GetExclGroupFirstMember() { |
517 CXFA_Node* pExcl = GetNode(); | 517 CXFA_Node* pExcl = GetNode(); |
518 if (!pExcl) | 518 if (!pExcl) |
519 return NULL; | 519 return NULL; |
520 | 520 |
521 CXFA_Node* pNode = pExcl->GetNodeItem(XFA_NODEITEM_FirstChild); | 521 CXFA_Node* pNode = pExcl->GetNodeItem(XFA_NODEITEM_FirstChild); |
522 while (pNode) { | 522 while (pNode) { |
523 if (pNode->GetClassID() == XFA_Element::Field) | 523 if (pNode->GetElementType() == XFA_Element::Field) |
524 return pNode; | 524 return pNode; |
525 | 525 |
526 pNode = pNode->GetNodeItem(XFA_NODEITEM_NextSibling); | 526 pNode = pNode->GetNodeItem(XFA_NODEITEM_NextSibling); |
527 } | 527 } |
528 return NULL; | 528 return NULL; |
529 } | 529 } |
530 CXFA_Node* CXFA_WidgetData::GetExclGroupNextMember(CXFA_Node* pNode) { | 530 CXFA_Node* CXFA_WidgetData::GetExclGroupNextMember(CXFA_Node* pNode) { |
531 if (!pNode) | 531 if (!pNode) |
532 return NULL; | 532 return NULL; |
533 | 533 |
534 CXFA_Node* pNodeField = pNode->GetNodeItem(XFA_NODEITEM_NextSibling); | 534 CXFA_Node* pNodeField = pNode->GetNodeItem(XFA_NODEITEM_NextSibling); |
535 while (pNodeField) { | 535 while (pNodeField) { |
536 if (pNodeField->GetClassID() == XFA_Element::Field) | 536 if (pNodeField->GetElementType() == XFA_Element::Field) |
537 return pNodeField; | 537 return pNodeField; |
538 | 538 |
539 pNodeField = pNodeField->GetNodeItem(XFA_NODEITEM_NextSibling); | 539 pNodeField = pNodeField->GetNodeItem(XFA_NODEITEM_NextSibling); |
540 } | 540 } |
541 return NULL; | 541 return NULL; |
542 } | 542 } |
543 | 543 |
544 int32_t CXFA_WidgetData::GetChoiceListCommitOn() { | 544 int32_t CXFA_WidgetData::GetChoiceListCommitOn() { |
545 CXFA_Node* pUIChild = GetUIChild(); | 545 CXFA_Node* pUIChild = GetUIChild(); |
546 if (pUIChild) | 546 if (pUIChild) |
(...skipping 23 matching lines...) Expand all Loading... |
570 return (iOpenMode == XFA_ATTRIBUTEENUM_Always || | 570 return (iOpenMode == XFA_ATTRIBUTEENUM_Always || |
571 iOpenMode == XFA_ATTRIBUTEENUM_MultiSelect); | 571 iOpenMode == XFA_ATTRIBUTEENUM_MultiSelect); |
572 } | 572 } |
573 | 573 |
574 int32_t CXFA_WidgetData::CountChoiceListItems(FX_BOOL bSaveValue) { | 574 int32_t CXFA_WidgetData::CountChoiceListItems(FX_BOOL bSaveValue) { |
575 CXFA_NodeArray pItems; | 575 CXFA_NodeArray pItems; |
576 CXFA_Node* pItem = NULL; | 576 CXFA_Node* pItem = NULL; |
577 int32_t iCount = 0; | 577 int32_t iCount = 0; |
578 CXFA_Node* pNode = m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild); | 578 CXFA_Node* pNode = m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild); |
579 for (; pNode; pNode = pNode->GetNodeItem(XFA_NODEITEM_NextSibling)) { | 579 for (; pNode; pNode = pNode->GetNodeItem(XFA_NODEITEM_NextSibling)) { |
580 if (pNode->GetClassID() != XFA_Element::Items) | 580 if (pNode->GetElementType() != XFA_Element::Items) |
581 continue; | 581 continue; |
582 | 582 |
583 iCount++; | 583 iCount++; |
584 pItems.Add(pNode); | 584 pItems.Add(pNode); |
585 if (iCount == 2) | 585 if (iCount == 2) |
586 break; | 586 break; |
587 } | 587 } |
588 if (iCount == 0) | 588 if (iCount == 0) |
589 return 0; | 589 return 0; |
590 | 590 |
(...skipping 10 matching lines...) Expand all Loading... |
601 | 601 |
602 FX_BOOL CXFA_WidgetData::GetChoiceListItem(CFX_WideString& wsText, | 602 FX_BOOL CXFA_WidgetData::GetChoiceListItem(CFX_WideString& wsText, |
603 int32_t nIndex, | 603 int32_t nIndex, |
604 FX_BOOL bSaveValue) { | 604 FX_BOOL bSaveValue) { |
605 wsText.clear(); | 605 wsText.clear(); |
606 CXFA_NodeArray pItemsArray; | 606 CXFA_NodeArray pItemsArray; |
607 CXFA_Node* pItems = nullptr; | 607 CXFA_Node* pItems = nullptr; |
608 int32_t iCount = 0; | 608 int32_t iCount = 0; |
609 CXFA_Node* pNode = m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild); | 609 CXFA_Node* pNode = m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild); |
610 for (; pNode; pNode = pNode->GetNodeItem(XFA_NODEITEM_NextSibling)) { | 610 for (; pNode; pNode = pNode->GetNodeItem(XFA_NODEITEM_NextSibling)) { |
611 if (pNode->GetClassID() != XFA_Element::Items) | 611 if (pNode->GetElementType() != XFA_Element::Items) |
612 continue; | 612 continue; |
613 | 613 |
614 iCount++; | 614 iCount++; |
615 pItemsArray.Add(pNode); | 615 pItemsArray.Add(pNode); |
616 if (iCount == 2) | 616 if (iCount == 2) |
617 break; | 617 break; |
618 } | 618 } |
619 if (iCount == 0) | 619 if (iCount == 0) |
620 return FALSE; | 620 return FALSE; |
621 | 621 |
(...skipping 14 matching lines...) Expand all Loading... |
636 return FALSE; | 636 return FALSE; |
637 } | 637 } |
638 | 638 |
639 void CXFA_WidgetData::GetChoiceListItems(CFX_WideStringArray& wsTextArray, | 639 void CXFA_WidgetData::GetChoiceListItems(CFX_WideStringArray& wsTextArray, |
640 FX_BOOL bSaveValue) { | 640 FX_BOOL bSaveValue) { |
641 CXFA_NodeArray pItems; | 641 CXFA_NodeArray pItems; |
642 CXFA_Node* pItem = NULL; | 642 CXFA_Node* pItem = NULL; |
643 int32_t iCount = 0; | 643 int32_t iCount = 0; |
644 CXFA_Node* pNode = m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild); | 644 CXFA_Node* pNode = m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild); |
645 for (; pNode; pNode = pNode->GetNodeItem(XFA_NODEITEM_NextSibling)) { | 645 for (; pNode; pNode = pNode->GetNodeItem(XFA_NODEITEM_NextSibling)) { |
646 if (pNode->GetClassID() != XFA_Element::Items) | 646 if (pNode->GetElementType() != XFA_Element::Items) |
647 continue; | 647 continue; |
648 | 648 |
649 iCount++; | 649 iCount++; |
650 pItems.Add(pNode); | 650 pItems.Add(pNode); |
651 if (iCount == 2) | 651 if (iCount == 2) |
652 break; | 652 break; |
653 } | 653 } |
654 if (iCount == 0) | 654 if (iCount == 0) |
655 return; | 655 return; |
656 | 656 |
(...skipping 211 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
868 FX_BOOL bNotify) { | 868 FX_BOOL bNotify) { |
869 CFX_WideString wsNewValue(wsValue); | 869 CFX_WideString wsNewValue(wsValue); |
870 if (wsNewValue.IsEmpty()) | 870 if (wsNewValue.IsEmpty()) |
871 wsNewValue = wsLabel; | 871 wsNewValue = wsLabel; |
872 | 872 |
873 CXFA_NodeArray listitems; | 873 CXFA_NodeArray listitems; |
874 int32_t iCount = 0; | 874 int32_t iCount = 0; |
875 CXFA_Node* pItemNode = m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild); | 875 CXFA_Node* pItemNode = m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild); |
876 for (; pItemNode; | 876 for (; pItemNode; |
877 pItemNode = pItemNode->GetNodeItem(XFA_NODEITEM_NextSibling)) { | 877 pItemNode = pItemNode->GetNodeItem(XFA_NODEITEM_NextSibling)) { |
878 if (pItemNode->GetClassID() != XFA_Element::Items) | 878 if (pItemNode->GetElementType() != XFA_Element::Items) |
879 continue; | 879 continue; |
880 | 880 |
881 listitems.Add(pItemNode); | 881 listitems.Add(pItemNode); |
882 iCount++; | 882 iCount++; |
883 } | 883 } |
884 if (iCount < 1) { | 884 if (iCount < 1) { |
885 CXFA_Node* pItems = m_pNode->CreateSamePacketNode(XFA_Element::Items); | 885 CXFA_Node* pItems = m_pNode->CreateSamePacketNode(XFA_Element::Items); |
886 m_pNode->InsertChild(-1, pItems); | 886 m_pNode->InsertChild(-1, pItems); |
887 InsertListTextItem(pItems, wsLabel, nIndex); | 887 InsertListTextItem(pItems, wsLabel, nIndex); |
888 CXFA_Node* pSaveItems = m_pNode->CreateSamePacketNode(XFA_Element::Items); | 888 CXFA_Node* pSaveItems = m_pNode->CreateSamePacketNode(XFA_Element::Items); |
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
925 m_pNode->GetDocument()->GetNotify()->OnWidgetListItemAdded( | 925 m_pNode->GetDocument()->GetNotify()->OnWidgetListItemAdded( |
926 this, wsLabel.c_str(), wsValue.c_str(), nIndex); | 926 this, wsLabel.c_str(), wsValue.c_str(), nIndex); |
927 } | 927 } |
928 | 928 |
929 void CXFA_WidgetData::GetItemLabel(const CFX_WideStringC& wsValue, | 929 void CXFA_WidgetData::GetItemLabel(const CFX_WideStringC& wsValue, |
930 CFX_WideString& wsLabel) { | 930 CFX_WideString& wsLabel) { |
931 int32_t iCount = 0; | 931 int32_t iCount = 0; |
932 CXFA_NodeArray listitems; | 932 CXFA_NodeArray listitems; |
933 CXFA_Node* pItems = m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild); | 933 CXFA_Node* pItems = m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild); |
934 for (; pItems; pItems = pItems->GetNodeItem(XFA_NODEITEM_NextSibling)) { | 934 for (; pItems; pItems = pItems->GetNodeItem(XFA_NODEITEM_NextSibling)) { |
935 if (pItems->GetClassID() != XFA_Element::Items) | 935 if (pItems->GetElementType() != XFA_Element::Items) |
936 continue; | 936 continue; |
937 | 937 |
938 iCount++; | 938 iCount++; |
939 listitems.Add(pItems); | 939 listitems.Add(pItems); |
940 } | 940 } |
941 if (iCount <= 1) { | 941 if (iCount <= 1) { |
942 wsLabel = wsValue; | 942 wsLabel = wsValue; |
943 } else { | 943 } else { |
944 CXFA_Node* pLabelItems = listitems[0]; | 944 CXFA_Node* pLabelItems = listitems[0]; |
945 FX_BOOL bSave = pLabelItems->GetBoolean(XFA_ATTRIBUTE_Save); | 945 FX_BOOL bSave = pLabelItems->GetBoolean(XFA_ATTRIBUTE_Save); |
(...skipping 25 matching lines...) Expand all Loading... |
971 } | 971 } |
972 } | 972 } |
973 } | 973 } |
974 | 974 |
975 void CXFA_WidgetData::GetItemValue(const CFX_WideStringC& wsLabel, | 975 void CXFA_WidgetData::GetItemValue(const CFX_WideStringC& wsLabel, |
976 CFX_WideString& wsValue) { | 976 CFX_WideString& wsValue) { |
977 int32_t iCount = 0; | 977 int32_t iCount = 0; |
978 CXFA_NodeArray listitems; | 978 CXFA_NodeArray listitems; |
979 CXFA_Node* pItems = m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild); | 979 CXFA_Node* pItems = m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild); |
980 for (; pItems; pItems = pItems->GetNodeItem(XFA_NODEITEM_NextSibling)) { | 980 for (; pItems; pItems = pItems->GetNodeItem(XFA_NODEITEM_NextSibling)) { |
981 if (pItems->GetClassID() != XFA_Element::Items) | 981 if (pItems->GetElementType() != XFA_Element::Items) |
982 continue; | 982 continue; |
983 | 983 |
984 iCount++; | 984 iCount++; |
985 listitems.Add(pItems); | 985 listitems.Add(pItems); |
986 } | 986 } |
987 if (iCount <= 1) { | 987 if (iCount <= 1) { |
988 wsValue = wsLabel; | 988 wsValue = wsLabel; |
989 } else { | 989 } else { |
990 CXFA_Node* pLabelItems = listitems[0]; | 990 CXFA_Node* pLabelItems = listitems[0]; |
991 FX_BOOL bSave = pLabelItems->GetBoolean(XFA_ATTRIBUTE_Save); | 991 FX_BOOL bSave = pLabelItems->GetBoolean(XFA_ATTRIBUTE_Save); |
(...skipping 24 matching lines...) Expand all Loading... |
1016 } | 1016 } |
1017 } | 1017 } |
1018 | 1018 |
1019 FX_BOOL CXFA_WidgetData::DeleteItem(int32_t nIndex, | 1019 FX_BOOL CXFA_WidgetData::DeleteItem(int32_t nIndex, |
1020 FX_BOOL bNotify, | 1020 FX_BOOL bNotify, |
1021 FX_BOOL bScriptModify, | 1021 FX_BOOL bScriptModify, |
1022 FX_BOOL bSyncData) { | 1022 FX_BOOL bSyncData) { |
1023 FX_BOOL bSetValue = FALSE; | 1023 FX_BOOL bSetValue = FALSE; |
1024 CXFA_Node* pItems = m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild); | 1024 CXFA_Node* pItems = m_pNode->GetNodeItem(XFA_NODEITEM_FirstChild); |
1025 for (; pItems; pItems = pItems->GetNodeItem(XFA_NODEITEM_NextSibling)) { | 1025 for (; pItems; pItems = pItems->GetNodeItem(XFA_NODEITEM_NextSibling)) { |
1026 if (pItems->GetClassID() != XFA_Element::Items) | 1026 if (pItems->GetElementType() != XFA_Element::Items) |
1027 continue; | 1027 continue; |
1028 | 1028 |
1029 if (nIndex < 0) { | 1029 if (nIndex < 0) { |
1030 while (CXFA_Node* pNode = pItems->GetNodeItem(XFA_NODEITEM_FirstChild)) { | 1030 while (CXFA_Node* pNode = pItems->GetNodeItem(XFA_NODEITEM_FirstChild)) { |
1031 pItems->RemoveChild(pNode); | 1031 pItems->RemoveChild(pNode); |
1032 } | 1032 } |
1033 } else { | 1033 } else { |
1034 if (!bSetValue && pItems->GetBoolean(XFA_ATTRIBUTE_Save)) { | 1034 if (!bSetValue && pItems->GetBoolean(XFA_ATTRIBUTE_Save)) { |
1035 SetItemState(nIndex, FALSE, true, bScriptModify, bSyncData); | 1035 SetItemState(nIndex, FALSE, true, bScriptModify, bSyncData); |
1036 bSetValue = TRUE; | 1036 bSetValue = TRUE; |
(...skipping 232 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1269 CXFA_Node* pUIChild = GetUIChild(); | 1269 CXFA_Node* pUIChild = GetUIChild(); |
1270 if (pUIChild) | 1270 if (pUIChild) |
1271 return pUIChild->GetEnum(XFA_ATTRIBUTE_VScrollPolicy); | 1271 return pUIChild->GetEnum(XFA_ATTRIBUTE_VScrollPolicy); |
1272 return XFA_GetAttributeDefaultValue_Enum( | 1272 return XFA_GetAttributeDefaultValue_Enum( |
1273 XFA_Element::TextEdit, XFA_ATTRIBUTE_VScrollPolicy, XFA_XDPPACKET_Form); | 1273 XFA_Element::TextEdit, XFA_ATTRIBUTE_VScrollPolicy, XFA_XDPPACKET_Form); |
1274 } | 1274 } |
1275 | 1275 |
1276 int32_t CXFA_WidgetData::GetMaxChars(XFA_Element& eType) { | 1276 int32_t CXFA_WidgetData::GetMaxChars(XFA_Element& eType) { |
1277 if (CXFA_Node* pNode = m_pNode->GetChild(0, XFA_Element::Value)) { | 1277 if (CXFA_Node* pNode = m_pNode->GetChild(0, XFA_Element::Value)) { |
1278 if (CXFA_Node* pChild = pNode->GetNodeItem(XFA_NODEITEM_FirstChild)) { | 1278 if (CXFA_Node* pChild = pNode->GetNodeItem(XFA_NODEITEM_FirstChild)) { |
1279 switch (pChild->GetClassID()) { | 1279 switch (pChild->GetElementType()) { |
1280 case XFA_Element::Text: | 1280 case XFA_Element::Text: |
1281 eType = XFA_Element::Text; | 1281 eType = XFA_Element::Text; |
1282 return pChild->GetInteger(XFA_ATTRIBUTE_MaxChars); | 1282 return pChild->GetInteger(XFA_ATTRIBUTE_MaxChars); |
1283 case XFA_Element::ExData: { | 1283 case XFA_Element::ExData: { |
1284 eType = XFA_Element::ExData; | 1284 eType = XFA_Element::ExData; |
1285 int32_t iMax = pChild->GetInteger(XFA_ATTRIBUTE_MaxLength); | 1285 int32_t iMax = pChild->GetInteger(XFA_ATTRIBUTE_MaxLength); |
1286 return iMax < 0 ? 0 : iMax; | 1286 return iMax < 0 ? 0 : iMax; |
1287 } | 1287 } |
1288 default: | 1288 default: |
1289 break; | 1289 break; |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1321 m_bIsNull = FALSE; | 1321 m_bIsNull = FALSE; |
1322 CFX_WideString wsNewText(wsValue); | 1322 CFX_WideString wsNewText(wsValue); |
1323 CFX_WideString wsPicture; | 1323 CFX_WideString wsPicture; |
1324 GetPictureContent(wsPicture, eValueType); | 1324 GetPictureContent(wsPicture, eValueType); |
1325 FX_BOOL bValidate = TRUE; | 1325 FX_BOOL bValidate = TRUE; |
1326 FX_BOOL bSyncData = FALSE; | 1326 FX_BOOL bSyncData = FALSE; |
1327 CXFA_Node* pNode = GetUIChild(); | 1327 CXFA_Node* pNode = GetUIChild(); |
1328 if (!pNode) | 1328 if (!pNode) |
1329 return TRUE; | 1329 return TRUE; |
1330 | 1330 |
1331 XFA_Element uiType = pNode->GetClassID(); | 1331 XFA_Element uiType = pNode->GetElementType(); |
1332 if (!wsPicture.IsEmpty()) { | 1332 if (!wsPicture.IsEmpty()) { |
1333 CXFA_LocaleMgr* pLocalMgr = m_pNode->GetDocument()->GetLocalMgr(); | 1333 CXFA_LocaleMgr* pLocalMgr = m_pNode->GetDocument()->GetLocalMgr(); |
1334 IFX_Locale* pLocale = GetLocal(); | 1334 IFX_Locale* pLocale = GetLocal(); |
1335 CXFA_LocaleValue widgetValue = XFA_GetLocaleValue(this); | 1335 CXFA_LocaleValue widgetValue = XFA_GetLocaleValue(this); |
1336 bValidate = | 1336 bValidate = |
1337 widgetValue.ValidateValue(wsValue, wsPicture, pLocale, &wsPicture); | 1337 widgetValue.ValidateValue(wsValue, wsPicture, pLocale, &wsPicture); |
1338 if (bValidate) { | 1338 if (bValidate) { |
1339 widgetValue = CXFA_LocaleValue(widgetValue.GetType(), wsNewText, | 1339 widgetValue = CXFA_LocaleValue(widgetValue.GetType(), wsNewText, |
1340 wsPicture, pLocale, pLocalMgr); | 1340 wsPicture, pLocale, pLocalMgr); |
1341 wsNewText = widgetValue.GetValue(); | 1341 wsNewText = widgetValue.GetValue(); |
(...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1486 | 1486 |
1487 if (eValueType == XFA_VALUEPICTURE_Display) | 1487 if (eValueType == XFA_VALUEPICTURE_Display) |
1488 GetItemLabel(wsValue.AsStringC(), wsValue); | 1488 GetItemLabel(wsValue.AsStringC(), wsValue); |
1489 | 1489 |
1490 CFX_WideString wsPicture; | 1490 CFX_WideString wsPicture; |
1491 GetPictureContent(wsPicture, eValueType); | 1491 GetPictureContent(wsPicture, eValueType); |
1492 CXFA_Node* pNode = GetUIChild(); | 1492 CXFA_Node* pNode = GetUIChild(); |
1493 if (!pNode) | 1493 if (!pNode) |
1494 return TRUE; | 1494 return TRUE; |
1495 | 1495 |
1496 XFA_Element uiType = GetUIChild()->GetClassID(); | 1496 XFA_Element uiType = GetUIChild()->GetElementType(); |
1497 switch (uiType) { | 1497 switch (uiType) { |
1498 case XFA_Element::ChoiceList: { | 1498 case XFA_Element::ChoiceList: { |
1499 if (eValueType == XFA_VALUEPICTURE_Display) { | 1499 if (eValueType == XFA_VALUEPICTURE_Display) { |
1500 int32_t iSelItemIndex = GetSelectedItem(0); | 1500 int32_t iSelItemIndex = GetSelectedItem(0); |
1501 if (iSelItemIndex >= 0) { | 1501 if (iSelItemIndex >= 0) { |
1502 GetChoiceListItem(wsValue, iSelItemIndex); | 1502 GetChoiceListItem(wsValue, iSelItemIndex); |
1503 wsPicture.clear(); | 1503 wsPicture.clear(); |
1504 } | 1504 } |
1505 } | 1505 } |
1506 } break; | 1506 } break; |
(...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1591 ASSERT(GetNode()); | 1591 ASSERT(GetNode()); |
1592 CXFA_Node* pNodeValue = GetNode()->GetChild(0, XFA_Element::Value); | 1592 CXFA_Node* pNodeValue = GetNode()->GetChild(0, XFA_Element::Value); |
1593 if (!pNodeValue) | 1593 if (!pNodeValue) |
1594 return FALSE; | 1594 return FALSE; |
1595 | 1595 |
1596 CXFA_Node* pValueChild = pNodeValue->GetNodeItem(XFA_NODEITEM_FirstChild); | 1596 CXFA_Node* pValueChild = pNodeValue->GetNodeItem(XFA_NODEITEM_FirstChild); |
1597 if (!pValueChild) | 1597 if (!pValueChild) |
1598 return FALSE; | 1598 return FALSE; |
1599 | 1599 |
1600 int32_t iVTType = XFA_VT_NULL; | 1600 int32_t iVTType = XFA_VT_NULL; |
1601 XFA_Element eType = pValueChild->GetClassID(); | 1601 XFA_Element eType = pValueChild->GetElementType(); |
1602 switch (eType) { | 1602 switch (eType) { |
1603 case XFA_Element::Decimal: | 1603 case XFA_Element::Decimal: |
1604 iVTType = XFA_VT_DECIMAL; | 1604 iVTType = XFA_VT_DECIMAL; |
1605 break; | 1605 break; |
1606 case XFA_Element::Float: | 1606 case XFA_Element::Float: |
1607 iVTType = XFA_VT_FLOAT; | 1607 iVTType = XFA_VT_FLOAT; |
1608 break; | 1608 break; |
1609 case XFA_Element::Date: | 1609 case XFA_Element::Date: |
1610 iVTType = XFA_VT_DATE; | 1610 iVTType = XFA_VT_DATE; |
1611 break; | 1611 break; |
(...skipping 167 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1779 } | 1779 } |
1780 } | 1780 } |
1781 } else if (wc == L'.') { | 1781 } else if (wc == L'.') { |
1782 iTread_ = 0; | 1782 iTread_ = 0; |
1783 iLead = -1; | 1783 iLead = -1; |
1784 } | 1784 } |
1785 wsRet += wc; | 1785 wsRet += wc; |
1786 } | 1786 } |
1787 return wsRet; | 1787 return wsRet; |
1788 } | 1788 } |
OLD | NEW |