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

Side by Side Diff: core/src/fpdfdoc/doc_basic.cpp

Issue 1410673005: Add type cast definitions for CPDF_Number. (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: Created 5 years, 2 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/fpdfdoc/fpdf_doc.h" 7 #include "../../include/fpdfdoc/fpdf_doc.h"
8 const int nMaxRecursion = 32; 8 const int nMaxRecursion = 32;
9 int CPDF_Dest::GetPageIndex(CPDF_Document* pDoc) { 9 int CPDF_Dest::GetPageIndex(CPDF_Document* pDoc) {
10 if (m_pObj == NULL || m_pObj->GetType() != PDFOBJ_ARRAY) { 10 if (m_pObj == NULL || m_pObj->GetType() != PDFOBJ_ARRAY) {
11 return 0; 11 return 0;
12 } 12 }
13 CPDF_Object* pPage = ((CPDF_Array*)m_pObj)->GetElementValue(0); 13 CPDF_Object* pPage = ((CPDF_Array*)m_pObj)->GetElementValue(0);
14 if (pPage == NULL) { 14 if (!pPage)
15 return 0; 15 return 0;
16 } 16 if (pPage->IsNumber())
17 if (pPage->GetType() == PDFOBJ_NUMBER) {
18 return pPage->GetInteger(); 17 return pPage->GetInteger();
19 } 18 if (!pPage->IsDictionary())
20 if (!pPage->IsDictionary()) {
21 return 0; 19 return 0;
22 }
23 return pDoc->GetPageIndex(pPage->GetObjNum()); 20 return pDoc->GetPageIndex(pPage->GetObjNum());
24 } 21 }
25 FX_DWORD CPDF_Dest::GetPageObjNum() { 22 FX_DWORD CPDF_Dest::GetPageObjNum() {
26 if (m_pObj == NULL || m_pObj->GetType() != PDFOBJ_ARRAY) { 23 if (m_pObj == NULL || m_pObj->GetType() != PDFOBJ_ARRAY) {
27 return 0; 24 return 0;
28 } 25 }
29 CPDF_Object* pPage = ((CPDF_Array*)m_pObj)->GetElementValue(0); 26 CPDF_Object* pPage = ((CPDF_Array*)m_pObj)->GetElementValue(0);
30 if (pPage == NULL) { 27 if (!pPage)
31 return 0; 28 return 0;
32 } 29 if (pPage->IsNumber())
33 if (pPage->GetType() == PDFOBJ_NUMBER) {
34 return pPage->GetInteger(); 30 return pPage->GetInteger();
35 } 31 if (pPage->IsDictionary())
36 if (pPage->IsDictionary()) {
37 return pPage->GetObjNum(); 32 return pPage->GetObjNum();
38 }
39 return 0; 33 return 0;
40 } 34 }
41 const FX_CHAR* g_sZoomModes[] = {"XYZ", "Fit", "FitH", "FitV", "FitR", 35 const FX_CHAR* g_sZoomModes[] = {"XYZ", "Fit", "FitH", "FitV", "FitR",
42 "FitB", "FitBH", "FitBV", ""}; 36 "FitB", "FitBH", "FitBV", ""};
43 int CPDF_Dest::GetZoomMode() { 37 int CPDF_Dest::GetZoomMode() {
44 if (m_pObj == NULL || m_pObj->GetType() != PDFOBJ_ARRAY) { 38 if (m_pObj == NULL || m_pObj->GetType() != PDFOBJ_ARRAY) {
45 return 0; 39 return 0;
46 } 40 }
47 CFX_ByteString mode; 41 CFX_ByteString mode;
48 CPDF_Object* pObj = ((CPDF_Array*)m_pObj)->GetElementValue(1); 42 CPDF_Object* pObj = ((CPDF_Array*)m_pObj)->GetElementValue(1);
(...skipping 494 matching lines...) Expand 10 before | Expand all | Expand 10 after
543 int nPage = FXSYS_atoi(bsLbl); 537 int nPage = FXSYS_atoi(bsLbl);
544 if (nPage > 0 && nPage <= nPages) { 538 if (nPage > 0 && nPage <= nPages) {
545 return nPage; 539 return nPage;
546 } 540 }
547 return -1; 541 return -1;
548 } 542 }
549 int32_t CPDF_PageLabel::GetPageByLabel(const CFX_WideStringC& wsLabel) const { 543 int32_t CPDF_PageLabel::GetPageByLabel(const CFX_WideStringC& wsLabel) const {
550 CFX_ByteString bsLabel = PDF_EncodeText(wsLabel.GetPtr()); 544 CFX_ByteString bsLabel = PDF_EncodeText(wsLabel.GetPtr());
551 return GetPageByLabel(bsLabel); 545 return GetPageByLabel(bsLabel);
552 } 546 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698