OLD | NEW |
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 "../../public/fpdf_ppo.h" | 7 #include "../../public/fpdf_ppo.h" |
8 #include "../include/fsdk_define.h" | 8 #include "../include/fsdk_define.h" |
9 | 9 |
10 class CPDF_PageOrganizer | 10 class CPDF_PageOrganizer |
(...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
171 pInheritable = PageDictGetInheritableTag(pSrcPageDict, "
Rotate"); | 171 pInheritable = PageDictGetInheritableTag(pSrcPageDict, "
Rotate"); |
172 if(pInheritable) | 172 if(pInheritable) |
173 pCurPageDict->SetAt("Rotate", pInheritable->Clon
e()); | 173 pCurPageDict->SetAt("Rotate", pInheritable->Clon
e()); |
174 } | 174 } |
175 | 175 |
176 ///////////////////////////////////////////// | 176 ///////////////////////////////////////////// |
177 //Update the reference | 177 //Update the reference |
178 FX_DWORD dwOldPageObj = pSrcPageDict->GetObjNum(); | 178 FX_DWORD dwOldPageObj = pSrcPageDict->GetObjNum(); |
179 FX_DWORD dwNewPageObj = pCurPageDict->GetObjNum(); | 179 FX_DWORD dwNewPageObj = pCurPageDict->GetObjNum(); |
180 | 180 |
181 » » pMapPtrToPtr->SetAt((FX_LPVOID)(uintptr_t)dwOldPageObj, (FX_LPVO
ID)(uintptr_t)dwNewPageObj); | 181 » » pMapPtrToPtr->SetAt((void*)(uintptr_t)dwOldPageObj, (void*)(uint
ptr_t)dwNewPageObj); |
182 | 182 |
183 this->UpdateReference(pCurPageDict, pDestPDFDoc, pMapPtrToPtr); | 183 this->UpdateReference(pCurPageDict, pDestPDFDoc, pMapPtrToPtr); |
184 curpage++; | 184 curpage++; |
185 } | 185 } |
186 | 186 |
187 delete pMapPtrToPtr; | 187 delete pMapPtrToPtr; |
188 return TRUE; | 188 return TRUE; |
189 } | 189 } |
190 | 190 |
191 CPDF_Object* CPDF_PageOrganizer::PageDictGetInheritableTag(CPDF_Dictionary *pDic
t, CFX_ByteString nSrctag) | 191 CPDF_Object* CPDF_PageOrganizer::PageDictGetInheritableTag(CPDF_Dictionary *pDic
t, CFX_ByteString nSrctag) |
(...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
294 int CPDF_PageOrganizer::GetNewObjId(CPDF_Document *pDoc, CFX_MapPtrToPtr* pM
apPtrToPtr, | 294 int CPDF_PageOrganizer::GetNewObjId(CPDF_Document *pDoc, CFX_MapPtrToPtr* pM
apPtrToPtr, |
295 CPDF_Ref
erence *pRef) | 295 CPDF_Ref
erence *pRef) |
296 { | 296 { |
297 size_t dwObjnum = 0; | 297 size_t dwObjnum = 0; |
298 if(!pRef) | 298 if(!pRef) |
299 return 0; | 299 return 0; |
300 dwObjnum = pRef->GetRefObjNum(); | 300 dwObjnum = pRef->GetRefObjNum(); |
301 | 301 |
302 size_t dwNewObjNum = 0; | 302 size_t dwNewObjNum = 0; |
303 | 303 |
304 » pMapPtrToPtr->Lookup((FX_LPVOID)dwObjnum, (FX_LPVOID&)dwNewObjNum); | 304 » pMapPtrToPtr->Lookup((void*)dwObjnum, (void*&)dwNewObjNum); |
305 if(dwNewObjNum) | 305 if(dwNewObjNum) |
306 { | 306 { |
307 return (int)dwNewObjNum; | 307 return (int)dwNewObjNum; |
308 } | 308 } |
309 else | 309 else |
310 { | 310 { |
311 CPDF_Object* pDirect = pRef->GetDirect(); | 311 CPDF_Object* pDirect = pRef->GetDirect(); |
312 if(!pDirect) | 312 if(!pDirect) |
313 { | 313 { |
314 return 0; | 314 return 0; |
(...skipping 17 matching lines...) Expand all Loading... |
332 return 4; | 332 return 4; |
333 } | 333 } |
334 else if(!FXSYS_stricmp(strType, "Page")) | 334 else if(!FXSYS_stricmp(strType, "Page")) |
335 { | 335 { |
336 pDictClone->Release(); | 336 pDictClone->Release(); |
337 return 0; | 337 return 0; |
338 } | 338 } |
339 } | 339 } |
340 } | 340 } |
341 dwNewObjNum = pDoc->AddIndirectObject(pClone);//, onum, gnum); | 341 dwNewObjNum = pDoc->AddIndirectObject(pClone);//, onum, gnum); |
342 » » pMapPtrToPtr->SetAt((FX_LPVOID)dwObjnum, (FX_LPVOID)dwNewObjNum)
; | 342 » » pMapPtrToPtr->SetAt((void*)dwObjnum, (void*)dwNewObjNum); |
343 | 343 |
344 if(!UpdateReference(pClone, pDoc, pMapPtrToPtr)) | 344 if(!UpdateReference(pClone, pDoc, pMapPtrToPtr)) |
345 { | 345 { |
346 pClone->Release(); | 346 pClone->Release(); |
347 return 0; | 347 return 0; |
348 } | 348 } |
349 return (int)dwNewObjNum; | 349 return (int)dwNewObjNum; |
350 } | 350 } |
351 return 0; | 351 return 0; |
352 } | 352 } |
(...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
458 if(!pSrcDict) | 458 if(!pSrcDict) |
459 return FALSE; | 459 return FALSE; |
460 CPDF_Document* pDstDoc = (CPDF_Document*)dest_doc; | 460 CPDF_Document* pDstDoc = (CPDF_Document*)dest_doc; |
461 CPDF_Dictionary* pDstDict = pDstDoc->GetRoot(); | 461 CPDF_Dictionary* pDstDict = pDstDoc->GetRoot(); |
462 if(!pDstDict) | 462 if(!pDstDict) |
463 return FALSE; | 463 return FALSE; |
464 pDstDict->SetAt(FX_BSTRC("ViewerPreferences"), pSrcDict->Clone(TRUE)); | 464 pDstDict->SetAt(FX_BSTRC("ViewerPreferences"), pSrcDict->Clone(TRUE)); |
465 return TRUE; | 465 return TRUE; |
466 } | 466 } |
467 | 467 |
OLD | NEW |