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

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

Issue 1648233002: Merge to XFA: Member function name refactoring (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@xfa
Patch Set: more xfa changes Created 4 years, 10 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
« no previous file with comments | « fpdfsdk/src/fsdk_baseannot.cpp ('k') | fpdfsdk/src/fsdk_mgr.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 "fpdfsdk/include/fsdk_baseform.h" 7 #include "fpdfsdk/include/fsdk_baseform.h"
8 8
9 #include <memory> 9 #include <memory>
10 10
(...skipping 441 matching lines...) Expand 10 before | Expand all | Expand 10 after
452 452
453 pFormField->SetValue(L"", TRUE); 453 pFormField->SetValue(L"", TRUE);
454 } break; 454 } break;
455 } 455 }
456 } 456 }
457 } 457 }
458 #endif // PDF_ENABLE_XFA 458 #endif // PDF_ENABLE_XFA
459 459
460 FX_BOOL CPDFSDK_Widget::IsWidgetAppearanceValid( 460 FX_BOOL CPDFSDK_Widget::IsWidgetAppearanceValid(
461 CPDF_Annot::AppearanceMode mode) { 461 CPDF_Annot::AppearanceMode mode) {
462 CPDF_Dictionary* pAP = m_pAnnot->GetAnnotDict()->GetDict("AP"); 462 CPDF_Dictionary* pAP = m_pAnnot->GetAnnotDict()->GetDictBy("AP");
463 if (!pAP) 463 if (!pAP)
464 return FALSE; 464 return FALSE;
465 465
466 // Choose the right sub-ap 466 // Choose the right sub-ap
467 const FX_CHAR* ap_entry = "N"; 467 const FX_CHAR* ap_entry = "N";
468 if (mode == CPDF_Annot::Down) 468 if (mode == CPDF_Annot::Down)
469 ap_entry = "D"; 469 ap_entry = "D";
470 else if (mode == CPDF_Annot::Rollover) 470 else if (mode == CPDF_Annot::Rollover)
471 ap_entry = "R"; 471 ap_entry = "R";
472 if (!pAP->KeyExist(ap_entry)) 472 if (!pAP->KeyExist(ap_entry))
473 ap_entry = "N"; 473 ap_entry = "N";
474 474
475 // Get the AP stream or subdirectory 475 // Get the AP stream or subdirectory
476 CPDF_Object* psub = pAP->GetElementValue(ap_entry); 476 CPDF_Object* psub = pAP->GetElementValue(ap_entry);
477 if (!psub) 477 if (!psub)
478 return FALSE; 478 return FALSE;
479 479
480 int nFieldType = GetFieldType(); 480 int nFieldType = GetFieldType();
481 switch (nFieldType) { 481 switch (nFieldType) {
482 case FIELDTYPE_PUSHBUTTON: 482 case FIELDTYPE_PUSHBUTTON:
483 case FIELDTYPE_COMBOBOX: 483 case FIELDTYPE_COMBOBOX:
484 case FIELDTYPE_LISTBOX: 484 case FIELDTYPE_LISTBOX:
485 case FIELDTYPE_TEXTFIELD: 485 case FIELDTYPE_TEXTFIELD:
486 case FIELDTYPE_SIGNATURE: 486 case FIELDTYPE_SIGNATURE:
487 return psub->IsStream(); 487 return psub->IsStream();
488 case FIELDTYPE_CHECKBOX: 488 case FIELDTYPE_CHECKBOX:
489 case FIELDTYPE_RADIOBUTTON: 489 case FIELDTYPE_RADIOBUTTON:
490 if (CPDF_Dictionary* pSubDict = psub->AsDictionary()) { 490 if (CPDF_Dictionary* pSubDict = psub->AsDictionary()) {
491 return pSubDict->GetStream(GetAppState()) != NULL; 491 return pSubDict->GetStreamBy(GetAppState()) != NULL;
492 } 492 }
493 return FALSE; 493 return FALSE;
494 } 494 }
495 return TRUE; 495 return TRUE;
496 } 496 }
497 497
498 int CPDFSDK_Widget::GetFieldType() const { 498 int CPDFSDK_Widget::GetFieldType() const {
499 return GetFormField()->GetFieldType(); 499 return GetFormField()->GetFieldType();
500 } 500 }
501 501
(...skipping 484 matching lines...) Expand 10 before | Expand all | Expand 10 after
986 } 986 }
987 if (pControl->HasMKEntry("RI")) { 987 if (pControl->HasMKEntry("RI")) {
988 pRolloverIcon = pControl->GetRolloverIcon(); 988 pRolloverIcon = pControl->GetRolloverIcon();
989 } 989 }
990 if (pControl->HasMKEntry("IX")) { 990 if (pControl->HasMKEntry("IX")) {
991 pDownIcon = pControl->GetDownIcon(); 991 pDownIcon = pControl->GetDownIcon();
992 } 992 }
993 993
994 if (pNormalIcon) { 994 if (pNormalIcon) {
995 if (CPDF_Dictionary* pImageDict = pNormalIcon->GetDict()) { 995 if (CPDF_Dictionary* pImageDict = pNormalIcon->GetDict()) {
996 if (pImageDict->GetString("Name").IsEmpty()) 996 if (pImageDict->GetStringBy("Name").IsEmpty())
997 pImageDict->SetAtString("Name", "ImgA"); 997 pImageDict->SetAtString("Name", "ImgA");
998 } 998 }
999 } 999 }
1000 1000
1001 if (pRolloverIcon) { 1001 if (pRolloverIcon) {
1002 if (CPDF_Dictionary* pImageDict = pRolloverIcon->GetDict()) { 1002 if (CPDF_Dictionary* pImageDict = pRolloverIcon->GetDict()) {
1003 if (pImageDict->GetString("Name").IsEmpty()) 1003 if (pImageDict->GetStringBy("Name").IsEmpty())
1004 pImageDict->SetAtString("Name", "ImgB"); 1004 pImageDict->SetAtString("Name", "ImgB");
1005 } 1005 }
1006 } 1006 }
1007 1007
1008 if (pDownIcon) { 1008 if (pDownIcon) {
1009 if (CPDF_Dictionary* pImageDict = pDownIcon->GetDict()) { 1009 if (CPDF_Dictionary* pImageDict = pDownIcon->GetDict()) {
1010 if (pImageDict->GetString("Name").IsEmpty()) 1010 if (pImageDict->GetStringBy("Name").IsEmpty())
1011 pImageDict->SetAtString("Name", "ImgC"); 1011 pImageDict->SetAtString("Name", "ImgC");
1012 } 1012 }
1013 } 1013 }
1014 1014
1015 CPDF_IconFit iconFit = pControl->GetIconFit(); 1015 CPDF_IconFit iconFit = pControl->GetIconFit();
1016 1016
1017 CPDFSDK_Document* pDoc = m_pInterForm->GetDocument(); 1017 CPDFSDK_Document* pDoc = m_pInterForm->GetDocument();
1018 CPDFDoc_Environment* pEnv = pDoc->GetEnv(); 1018 CPDFDoc_Environment* pEnv = pDoc->GetEnv();
1019 1019
1020 CBA_FontMap font_map(this, pEnv->GetSysHandler()); 1020 CBA_FontMap font_map(this, pEnv->GetSysHandler());
(...skipping 818 matching lines...) Expand 10 before | Expand all | Expand 10 after
1839 crFill = CPWL_Color(iColorType, fc[0], fc[1], fc[2], fc[3]); 1839 crFill = CPWL_Color(iColorType, fc[0], fc[1], fc[2], fc[3]);
1840 1840
1841 return crFill; 1841 return crFill;
1842 } 1842 }
1843 1843
1844 void CPDFSDK_Widget::AddImageToAppearance(const CFX_ByteString& sAPType, 1844 void CPDFSDK_Widget::AddImageToAppearance(const CFX_ByteString& sAPType,
1845 CPDF_Stream* pImage) { 1845 CPDF_Stream* pImage) {
1846 CPDF_Document* pDoc = m_pPageView->GetPDFDocument(); 1846 CPDF_Document* pDoc = m_pPageView->GetPDFDocument();
1847 ASSERT(pDoc); 1847 ASSERT(pDoc);
1848 1848
1849 CPDF_Dictionary* pAPDict = m_pAnnot->GetAnnotDict()->GetDict("AP"); 1849 CPDF_Dictionary* pAPDict = m_pAnnot->GetAnnotDict()->GetDictBy("AP");
1850 CPDF_Stream* pStream = pAPDict->GetStream(sAPType); 1850 CPDF_Stream* pStream = pAPDict->GetStreamBy(sAPType);
1851 CPDF_Dictionary* pStreamDict = pStream->GetDict(); 1851 CPDF_Dictionary* pStreamDict = pStream->GetDict();
1852 CFX_ByteString sImageAlias = "IMG"; 1852 CFX_ByteString sImageAlias = "IMG";
1853 1853
1854 if (CPDF_Dictionary* pImageDict = pImage->GetDict()) { 1854 if (CPDF_Dictionary* pImageDict = pImage->GetDict()) {
1855 sImageAlias = pImageDict->GetString("Name"); 1855 sImageAlias = pImageDict->GetStringBy("Name");
1856 if (sImageAlias.IsEmpty()) 1856 if (sImageAlias.IsEmpty())
1857 sImageAlias = "IMG"; 1857 sImageAlias = "IMG";
1858 } 1858 }
1859 1859
1860 CPDF_Dictionary* pStreamResList = pStreamDict->GetDict("Resources"); 1860 CPDF_Dictionary* pStreamResList = pStreamDict->GetDictBy("Resources");
1861 if (!pStreamResList) { 1861 if (!pStreamResList) {
1862 pStreamResList = new CPDF_Dictionary(); 1862 pStreamResList = new CPDF_Dictionary();
1863 pStreamDict->SetAt("Resources", pStreamResList); 1863 pStreamDict->SetAt("Resources", pStreamResList);
1864 } 1864 }
1865 1865
1866 if (pStreamResList) { 1866 if (pStreamResList) {
1867 CPDF_Dictionary* pXObject = new CPDF_Dictionary; 1867 CPDF_Dictionary* pXObject = new CPDF_Dictionary;
1868 pXObject->SetAtReference(sImageAlias, pDoc, pImage); 1868 pXObject->SetAtReference(sImageAlias, pDoc, pImage);
1869 pStreamResList->SetAt("XObject", pXObject); 1869 pStreamResList->SetAt("XObject", pXObject);
1870 } 1870 }
1871 } 1871 }
1872 1872
1873 void CPDFSDK_Widget::RemoveAppearance(const CFX_ByteString& sAPType) { 1873 void CPDFSDK_Widget::RemoveAppearance(const CFX_ByteString& sAPType) {
1874 if (CPDF_Dictionary* pAPDict = m_pAnnot->GetAnnotDict()->GetDict("AP")) { 1874 if (CPDF_Dictionary* pAPDict = m_pAnnot->GetAnnotDict()->GetDictBy("AP")) {
1875 pAPDict->RemoveAt(sAPType); 1875 pAPDict->RemoveAt(sAPType);
1876 } 1876 }
1877 } 1877 }
1878 1878
1879 FX_BOOL CPDFSDK_Widget::OnAAction(CPDF_AAction::AActionType type, 1879 FX_BOOL CPDFSDK_Widget::OnAAction(CPDF_AAction::AActionType type,
1880 PDFSDK_FieldAction& data, 1880 PDFSDK_FieldAction& data,
1881 CPDFSDK_PageView* pPageView) { 1881 CPDFSDK_PageView* pPageView) {
1882 CPDFSDK_Document* pDocument = pPageView->GetSDKDocument(); 1882 CPDFSDK_Document* pDocument = pPageView->GetSDKDocument();
1883 CPDFDoc_Environment* pEnv = pDocument->GetEnv(); 1883 CPDFDoc_Environment* pEnv = pDocument->GetEnv();
1884 1884
(...skipping 186 matching lines...) Expand 10 before | Expand all | Expand 10 after
2071 if (it != m_Map.end()) 2071 if (it != m_Map.end())
2072 pWidget = it->second; 2072 pWidget = it->second;
2073 2073
2074 if (pWidget) 2074 if (pWidget)
2075 return pWidget; 2075 return pWidget;
2076 2076
2077 CPDF_Dictionary* pControlDict = pControl->GetWidget(); 2077 CPDF_Dictionary* pControlDict = pControl->GetWidget();
2078 CPDF_Document* pDocument = m_pDocument->GetPDFDocument(); 2078 CPDF_Document* pDocument = m_pDocument->GetPDFDocument();
2079 CPDFSDK_PageView* pPage = nullptr; 2079 CPDFSDK_PageView* pPage = nullptr;
2080 2080
2081 if (CPDF_Dictionary* pPageDict = pControlDict->GetDict("P")) { 2081 if (CPDF_Dictionary* pPageDict = pControlDict->GetDictBy("P")) {
2082 int nPageIndex = pDocument->GetPageIndex(pPageDict->GetObjNum()); 2082 int nPageIndex = pDocument->GetPageIndex(pPageDict->GetObjNum());
2083 if (nPageIndex >= 0) { 2083 if (nPageIndex >= 0) {
2084 pPage = m_pDocument->GetPageView(nPageIndex); 2084 pPage = m_pDocument->GetPageView(nPageIndex);
2085 } 2085 }
2086 } 2086 }
2087 2087
2088 if (!pPage) { 2088 if (!pPage) {
2089 int nPageIndex = GetPageIndexByAnnotDict(pDocument, pControlDict); 2089 int nPageIndex = GetPageIndexByAnnotDict(pDocument, pControlDict);
2090 if (nPageIndex >= 0) { 2090 if (nPageIndex >= 0) {
2091 pPage = m_pDocument->GetPageView(nPageIndex); 2091 pPage = m_pDocument->GetPageView(nPageIndex);
(...skipping 27 matching lines...) Expand all
2119 } 2119 }
2120 } 2120 }
2121 2121
2122 int CPDFSDK_InterForm::GetPageIndexByAnnotDict( 2122 int CPDFSDK_InterForm::GetPageIndexByAnnotDict(
2123 CPDF_Document* pDocument, 2123 CPDF_Document* pDocument,
2124 CPDF_Dictionary* pAnnotDict) const { 2124 CPDF_Dictionary* pAnnotDict) const {
2125 ASSERT(pAnnotDict); 2125 ASSERT(pAnnotDict);
2126 2126
2127 for (int i = 0, sz = pDocument->GetPageCount(); i < sz; i++) { 2127 for (int i = 0, sz = pDocument->GetPageCount(); i < sz; i++) {
2128 if (CPDF_Dictionary* pPageDict = pDocument->GetPage(i)) { 2128 if (CPDF_Dictionary* pPageDict = pDocument->GetPage(i)) {
2129 if (CPDF_Array* pAnnots = pPageDict->GetArray("Annots")) { 2129 if (CPDF_Array* pAnnots = pPageDict->GetArrayBy("Annots")) {
2130 for (int j = 0, jsz = pAnnots->GetCount(); j < jsz; j++) { 2130 for (int j = 0, jsz = pAnnots->GetCount(); j < jsz; j++) {
2131 CPDF_Object* pDict = pAnnots->GetElementValue(j); 2131 CPDF_Object* pDict = pAnnots->GetElementValue(j);
2132 if (pAnnotDict == pDict) { 2132 if (pAnnotDict == pDict) {
2133 return i; 2133 return i;
2134 } 2134 }
2135 } 2135 }
2136 } 2136 }
2137 } 2137 }
2138 } 2138 }
2139 2139
(...skipping 303 matching lines...) Expand 10 before | Expand all | Expand 10 after
2443 2443
2444 FX_BOOL CPDFSDK_InterForm::FDFToURLEncodedData(CFX_WideString csFDFFile, 2444 FX_BOOL CPDFSDK_InterForm::FDFToURLEncodedData(CFX_WideString csFDFFile,
2445 CFX_WideString csTxtFile) { 2445 CFX_WideString csTxtFile) {
2446 return TRUE; 2446 return TRUE;
2447 } 2447 }
2448 2448
2449 FX_BOOL CPDFSDK_InterForm::FDFToURLEncodedData(uint8_t*& pBuf, 2449 FX_BOOL CPDFSDK_InterForm::FDFToURLEncodedData(uint8_t*& pBuf,
2450 FX_STRSIZE& nBufSize) { 2450 FX_STRSIZE& nBufSize) {
2451 CFDF_Document* pFDF = CFDF_Document::ParseMemory(pBuf, nBufSize); 2451 CFDF_Document* pFDF = CFDF_Document::ParseMemory(pBuf, nBufSize);
2452 if (pFDF) { 2452 if (pFDF) {
2453 CPDF_Dictionary* pMainDict = pFDF->GetRoot()->GetDict("FDF"); 2453 CPDF_Dictionary* pMainDict = pFDF->GetRoot()->GetDictBy("FDF");
2454 if (!pMainDict) 2454 if (!pMainDict)
2455 return FALSE; 2455 return FALSE;
2456 2456
2457 // Get fields 2457 // Get fields
2458 CPDF_Array* pFields = pMainDict->GetArray("Fields"); 2458 CPDF_Array* pFields = pMainDict->GetArrayBy("Fields");
2459 if (!pFields) 2459 if (!pFields)
2460 return FALSE; 2460 return FALSE;
2461 2461
2462 CFX_ByteTextBuf fdfEncodedData; 2462 CFX_ByteTextBuf fdfEncodedData;
2463 2463
2464 for (FX_DWORD i = 0; i < pFields->GetCount(); i++) { 2464 for (FX_DWORD i = 0; i < pFields->GetCount(); i++) {
2465 CPDF_Dictionary* pField = pFields->GetDict(i); 2465 CPDF_Dictionary* pField = pFields->GetDictAt(i);
2466 if (!pField) 2466 if (!pField)
2467 continue; 2467 continue;
2468 CFX_WideString name; 2468 CFX_WideString name;
2469 name = pField->GetUnicodeText("T"); 2469 name = pField->GetUnicodeTextBy("T");
2470 CFX_ByteString name_b = CFX_ByteString::FromUnicode(name); 2470 CFX_ByteString name_b = CFX_ByteString::FromUnicode(name);
2471 CFX_ByteString csBValue = pField->GetString("V"); 2471 CFX_ByteString csBValue = pField->GetStringBy("V");
2472 CFX_WideString csWValue = PDF_DecodeText(csBValue); 2472 CFX_WideString csWValue = PDF_DecodeText(csBValue);
2473 CFX_ByteString csValue_b = CFX_ByteString::FromUnicode(csWValue); 2473 CFX_ByteString csValue_b = CFX_ByteString::FromUnicode(csWValue);
2474 2474
2475 fdfEncodedData = fdfEncodedData << name_b.GetBuffer(name_b.GetLength()); 2475 fdfEncodedData = fdfEncodedData << name_b.GetBuffer(name_b.GetLength());
2476 name_b.ReleaseBuffer(); 2476 name_b.ReleaseBuffer();
2477 fdfEncodedData = fdfEncodedData << "="; 2477 fdfEncodedData = fdfEncodedData << "=";
2478 fdfEncodedData = fdfEncodedData 2478 fdfEncodedData = fdfEncodedData
2479 << csValue_b.GetBuffer(csValue_b.GetLength()); 2479 << csValue_b.GetBuffer(csValue_b.GetLength());
2480 csValue_b.ReleaseBuffer(); 2480 csValue_b.ReleaseBuffer();
2481 if (i != pFields->GetCount() - 1) 2481 if (i != pFields->GetCount() - 1)
(...skipping 257 matching lines...) Expand 10 before | Expand all | Expand 10 after
2739 } 2739 }
2740 2740
2741 CBA_AnnotIterator::CBA_AnnotIterator(CPDFSDK_PageView* pPageView, 2741 CBA_AnnotIterator::CBA_AnnotIterator(CPDFSDK_PageView* pPageView,
2742 const CFX_ByteString& sType, 2742 const CFX_ByteString& sType,
2743 const CFX_ByteString& sSubType) 2743 const CFX_ByteString& sSubType)
2744 : m_pPageView(pPageView), 2744 : m_pPageView(pPageView),
2745 m_sType(sType), 2745 m_sType(sType),
2746 m_sSubType(sSubType), 2746 m_sSubType(sSubType),
2747 m_nTabs(BAI_STRUCTURE) { 2747 m_nTabs(BAI_STRUCTURE) {
2748 CPDF_Page* pPDFPage = m_pPageView->GetPDFPage(); 2748 CPDF_Page* pPDFPage = m_pPageView->GetPDFPage();
2749 CFX_ByteString sTabs = pPDFPage->m_pFormDict->GetString("Tabs"); 2749 CFX_ByteString sTabs = pPDFPage->m_pFormDict->GetStringBy("Tabs");
2750 2750
2751 if (sTabs == "R") { 2751 if (sTabs == "R") {
2752 m_nTabs = BAI_ROW; 2752 m_nTabs = BAI_ROW;
2753 } else if (sTabs == "C") { 2753 } else if (sTabs == "C") {
2754 m_nTabs = BAI_COLUMN; 2754 m_nTabs = BAI_COLUMN;
2755 } else { 2755 } else {
2756 m_nTabs = BAI_STRUCTURE; 2756 m_nTabs = BAI_STRUCTURE;
2757 } 2757 }
2758 2758
2759 GenerateResults(); 2759 GenerateResults();
(...skipping 194 matching lines...) Expand 10 before | Expand all | Expand 10 after
2954 break; 2954 break;
2955 } 2955 }
2956 } 2956 }
2957 } 2957 }
2958 2958
2959 CPDF_Rect CBA_AnnotIterator::GetAnnotRect(CPDFSDK_Annot* pAnnot) { 2959 CPDF_Rect CBA_AnnotIterator::GetAnnotRect(CPDFSDK_Annot* pAnnot) {
2960 CPDF_Rect rcAnnot; 2960 CPDF_Rect rcAnnot;
2961 pAnnot->GetPDFAnnot()->GetRect(rcAnnot); 2961 pAnnot->GetPDFAnnot()->GetRect(rcAnnot);
2962 return rcAnnot; 2962 return rcAnnot;
2963 } 2963 }
OLDNEW
« no previous file with comments | « fpdfsdk/src/fsdk_baseannot.cpp ('k') | fpdfsdk/src/fsdk_mgr.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698