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

Side by Side Diff: fpdfsdk/src/fxedit/fxet_pageobjs.cpp

Issue 1745243002: Pass rect by const reference in SetClip_Rect(). (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: 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
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/fpdfapi/fpdf_render.h" 8 #include "core/include/fpdfapi/fpdf_render.h"
9 #include "fpdfsdk/include/fx_systemhandler.h" 9 #include "fpdfsdk/include/fx_systemhandler.h"
10 #include "fpdfsdk/include/fxedit/fx_edit.h" 10 #include "fpdfsdk/include/fxedit/fx_edit.h"
(...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after
93 IFX_Edit* pEdit, 93 IFX_Edit* pEdit,
94 FX_COLORREF color, 94 FX_COLORREF color,
95 const CFX_FloatRect& rcClip, 95 const CFX_FloatRect& rcClip,
96 const CFX_FloatPoint& ptOffset, 96 const CFX_FloatPoint& ptOffset,
97 const CPVT_WordRange* pRange) { 97 const CPVT_WordRange* pRange) {
98 pDevice->SaveState(); 98 pDevice->SaveState();
99 99
100 if (!rcClip.IsEmpty()) { 100 if (!rcClip.IsEmpty()) {
101 CFX_FloatRect rcTemp = rcClip; 101 CFX_FloatRect rcTemp = rcClip;
102 pUser2Device->TransformRect(rcTemp); 102 pUser2Device->TransformRect(rcTemp);
103 FX_RECT rcDevClip; 103 pDevice->SetClip_Rect(FX_RECT((int32_t)rcTemp.left, (int32_t)rcTemp.top,
104 rcDevClip.left = (int32_t)rcTemp.left; 104 (int32_t)rcTemp.right,
105 rcDevClip.right = (int32_t)rcTemp.right; 105 (int32_t)rcTemp.bottom));
106 rcDevClip.top = (int32_t)rcTemp.top;
107 rcDevClip.bottom = (int32_t)rcTemp.bottom;
108 pDevice->SetClip_Rect(&rcDevClip);
109 } 106 }
110 107
111 if (IFX_Edit_Iterator* pIterator = pEdit->GetIterator()) { 108 if (IFX_Edit_Iterator* pIterator = pEdit->GetIterator()) {
112 if (pEdit->GetFontMap()) { 109 if (pEdit->GetFontMap()) {
113 if (pRange) 110 if (pRange)
114 pIterator->SetAt(pRange->BeginPos); 111 pIterator->SetAt(pRange->BeginPos);
115 else 112 else
116 pIterator->SetAt(0); 113 pIterator->SetAt(0);
117 114
118 while (pIterator->NextWord()) { 115 while (pIterator->NextWord()) {
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
167 164
168 CFX_ByteTextBuf sTextBuf; 165 CFX_ByteTextBuf sTextBuf;
169 int32_t nFontIndex = -1; 166 int32_t nFontIndex = -1;
170 CFX_FloatPoint ptBT(0.0f, 0.0f); 167 CFX_FloatPoint ptBT(0.0f, 0.0f);
171 168
172 pDevice->SaveState(); 169 pDevice->SaveState();
173 170
174 if (!rcClip.IsEmpty()) { 171 if (!rcClip.IsEmpty()) {
175 CFX_FloatRect rcTemp = rcClip; 172 CFX_FloatRect rcTemp = rcClip;
176 pUser2Device->TransformRect(rcTemp); 173 pUser2Device->TransformRect(rcTemp);
177 FX_RECT rcDevClip; 174 pDevice->SetClip_Rect(FX_RECT((int32_t)rcTemp.left, (int32_t)rcTemp.top,
178 rcDevClip.left = (int32_t)rcTemp.left; 175 (int32_t)rcTemp.right,
179 rcDevClip.right = (int32_t)rcTemp.right; 176 (int32_t)rcTemp.bottom));
180 rcDevClip.top = (int32_t)rcTemp.top;
181 rcDevClip.bottom = (int32_t)rcTemp.bottom;
182 pDevice->SetClip_Rect(&rcDevClip);
183 } 177 }
184 178
185 if (IFX_Edit_Iterator* pIterator = pEdit->GetIterator()) { 179 if (IFX_Edit_Iterator* pIterator = pEdit->GetIterator()) {
186 if (IFX_Edit_FontMap* pFontMap = pEdit->GetFontMap()) { 180 if (IFX_Edit_FontMap* pFontMap = pEdit->GetFontMap()) {
187 if (pRange) 181 if (pRange)
188 pIterator->SetAt(pRange->BeginPos); 182 pIterator->SetAt(pRange->BeginPos);
189 else 183 else
190 pIterator->SetAt(0); 184 pIterator->SetAt(0);
191 185
192 CPVT_WordPlace oldplace; 186 CPVT_WordPlace oldplace;
(...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after
292 286
293 CFX_ByteTextBuf sTextBuf; 287 CFX_ByteTextBuf sTextBuf;
294 CPVT_WordProps wp; 288 CPVT_WordProps wp;
295 CFX_FloatPoint ptBT(0.0f, 0.0f); 289 CFX_FloatPoint ptBT(0.0f, 0.0f);
296 290
297 pDevice->SaveState(); 291 pDevice->SaveState();
298 292
299 if (!rcClip.IsEmpty()) { 293 if (!rcClip.IsEmpty()) {
300 CFX_FloatRect rcTemp = rcClip; 294 CFX_FloatRect rcTemp = rcClip;
301 pUser2Device->TransformRect(rcTemp); 295 pUser2Device->TransformRect(rcTemp);
302 FX_RECT rcDevClip; 296 pDevice->SetClip_Rect(FX_RECT((int32_t)rcTemp.left, (int32_t)rcTemp.right,
dsinclair 2016/02/29 21:15:26 This should be left, top, right bottom?
Tom Sepez 2016/02/29 21:17:45 Yup. Just noticed that.
303 rcDevClip.left = (int32_t)rcTemp.left; 297 (int32_t)rcTemp.top, (int32_t)rcTemp.bottom));
304 rcDevClip.right = (int32_t)rcTemp.right;
305 rcDevClip.top = (int32_t)rcTemp.top;
306 rcDevClip.bottom = (int32_t)rcTemp.bottom;
307 pDevice->SetClip_Rect(&rcDevClip);
308 } 298 }
309 299
310 if (IFX_Edit_Iterator* pIterator = pEdit->GetIterator()) { 300 if (IFX_Edit_Iterator* pIterator = pEdit->GetIterator()) {
311 if (IFX_Edit_FontMap* pFontMap = pEdit->GetFontMap()) { 301 if (IFX_Edit_FontMap* pFontMap = pEdit->GetFontMap()) {
312 if (pRange) 302 if (pRange)
313 pIterator->SetAt(pRange->BeginPos); 303 pIterator->SetAt(pRange->BeginPos);
314 else 304 else
315 pIterator->SetAt(0); 305 pIterator->SetAt(0);
316 306
317 CPVT_WordPlace oldplace; 307 CPVT_WordPlace oldplace;
(...skipping 328 matching lines...) Expand 10 before | Expand all | Expand 10 after
646 rcUnderline.left += ptOffset.x; 636 rcUnderline.left += ptOffset.x;
647 rcUnderline.right += ptOffset.x; 637 rcUnderline.right += ptOffset.x;
648 rcUnderline.top += ptOffset.y; 638 rcUnderline.top += ptOffset.y;
649 rcUnderline.bottom += ptOffset.y; 639 rcUnderline.bottom += ptOffset.y;
650 AddRectToPageObjects(pObjectHolder, color, rcUnderline); 640 AddRectToPageObjects(pObjectHolder, color, rcUnderline);
651 } 641 }
652 } 642 }
653 } 643 }
654 } 644 }
655 } 645 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698