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

Side by Side Diff: fpdfsdk/src/fsdk_baseannot.cpp

Issue 1157773012: Cleanup: Make CPDF_Annot::m_pAnnotDict private. (Closed) Base URL: https://pdfium.googlesource.com/pdfium@master
Patch Set: Created 5 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 "../include/fsdk_define.h" 7 #include "../include/fsdk_define.h"
8 #include "../include/fsdk_mgr.h" 8 #include "../include/fsdk_mgr.h"
9 #include "../include/fsdk_baseannot.h" 9 #include "../include/fsdk_baseannot.h"
10 10
(...skipping 546 matching lines...) Expand 10 before | Expand all | Expand 10 after
557 557
558 void CPDFSDK_Annot::SetTabOrder(int iTabOrder) 558 void CPDFSDK_Annot::SetTabOrder(int iTabOrder)
559 { 559 {
560 m_nTabOrder = iTabOrder; 560 m_nTabOrder = iTabOrder;
561 } 561 }
562 562
563 CPDF_Dictionary* CPDFSDK_Annot::GetAnnotDict() const 563 CPDF_Dictionary* CPDFSDK_Annot::GetAnnotDict() const
564 { 564 {
565 ASSERT(m_pAnnot != NULL); 565 ASSERT(m_pAnnot != NULL);
566 566
567 » return m_pAnnot->m_pAnnotDict; 567 » return m_pAnnot->GetAnnotDict();
568 } 568 }
569 569
570 void CPDFSDK_Annot::SetRect(const CPDF_Rect& rect) 570 void CPDFSDK_Annot::SetRect(const CPDF_Rect& rect)
571 { 571 {
572 ASSERT(m_pAnnot != NULL); 572 ASSERT(m_pAnnot != NULL);
573 » ASSERT(m_pAnnot->m_pAnnotDict != NULL); 573 » ASSERT(m_pAnnot->GetAnnotDict() != NULL);
574 ASSERT(rect.right - rect.left >= GetMinWidth()); 574 ASSERT(rect.right - rect.left >= GetMinWidth());
575 ASSERT(rect.top - rect.bottom >= GetMinHeight()); 575 ASSERT(rect.top - rect.bottom >= GetMinHeight());
576 576
577 » m_pAnnot->m_pAnnotDict->SetAtRect("Rect", rect); 577 » m_pAnnot->GetAnnotDict()->SetAtRect("Rect", rect);
578 } 578 }
579 579
580 CPDF_Rect CPDFSDK_Annot::GetRect() const 580 CPDF_Rect CPDFSDK_Annot::GetRect() const
581 { 581 {
582 ASSERT(m_pAnnot != NULL); 582 ASSERT(m_pAnnot != NULL);
583 583
584 CPDF_Rect rect; 584 CPDF_Rect rect;
585 m_pAnnot->GetRect(rect); 585 m_pAnnot->GetRect(rect);
586 586
587 return rect; 587 return rect;
(...skipping 16 matching lines...) Expand all
604 { 604 {
605 ASSERT(m_pPageView != NULL); 605 ASSERT(m_pPageView != NULL);
606 ASSERT(m_pAnnot != NULL); 606 ASSERT(m_pAnnot != NULL);
607 607
608 m_pAnnot->DrawAppearance(m_pPageView->GetPDFPage(), pDevice, pUser2Devic e, mode, pOptions); 608 m_pAnnot->DrawAppearance(m_pPageView->GetPDFPage(), pDevice, pUser2Devic e, mode, pOptions);
609 } 609 }
610 610
611 FX_BOOL CPDFSDK_Annot::IsAppearanceValid() 611 FX_BOOL CPDFSDK_Annot::IsAppearanceValid()
612 { 612 {
613 ASSERT(m_pAnnot != NULL); 613 ASSERT(m_pAnnot != NULL);
614 » ASSERT(m_pAnnot->m_pAnnotDict != NULL); 614 » ASSERT(m_pAnnot->GetAnnotDict() != NULL);
615 615
616 » return m_pAnnot->m_pAnnotDict->GetDict("AP") != NULL; 616 » return m_pAnnot->GetAnnotDict()->GetDict("AP") != NULL;
617 } 617 }
618 618
619 FX_BOOL CPDFSDK_Annot::IsAppearanceValid(CPDF_Annot::AppearanceMode mode) 619 FX_BOOL CPDFSDK_Annot::IsAppearanceValid(CPDF_Annot::AppearanceMode mode)
620 { 620 {
621 ASSERT(m_pAnnot != NULL); 621 ASSERT(m_pAnnot != NULL);
622 » ASSERT(m_pAnnot->m_pAnnotDict != NULL); 622 » ASSERT(m_pAnnot->GetAnnotDict() != NULL);
623 623
624 » CPDF_Dictionary* pAP = m_pAnnot->m_pAnnotDict->GetDict("AP"); 624 » CPDF_Dictionary* pAP = m_pAnnot->GetAnnotDict()->GetDict("AP");
625 if (pAP == NULL) return FALSE; 625 if (pAP == NULL) return FALSE;
626 626
627 // Choose the right sub-ap 627 // Choose the right sub-ap
628 const FX_CHAR* ap_entry = "N"; 628 const FX_CHAR* ap_entry = "N";
629 if (mode == CPDF_Annot::Down) 629 if (mode == CPDF_Annot::Down)
630 ap_entry = "D"; 630 ap_entry = "D";
631 else if (mode == CPDF_Annot::Rollover) 631 else if (mode == CPDF_Annot::Rollover)
632 ap_entry = "R"; 632 ap_entry = "R";
633 if (!pAP->KeyExist(ap_entry)) 633 if (!pAP->KeyExist(ap_entry))
634 ap_entry = "N"; 634 ap_entry = "N";
(...skipping 14 matching lines...) Expand all
649 649
650 void CPDFSDK_Annot::ClearCachedAP() 650 void CPDFSDK_Annot::ClearCachedAP()
651 { 651 {
652 ASSERT(m_pAnnot != NULL); 652 ASSERT(m_pAnnot != NULL);
653 m_pAnnot->ClearCachedAP(); 653 m_pAnnot->ClearCachedAP();
654 } 654 }
655 655
656 void CPDFSDK_Annot::SetContents(const CFX_WideString& sContents) 656 void CPDFSDK_Annot::SetContents(const CFX_WideString& sContents)
657 { 657 {
658 ASSERT(m_pAnnot != NULL); 658 ASSERT(m_pAnnot != NULL);
659 » ASSERT(m_pAnnot->m_pAnnotDict != NULL); 659 » ASSERT(m_pAnnot->GetAnnotDict() != NULL);
660 660
661 if (sContents.IsEmpty()) 661 if (sContents.IsEmpty())
662 » » m_pAnnot->m_pAnnotDict->RemoveAt("Contents"); 662 » » m_pAnnot->GetAnnotDict()->RemoveAt("Contents");
663 else 663 else
664 » » m_pAnnot->m_pAnnotDict->SetAtString("Contents", PDF_EncodeText(s Contents)); 664 » » m_pAnnot->GetAnnotDict()->SetAtString("Contents", PDF_EncodeText (sContents));
665 } 665 }
666 666
667 CFX_WideString CPDFSDK_Annot::GetContents() const 667 CFX_WideString CPDFSDK_Annot::GetContents() const
668 { 668 {
669 ASSERT(m_pAnnot != NULL); 669 ASSERT(m_pAnnot != NULL);
670 » ASSERT(m_pAnnot->m_pAnnotDict != NULL); 670 » ASSERT(m_pAnnot->GetAnnotDict() != NULL);
671 671
672 » return m_pAnnot->m_pAnnotDict->GetUnicodeText("Contents"); 672 » return m_pAnnot->GetAnnotDict()->GetUnicodeText("Contents");
673 } 673 }
674 674
675 void CPDFSDK_Annot::SetAnnotName(const CFX_WideString& sName) 675 void CPDFSDK_Annot::SetAnnotName(const CFX_WideString& sName)
676 { 676 {
677 ASSERT(m_pAnnot != NULL); 677 ASSERT(m_pAnnot != NULL);
678 » ASSERT(m_pAnnot->m_pAnnotDict != NULL); 678 » ASSERT(m_pAnnot->GetAnnotDict() != NULL);
679 679
680 if (sName.IsEmpty()) 680 if (sName.IsEmpty())
681 » » m_pAnnot->m_pAnnotDict->RemoveAt("NM"); 681 » » m_pAnnot->GetAnnotDict()->RemoveAt("NM");
682 else 682 else
683 » » m_pAnnot->m_pAnnotDict->SetAtString("NM", PDF_EncodeText(sName)) ; 683 » » m_pAnnot->GetAnnotDict()->SetAtString("NM", PDF_EncodeText(sName ));
684 } 684 }
685 685
686 CFX_WideString CPDFSDK_Annot::GetAnnotName() const 686 CFX_WideString CPDFSDK_Annot::GetAnnotName() const
687 { 687 {
688 ASSERT(m_pAnnot != NULL); 688 ASSERT(m_pAnnot != NULL);
689 » ASSERT(m_pAnnot->m_pAnnotDict != NULL); 689 » ASSERT(m_pAnnot->GetAnnotDict() != NULL);
690 690
691 » return m_pAnnot->m_pAnnotDict->GetUnicodeText("NM"); 691 » return m_pAnnot->GetAnnotDict()->GetUnicodeText("NM");
692 } 692 }
693 693
694 void CPDFSDK_Annot::SetModifiedDate(const FX_SYSTEMTIME& st) 694 void CPDFSDK_Annot::SetModifiedDate(const FX_SYSTEMTIME& st)
695 { 695 {
696 ASSERT(m_pAnnot != NULL); 696 ASSERT(m_pAnnot != NULL);
697 » ASSERT(m_pAnnot->m_pAnnotDict != NULL); 697 » ASSERT(m_pAnnot->GetAnnotDict() != NULL);
698 698
699 CPDFSDK_DateTime dt(st); 699 CPDFSDK_DateTime dt(st);
700 CFX_ByteString str = dt.ToPDFDateTimeString(); 700 CFX_ByteString str = dt.ToPDFDateTimeString();
701 701
702 if (str.IsEmpty()) 702 if (str.IsEmpty())
703 » » m_pAnnot->m_pAnnotDict->RemoveAt("M"); 703 » » m_pAnnot->GetAnnotDict()->RemoveAt("M");
704 else 704 else
705 » » m_pAnnot->m_pAnnotDict->SetAtString("M", str); 705 » » m_pAnnot->GetAnnotDict()->SetAtString("M", str);
706 } 706 }
707 707
708 FX_SYSTEMTIME CPDFSDK_Annot::GetModifiedDate() const 708 FX_SYSTEMTIME CPDFSDK_Annot::GetModifiedDate() const
709 { 709 {
710 ASSERT(m_pAnnot != NULL); 710 ASSERT(m_pAnnot != NULL);
711 » ASSERT(m_pAnnot->m_pAnnotDict != NULL); 711 » ASSERT(m_pAnnot->GetAnnotDict() != NULL);
712 712
713 FX_SYSTEMTIME systime; 713 FX_SYSTEMTIME systime;
714 » CFX_ByteString str = m_pAnnot->m_pAnnotDict->GetString("M"); 714 » CFX_ByteString str = m_pAnnot->GetAnnotDict()->GetString("M");
715 715
716 CPDFSDK_DateTime dt(str); 716 CPDFSDK_DateTime dt(str);
717 dt.ToSystemTime(systime); 717 dt.ToSystemTime(systime);
718 718
719 return systime; 719 return systime;
720 } 720 }
721 721
722 void CPDFSDK_Annot::SetFlags(int nFlags) 722 void CPDFSDK_Annot::SetFlags(int nFlags)
723 { 723 {
724 ASSERT(m_pAnnot != NULL); 724 ASSERT(m_pAnnot != NULL);
725 » ASSERT(m_pAnnot->m_pAnnotDict != NULL); 725 » ASSERT(m_pAnnot->GetAnnotDict() != NULL);
726 726
727 » m_pAnnot->m_pAnnotDict->SetAtInteger("F", nFlags); 727 » m_pAnnot->GetAnnotDict()->SetAtInteger("F", nFlags);
728 } 728 }
729 729
730 int CPDFSDK_Annot::GetFlags() const 730 int CPDFSDK_Annot::GetFlags() const
731 { 731 {
732 ASSERT(m_pAnnot != NULL); 732 ASSERT(m_pAnnot != NULL);
733 » ASSERT(m_pAnnot->m_pAnnotDict != NULL); 733 » ASSERT(m_pAnnot->GetAnnotDict() != NULL);
734 734
735 » return m_pAnnot->m_pAnnotDict->GetInteger("F"); 735 » return m_pAnnot->GetAnnotDict()->GetInteger("F");
736 } 736 }
737 737
738 void CPDFSDK_Annot::SetAppState(const CFX_ByteString& str) 738 void CPDFSDK_Annot::SetAppState(const CFX_ByteString& str)
739 { 739 {
740 ASSERT(m_pAnnot != NULL); 740 ASSERT(m_pAnnot != NULL);
741 » ASSERT(m_pAnnot->m_pAnnotDict != NULL); 741 » ASSERT(m_pAnnot->GetAnnotDict() != NULL);
742 742
743 if (str.IsEmpty()) 743 if (str.IsEmpty())
744 » » m_pAnnot->m_pAnnotDict->RemoveAt("AS"); 744 » » m_pAnnot->GetAnnotDict()->RemoveAt("AS");
745 else 745 else
746 » » m_pAnnot->m_pAnnotDict->SetAtString("AS", str); 746 » » m_pAnnot->GetAnnotDict()->SetAtString("AS", str);
747 } 747 }
748 748
749 CFX_ByteString CPDFSDK_Annot::GetAppState() const 749 CFX_ByteString CPDFSDK_Annot::GetAppState() const
750 { 750 {
751 ASSERT(m_pAnnot != NULL); 751 ASSERT(m_pAnnot != NULL);
752 » ASSERT(m_pAnnot->m_pAnnotDict != NULL); 752 » ASSERT(m_pAnnot->GetAnnotDict() != NULL);
753 753
754 » return m_pAnnot->m_pAnnotDict->GetString("AS"); 754 » return m_pAnnot->GetAnnotDict()->GetString("AS");
755 } 755 }
756 756
757 void CPDFSDK_Annot::SetStructParent(int key) 757 void CPDFSDK_Annot::SetStructParent(int key)
758 { 758 {
759 ASSERT(m_pAnnot != NULL); 759 ASSERT(m_pAnnot != NULL);
760 » ASSERT(m_pAnnot->m_pAnnotDict != NULL); 760 » ASSERT(m_pAnnot->GetAnnotDict() != NULL);
761 761
762 » m_pAnnot->m_pAnnotDict->SetAtInteger("StructParent", key); 762 » m_pAnnot->GetAnnotDict()->SetAtInteger("StructParent", key);
763 } 763 }
764 764
765 int CPDFSDK_Annot::GetStructParent() const 765 int CPDFSDK_Annot::GetStructParent() const
766 { 766 {
767 ASSERT(m_pAnnot != NULL); 767 ASSERT(m_pAnnot != NULL);
768 » ASSERT(m_pAnnot->m_pAnnotDict != NULL); 768 » ASSERT(m_pAnnot->GetAnnotDict() != NULL);
769 769
770 » return m_pAnnot->m_pAnnotDict->GetInteger("StructParent"); 770 » return m_pAnnot->GetAnnotDict()->GetInteger("StructParent");
771 } 771 }
772 772
773 //border 773 //border
774 void CPDFSDK_Annot::SetBorderWidth(int nWidth) 774 void CPDFSDK_Annot::SetBorderWidth(int nWidth)
775 { 775 {
776 ASSERT(m_pAnnot != NULL); 776 ASSERT(m_pAnnot != NULL);
777 » ASSERT(m_pAnnot->m_pAnnotDict != NULL); 777 » ASSERT(m_pAnnot->GetAnnotDict() != NULL);
778 778
779 » CPDF_Array* pBorder = m_pAnnot->m_pAnnotDict->GetArray("Border"); 779 » CPDF_Array* pBorder = m_pAnnot->GetAnnotDict()->GetArray("Border");
780 780
781 if (pBorder) 781 if (pBorder)
782 { 782 {
783 pBorder->SetAt(2, new CPDF_Number(nWidth)); 783 pBorder->SetAt(2, new CPDF_Number(nWidth));
784 } 784 }
785 else 785 else
786 { 786 {
787 » » CPDF_Dictionary* pBSDict = m_pAnnot->m_pAnnotDict->GetDict("BS") ; 787 » » CPDF_Dictionary* pBSDict = m_pAnnot->GetAnnotDict()->GetDict("BS ");
788 788
789 if (!pBSDict) 789 if (!pBSDict)
790 { 790 {
791 pBSDict = new CPDF_Dictionary; 791 pBSDict = new CPDF_Dictionary;
792 » » » m_pAnnot->m_pAnnotDict->SetAt("BS", pBSDict); 792 » » » m_pAnnot->GetAnnotDict()->SetAt("BS", pBSDict);
793 } 793 }
794 794
795 pBSDict->SetAtInteger("W", nWidth); 795 pBSDict->SetAtInteger("W", nWidth);
796 } 796 }
797 } 797 }
798 798
799 int CPDFSDK_Annot::GetBorderWidth() const 799 int CPDFSDK_Annot::GetBorderWidth() const
800 { 800 {
801 ASSERT(m_pAnnot != NULL); 801 ASSERT(m_pAnnot != NULL);
802 » ASSERT(m_pAnnot->m_pAnnotDict != NULL); 802 » ASSERT(m_pAnnot->GetAnnotDict() != NULL);
803 803
804 » CPDF_Array* pBorder = m_pAnnot->m_pAnnotDict->GetArray("Border"); 804 » CPDF_Array* pBorder = m_pAnnot->GetAnnotDict()->GetArray("Border");
805 805
806 if (pBorder) 806 if (pBorder)
807 { 807 {
808 return pBorder->GetInteger(2); 808 return pBorder->GetInteger(2);
809 } 809 }
810 else 810 else
811 { 811 {
812 » » CPDF_Dictionary* pBSDict = m_pAnnot->m_pAnnotDict->GetDict("BS") ; 812 » » CPDF_Dictionary* pBSDict = m_pAnnot->GetAnnotDict()->GetDict("BS ");
813 813
814 if (pBSDict) 814 if (pBSDict)
815 { 815 {
816 return pBSDict->GetInteger("W", 1); 816 return pBSDict->GetInteger("W", 1);
817 } 817 }
818 } 818 }
819 return 1; 819 return 1;
820 } 820 }
821 821
822 void CPDFSDK_Annot::SetBorderStyle(int nStyle) 822 void CPDFSDK_Annot::SetBorderStyle(int nStyle)
823 { 823 {
824 ASSERT(m_pAnnot != NULL); 824 ASSERT(m_pAnnot != NULL);
825 » ASSERT(m_pAnnot->m_pAnnotDict != NULL); 825 » ASSERT(m_pAnnot->GetAnnotDict() != NULL);
826 826
827 » CPDF_Dictionary* pBSDict = m_pAnnot->m_pAnnotDict->GetDict("BS"); 827 » CPDF_Dictionary* pBSDict = m_pAnnot->GetAnnotDict()->GetDict("BS");
828 if (!pBSDict) 828 if (!pBSDict)
829 { 829 {
830 pBSDict = new CPDF_Dictionary; 830 pBSDict = new CPDF_Dictionary;
831 » » m_pAnnot->m_pAnnotDict->SetAt("BS", pBSDict); 831 » » m_pAnnot->GetAnnotDict()->SetAt("BS", pBSDict);
832 } 832 }
833 833
834 switch (nStyle) 834 switch (nStyle)
835 { 835 {
836 case BBS_SOLID: 836 case BBS_SOLID:
837 pBSDict->SetAtName("S", "S"); 837 pBSDict->SetAtName("S", "S");
838 break; 838 break;
839 case BBS_DASH: 839 case BBS_DASH:
840 pBSDict->SetAtName("S", "D"); 840 pBSDict->SetAtName("S", "D");
841 break; 841 break;
842 case BBS_BEVELED: 842 case BBS_BEVELED:
843 pBSDict->SetAtName("S", "B"); 843 pBSDict->SetAtName("S", "B");
844 break; 844 break;
845 case BBS_INSET: 845 case BBS_INSET:
846 pBSDict->SetAtName("S", "I"); 846 pBSDict->SetAtName("S", "I");
847 break; 847 break;
848 case BBS_UNDERLINE: 848 case BBS_UNDERLINE:
849 pBSDict->SetAtName("S", "U"); 849 pBSDict->SetAtName("S", "U");
850 break; 850 break;
851 } 851 }
852 } 852 }
853 853
854 int CPDFSDK_Annot::GetBorderStyle() const 854 int CPDFSDK_Annot::GetBorderStyle() const
855 { 855 {
856 ASSERT(m_pAnnot != NULL); 856 ASSERT(m_pAnnot != NULL);
857 » ASSERT(m_pAnnot->m_pAnnotDict != NULL); 857 » ASSERT(m_pAnnot->GetAnnotDict() != NULL);
858 858
859 » CPDF_Dictionary* pBSDict = m_pAnnot->m_pAnnotDict->GetDict("BS"); 859 » CPDF_Dictionary* pBSDict = m_pAnnot->GetAnnotDict()->GetDict("BS");
860 if (pBSDict) 860 if (pBSDict)
861 { 861 {
862 CFX_ByteString sBorderStyle = pBSDict->GetString("S", "S"); 862 CFX_ByteString sBorderStyle = pBSDict->GetString("S", "S");
863 if (sBorderStyle == "S") return BBS_SOLID; 863 if (sBorderStyle == "S") return BBS_SOLID;
864 if (sBorderStyle == "D") return BBS_DASH; 864 if (sBorderStyle == "D") return BBS_DASH;
865 if (sBorderStyle == "B") return BBS_BEVELED; 865 if (sBorderStyle == "B") return BBS_BEVELED;
866 if (sBorderStyle == "I") return BBS_INSET; 866 if (sBorderStyle == "I") return BBS_INSET;
867 if (sBorderStyle == "U") return BBS_UNDERLINE; 867 if (sBorderStyle == "U") return BBS_UNDERLINE;
868 } 868 }
869 869
870 » CPDF_Array* pBorder = m_pAnnot->m_pAnnotDict->GetArray("Border"); 870 » CPDF_Array* pBorder = m_pAnnot->GetAnnotDict()->GetArray("Border");
871 if (pBorder) 871 if (pBorder)
872 { 872 {
873 if (pBorder->GetCount() >= 4) 873 if (pBorder->GetCount() >= 4)
874 { 874 {
875 CPDF_Array *pDP = pBorder->GetArray(3); 875 CPDF_Array *pDP = pBorder->GetArray(3);
876 if (pDP && pDP->GetCount() > 0) 876 if (pDP && pDP->GetCount() > 0)
877 return BBS_DASH; 877 return BBS_DASH;
878 } 878 }
879 } 879 }
880 880
881 return BBS_SOLID; 881 return BBS_SOLID;
882 } 882 }
883 883
884 void CPDFSDK_Annot::SetBorderDash(const CFX_IntArray& array) 884 void CPDFSDK_Annot::SetBorderDash(const CFX_IntArray& array)
885 { 885 {
886 ASSERT(m_pAnnot != NULL); 886 ASSERT(m_pAnnot != NULL);
887 » ASSERT(m_pAnnot->m_pAnnotDict != NULL); 887 » ASSERT(m_pAnnot->GetAnnotDict() != NULL);
888 888
889 » CPDF_Dictionary* pBSDict = m_pAnnot->m_pAnnotDict->GetDict("BS"); 889 » CPDF_Dictionary* pBSDict = m_pAnnot->GetAnnotDict()->GetDict("BS");
890 if (!pBSDict) 890 if (!pBSDict)
891 { 891 {
892 pBSDict = new CPDF_Dictionary; 892 pBSDict = new CPDF_Dictionary;
893 » » m_pAnnot->m_pAnnotDict->SetAt("BS", pBSDict); 893 » » m_pAnnot->GetAnnotDict()->SetAt("BS", pBSDict);
894 } 894 }
895 895
896 CPDF_Array* pArray = new CPDF_Array; 896 CPDF_Array* pArray = new CPDF_Array;
897 for (int i=0,sz=array.GetSize(); i<sz; i++) 897 for (int i=0,sz=array.GetSize(); i<sz; i++)
898 { 898 {
899 pArray->AddInteger(array[i]); 899 pArray->AddInteger(array[i]);
900 } 900 }
901 901
902 pBSDict->SetAt("D", pArray); 902 pBSDict->SetAt("D", pArray);
903 } 903 }
904 904
905 void CPDFSDK_Annot::GetBorderDash(CFX_IntArray& array) const 905 void CPDFSDK_Annot::GetBorderDash(CFX_IntArray& array) const
906 { 906 {
907 ASSERT(m_pAnnot != NULL); 907 ASSERT(m_pAnnot != NULL);
908 » ASSERT(m_pAnnot->m_pAnnotDict != NULL); 908 » ASSERT(m_pAnnot->GetAnnotDict() != NULL);
909 909
910 CPDF_Array* pDash = NULL; 910 CPDF_Array* pDash = NULL;
911 911
912 » CPDF_Array* pBorder = m_pAnnot->m_pAnnotDict->GetArray("Border"); 912 » CPDF_Array* pBorder = m_pAnnot->GetAnnotDict()->GetArray("Border");
913 if (pBorder) 913 if (pBorder)
914 { 914 {
915 pDash = pBorder->GetArray(3); 915 pDash = pBorder->GetArray(3);
916 } 916 }
917 else 917 else
918 { 918 {
919 » » CPDF_Dictionary* pBSDict = m_pAnnot->m_pAnnotDict->GetDict("BS") ; 919 » » CPDF_Dictionary* pBSDict = m_pAnnot->GetAnnotDict()->GetDict("BS ");
920 if (pBSDict) 920 if (pBSDict)
921 { 921 {
922 pDash = pBSDict->GetArray("D"); 922 pDash = pBSDict->GetArray("D");
923 } 923 }
924 } 924 }
925 925
926 if (pDash) 926 if (pDash)
927 { 927 {
928 for (int i=0,sz=pDash->GetCount(); i<sz; i++) 928 for (int i=0,sz=pDash->GetCount(); i<sz; i++)
929 { 929 {
930 array.Add(pDash->GetInteger(i)); 930 array.Add(pDash->GetInteger(i));
931 } 931 }
932 } 932 }
933 } 933 }
934 934
935 void CPDFSDK_Annot::SetColor(FX_COLORREF color) 935 void CPDFSDK_Annot::SetColor(FX_COLORREF color)
936 { 936 {
937 ASSERT(m_pAnnot != NULL); 937 ASSERT(m_pAnnot != NULL);
938 » ASSERT(m_pAnnot->m_pAnnotDict != NULL); 938 » ASSERT(m_pAnnot->GetAnnotDict() != NULL);
939 939
940 CPDF_Array* pArray = new CPDF_Array; 940 CPDF_Array* pArray = new CPDF_Array;
941 pArray->AddNumber((FX_FLOAT)FXSYS_GetRValue(color) / 255.0f); 941 pArray->AddNumber((FX_FLOAT)FXSYS_GetRValue(color) / 255.0f);
942 pArray->AddNumber((FX_FLOAT)FXSYS_GetGValue(color) / 255.0f); 942 pArray->AddNumber((FX_FLOAT)FXSYS_GetGValue(color) / 255.0f);
943 pArray->AddNumber((FX_FLOAT)FXSYS_GetBValue(color) / 255.0f); 943 pArray->AddNumber((FX_FLOAT)FXSYS_GetBValue(color) / 255.0f);
944 » m_pAnnot->m_pAnnotDict->SetAt("C", pArray); 944 » m_pAnnot->GetAnnotDict()->SetAt("C", pArray);
945 } 945 }
946 946
947 void CPDFSDK_Annot::RemoveColor() 947 void CPDFSDK_Annot::RemoveColor()
948 { 948 {
949 ASSERT(m_pAnnot != NULL); 949 ASSERT(m_pAnnot != NULL);
950 » ASSERT(m_pAnnot->m_pAnnotDict != NULL); 950 » ASSERT(m_pAnnot->GetAnnotDict() != NULL);
951 951
952 » m_pAnnot->m_pAnnotDict->RemoveAt("C") ; 952 » m_pAnnot->GetAnnotDict()->RemoveAt("C");
953 } 953 }
954 954
955 FX_BOOL CPDFSDK_Annot::GetColor(FX_COLORREF& color) const 955 FX_BOOL CPDFSDK_Annot::GetColor(FX_COLORREF& color) const
956 { 956 {
957 ASSERT(m_pAnnot != NULL); 957 ASSERT(m_pAnnot != NULL);
958 » ASSERT(m_pAnnot->m_pAnnotDict != NULL); 958 » ASSERT(m_pAnnot->GetAnnotDict() != NULL);
959 959
960 » if (CPDF_Array* pEntry = m_pAnnot->m_pAnnotDict->GetArray("C"))»» 960 » if (CPDF_Array* pEntry = m_pAnnot->GetAnnotDict()->GetArray("C"))
961 { 961 {
962 int nCount = pEntry->GetCount(); 962 int nCount = pEntry->GetCount();
963 if (nCount == 1) 963 if (nCount == 1)
964 { 964 {
965 FX_FLOAT g = pEntry->GetNumber(0) * 255; 965 FX_FLOAT g = pEntry->GetNumber(0) * 255;
966 966
967 color = FXSYS_RGB((int)g, (int)g, (int)g); 967 color = FXSYS_RGB((int)g, (int)g, (int)g);
968 968
969 return TRUE; 969 return TRUE;
970 } 970 }
(...skipping 26 matching lines...) Expand all
997 997
998 return FALSE; 998 return FALSE;
999 } 999 }
1000 1000
1001 1001
1002 void CPDFSDK_Annot::WriteAppearance(const CFX_ByteString& sAPType, const CPDF_Re ct& rcBBox, 1002 void CPDFSDK_Annot::WriteAppearance(const CFX_ByteString& sAPType, const CPDF_Re ct& rcBBox,
1003 const CPDF_Matri x& matrix, const CFX_ByteString& sContents, 1003 const CPDF_Matri x& matrix, const CFX_ByteString& sContents,
1004 const CFX_ByteSt ring& sAPState) 1004 const CFX_ByteSt ring& sAPState)
1005 { 1005 {
1006 ASSERT(m_pAnnot != NULL); 1006 ASSERT(m_pAnnot != NULL);
1007 » ASSERT(m_pAnnot->m_pAnnotDict != NULL); 1007 » ASSERT(m_pAnnot->GetAnnotDict() != NULL);
1008 1008
1009 » CPDF_Dictionary* pAPDict = m_pAnnot->m_pAnnotDict->GetDict("AP"); 1009 » CPDF_Dictionary* pAPDict = m_pAnnot->GetAnnotDict()->GetDict("AP");
1010 1010
1011 if (!pAPDict) 1011 if (!pAPDict)
1012 { 1012 {
1013 pAPDict = new CPDF_Dictionary; 1013 pAPDict = new CPDF_Dictionary;
1014 » » m_pAnnot->m_pAnnotDict->SetAt("AP", pAPDict); 1014 » » m_pAnnot->GetAnnotDict()->SetAt("AP", pAPDict);
1015 } 1015 }
1016 1016
1017 CPDF_Stream* pStream = NULL; 1017 CPDF_Stream* pStream = NULL;
1018 CPDF_Dictionary* pParentDict = NULL; 1018 CPDF_Dictionary* pParentDict = NULL;
1019 1019
1020 if (sAPState.IsEmpty()) 1020 if (sAPState.IsEmpty())
1021 { 1021 {
1022 pParentDict = pAPDict; 1022 pParentDict = pAPDict;
1023 pStream = pAPDict->GetStream(sAPType); 1023 pStream = pAPDict->GetStream(sAPType);
1024 } 1024 }
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
1080 return TRUE; 1080 return TRUE;
1081 } 1081 }
1082 FX_BOOL CPDFSDK_Annot::IsVisible() const 1082 FX_BOOL CPDFSDK_Annot::IsVisible() const
1083 { 1083 {
1084 int nFlags = GetFlags(); 1084 int nFlags = GetFlags();
1085 return !((nFlags & ANNOTFLAG_INVISIBLE) || (nFlags & ANNOTFLAG_HIDDEN) | | (nFlags & ANNOTFLAG_NOVIEW)); 1085 return !((nFlags & ANNOTFLAG_INVISIBLE) || (nFlags & ANNOTFLAG_HIDDEN) | | (nFlags & ANNOTFLAG_NOVIEW));
1086 } 1086 }
1087 1087
1088 CPDF_Action CPDFSDK_Annot::GetAction() const 1088 CPDF_Action CPDFSDK_Annot::GetAction() const
1089 { 1089 {
1090 » return CPDF_Action(m_pAnnot->m_pAnnotDict->GetDict("A")); 1090 » return CPDF_Action(m_pAnnot->GetAnnotDict()->GetDict("A"));
1091 } 1091 }
1092 1092
1093 void CPDFSDK_Annot::SetAction(const CPDF_Action& action) 1093 void CPDFSDK_Annot::SetAction(const CPDF_Action& action)
1094 { 1094 {
1095 ASSERT(action); 1095 ASSERT(action);
1096 » if ((CPDF_Action&)action != CPDF_Action(m_pAnnot->m_pAnnotDict->GetDict( "A"))) 1096 » if ((CPDF_Action&)action != CPDF_Action(m_pAnnot->GetAnnotDict()->GetDic t("A")))
1097 { 1097 {
1098 CPDF_Document* pDoc = m_pPageView->GetPDFDocument(); 1098 CPDF_Document* pDoc = m_pPageView->GetPDFDocument();
1099 CPDF_Dictionary* pDict = action.GetDict(); 1099 CPDF_Dictionary* pDict = action.GetDict();
1100 if (pDict && pDict->GetObjNum() == 0) { 1100 if (pDict && pDict->GetObjNum() == 0) {
1101 pDoc->AddIndirectObject(pDict); 1101 pDoc->AddIndirectObject(pDict);
1102 } 1102 }
1103 » » m_pAnnot->m_pAnnotDict->SetAtReference("A", pDoc, pDict->GetObjN um()); 1103 » » m_pAnnot->GetAnnotDict()->SetAtReference("A", pDoc, pDict->GetOb jNum());
1104 } 1104 }
1105 } 1105 }
1106 1106
1107 void CPDFSDK_Annot::RemoveAction() 1107 void CPDFSDK_Annot::RemoveAction()
1108 { 1108 {
1109 » m_pAnnot->m_pAnnotDict->RemoveAt("A"); 1109 » m_pAnnot->GetAnnotDict()->RemoveAt("A");
1110 } 1110 }
1111 1111
1112 CPDF_AAction CPDFSDK_Annot::GetAAction() const 1112 CPDF_AAction CPDFSDK_Annot::GetAAction() const
1113 { 1113 {
1114 » return m_pAnnot->m_pAnnotDict->GetDict("AA"); 1114 » return m_pAnnot->GetAnnotDict()->GetDict("AA");
1115 } 1115 }
1116 1116
1117 void CPDFSDK_Annot::SetAAction(const CPDF_AAction& aa) 1117 void CPDFSDK_Annot::SetAAction(const CPDF_AAction& aa)
1118 { 1118 {
1119 ASSERT(m_pAnnot != NULL); 1119 ASSERT(m_pAnnot != NULL);
1120 » ASSERT(m_pAnnot->m_pAnnotDict != NULL); 1120 » ASSERT(m_pAnnot->GetAnnotDict() != NULL);
1121 ASSERT(aa != NULL); 1121 ASSERT(aa != NULL);
1122 1122
1123 » if ((CPDF_AAction&)aa != m_pAnnot->m_pAnnotDict->GetDict("AA")) 1123 » if ((CPDF_AAction&)aa != m_pAnnot->GetAnnotDict()->GetDict("AA"))
1124 » » m_pAnnot->m_pAnnotDict->SetAt("AA", (CPDF_AAction&)aa); 1124 » » m_pAnnot->GetAnnotDict()->SetAt("AA", (CPDF_AAction&)aa);
1125 } 1125 }
1126 1126
1127 void CPDFSDK_Annot::RemoveAAction() 1127 void CPDFSDK_Annot::RemoveAAction()
1128 { 1128 {
1129 ASSERT(m_pAnnot != NULL); 1129 ASSERT(m_pAnnot != NULL);
1130 » ASSERT(m_pAnnot->m_pAnnotDict != NULL); 1130 » ASSERT(m_pAnnot->GetAnnotDict() != NULL);
1131 1131
1132 » m_pAnnot->m_pAnnotDict->RemoveAt("AA"); 1132 » m_pAnnot->GetAnnotDict()->RemoveAt("AA");
1133 } 1133 }
1134 1134
1135 CPDF_Action CPDFSDK_Annot::GetAAction(CPDF_AAction::AActionType eAAT) 1135 CPDF_Action CPDFSDK_Annot::GetAAction(CPDF_AAction::AActionType eAAT)
1136 { 1136 {
1137 CPDF_AAction AAction = GetAAction(); 1137 CPDF_AAction AAction = GetAAction();
1138 1138
1139 if (AAction.ActionExist(eAAT)) 1139 if (AAction.ActionExist(eAAT))
1140 return AAction.GetAction(eAAT); 1140 return AAction.GetAction(eAAT);
1141 1141
1142 if (eAAT == CPDF_AAction::ButtonUp) 1142 if (eAAT == CPDF_AAction::ButtonUp)
(...skipping 11 matching lines...) Expand all
1154 return ; 1154 return ;
1155 } 1155 }
1156 1156
1157 CPDF_Page* CPDFSDK_Annot::GetPDFPage() 1157 CPDF_Page* CPDFSDK_Annot::GetPDFPage()
1158 { 1158 {
1159 if(m_pPageView) 1159 if(m_pPageView)
1160 return m_pPageView->GetPDFPage(); 1160 return m_pPageView->GetPDFPage();
1161 return NULL; 1161 return NULL;
1162 } 1162 }
1163 1163
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698