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

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

Issue 1737593006: Re-land "Replace CPDF_Rect and CPDF_Point with CFX types." (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: Ooops. Created 4 years, 9 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 | « core/src/fpdfapi/fpdf_parser/fpdf_parser_utility.cpp ('k') | core/src/fpdfdoc/doc_ap.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 "core/include/fpdfapi/fpdf_pageobj.h" 7 #include "core/include/fpdfapi/fpdf_pageobj.h"
8 #include "core/include/fpdfdoc/fpdf_doc.h" 8 #include "core/include/fpdfdoc/fpdf_doc.h"
9 9
10 CPDF_AnnotList::CPDF_AnnotList(CPDF_Page* pPage) 10 CPDF_AnnotList::CPDF_AnnotList(CPDF_Page* pPage)
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
70 continue; 70 continue;
71 71
72 if (pOptions) { 72 if (pOptions) {
73 IPDF_OCContext* pOCContext = pOptions->m_pOCContext; 73 IPDF_OCContext* pOCContext = pOptions->m_pOCContext;
74 CPDF_Dictionary* pAnnotDict = pAnnot->GetAnnotDict(); 74 CPDF_Dictionary* pAnnotDict = pAnnot->GetAnnotDict();
75 if (pOCContext && pAnnotDict && 75 if (pOCContext && pAnnotDict &&
76 !pOCContext->CheckOCGVisible(pAnnotDict->GetDictBy("OC"))) { 76 !pOCContext->CheckOCGVisible(pAnnotDict->GetDictBy("OC"))) {
77 continue; 77 continue;
78 } 78 }
79 } 79 }
80 CPDF_Rect annot_rect_f; 80 CFX_FloatRect annot_rect_f;
81 pAnnot->GetRect(annot_rect_f); 81 pAnnot->GetRect(annot_rect_f);
82 CFX_Matrix matrix = *pMatrix; 82 CFX_Matrix matrix = *pMatrix;
83 if (clip_rect) { 83 if (clip_rect) {
84 annot_rect_f.Transform(&matrix); 84 annot_rect_f.Transform(&matrix);
85 FX_RECT annot_rect = annot_rect_f.GetOutterRect(); 85 FX_RECT annot_rect = annot_rect_f.GetOutterRect();
86 annot_rect.Intersect(*clip_rect); 86 annot_rect.Intersect(*clip_rect);
87 if (annot_rect.IsEmpty()) { 87 if (annot_rect.IsEmpty()) {
88 continue; 88 continue;
89 } 89 }
90 } 90 }
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
125 void CPDF_Annot::ClearCachedAP() { 125 void CPDF_Annot::ClearCachedAP() {
126 for (const auto& pair : m_APMap) { 126 for (const auto& pair : m_APMap) {
127 delete pair.second; 127 delete pair.second;
128 } 128 }
129 m_APMap.clear(); 129 m_APMap.clear();
130 } 130 }
131 CFX_ByteString CPDF_Annot::GetSubType() const { 131 CFX_ByteString CPDF_Annot::GetSubType() const {
132 return m_sSubtype; 132 return m_sSubtype;
133 } 133 }
134 134
135 void CPDF_Annot::GetRect(CPDF_Rect& rect) const { 135 void CPDF_Annot::GetRect(CFX_FloatRect& rect) const {
136 if (!m_pAnnotDict) { 136 if (!m_pAnnotDict) {
137 return; 137 return;
138 } 138 }
139 rect = m_pAnnotDict->GetRectBy("Rect"); 139 rect = m_pAnnotDict->GetRectBy("Rect");
140 rect.Normalize(); 140 rect.Normalize();
141 } 141 }
142 142
143 FX_DWORD CPDF_Annot::GetFlags() const { 143 FX_DWORD CPDF_Annot::GetFlags() const {
144 return m_pAnnotDict->GetIntegerBy("F"); 144 return m_pAnnotDict->GetIntegerBy("F");
145 } 145 }
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
203 CPDF_Annot::AppearanceMode mode, 203 CPDF_Annot::AppearanceMode mode,
204 const CFX_Matrix* pUser2Device, 204 const CFX_Matrix* pUser2Device,
205 CFX_Matrix& matrix) { 205 CFX_Matrix& matrix) {
206 CPDF_Form* pForm = pAnnot->GetAPForm(pPage, mode); 206 CPDF_Form* pForm = pAnnot->GetAPForm(pPage, mode);
207 if (!pForm) { 207 if (!pForm) {
208 return NULL; 208 return NULL;
209 } 209 }
210 CFX_FloatRect form_bbox = pForm->m_pFormDict->GetRectBy("BBox"); 210 CFX_FloatRect form_bbox = pForm->m_pFormDict->GetRectBy("BBox");
211 CFX_Matrix form_matrix = pForm->m_pFormDict->GetMatrixBy("Matrix"); 211 CFX_Matrix form_matrix = pForm->m_pFormDict->GetMatrixBy("Matrix");
212 form_matrix.TransformRect(form_bbox); 212 form_matrix.TransformRect(form_bbox);
213 CPDF_Rect arect; 213 CFX_FloatRect arect;
214 pAnnot->GetRect(arect); 214 pAnnot->GetRect(arect);
215 matrix.MatchRect(arect, form_bbox); 215 matrix.MatchRect(arect, form_bbox);
216 matrix.Concat(*pUser2Device); 216 matrix.Concat(*pUser2Device);
217 return pForm; 217 return pForm;
218 } 218 }
219 FX_BOOL CPDF_Annot::DrawAppearance(CPDF_Page* pPage, 219 FX_BOOL CPDF_Annot::DrawAppearance(CPDF_Page* pPage,
220 CFX_RenderDevice* pDevice, 220 CFX_RenderDevice* pDevice,
221 const CFX_Matrix* pUser2Device, 221 const CFX_Matrix* pUser2Device,
222 AppearanceMode mode, 222 AppearanceMode mode,
223 const CPDF_RenderOptions* pOptions) { 223 const CPDF_RenderOptions* pOptions) {
(...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after
338 CFX_PathData path; 338 CFX_PathData path;
339 width /= 2; 339 width /= 2;
340 path.AppendRect(rect.left + width, rect.bottom + width, rect.right - width, 340 path.AppendRect(rect.left + width, rect.bottom + width, rect.right - width,
341 rect.top - width); 341 rect.top - width);
342 int fill_type = 0; 342 int fill_type = 0;
343 if (pOptions && (pOptions->m_Flags & RENDER_NOPATHSMOOTH)) { 343 if (pOptions && (pOptions->m_Flags & RENDER_NOPATHSMOOTH)) {
344 fill_type |= FXFILL_NOPATHSMOOTH; 344 fill_type |= FXFILL_NOPATHSMOOTH;
345 } 345 }
346 pDevice->DrawPath(&path, pUser2Device, &graph_state, argb, argb, fill_type); 346 pDevice->DrawPath(&path, pUser2Device, &graph_state, argb, argb, fill_type);
347 } 347 }
OLDNEW
« no previous file with comments | « core/src/fpdfapi/fpdf_parser/fpdf_parser_utility.cpp ('k') | core/src/fpdfdoc/doc_ap.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698