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

Side by Side Diff: core/src/fpdfdoc/pdf_vt.h

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/fpdfdoc/doc_vt.cpp ('k') | core/src/fpdftext/fpdf_text_int.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 #ifndef CORE_SRC_FPDFDOC_PDF_VT_H_ 7 #ifndef CORE_SRC_FPDFDOC_PDF_VT_H_
8 #define CORE_SRC_FPDFDOC_PDF_VT_H_ 8 #define CORE_SRC_FPDFDOC_PDF_VT_H_
9 9
10 class CPVT_Size; 10 class CPVT_Size;
(...skipping 26 matching lines...) Expand all
37 CPVT_FloatRect() { left = top = right = bottom = 0.0f; } 37 CPVT_FloatRect() { left = top = right = bottom = 0.0f; }
38 CPVT_FloatRect(FX_FLOAT other_left, 38 CPVT_FloatRect(FX_FLOAT other_left,
39 FX_FLOAT other_top, 39 FX_FLOAT other_top,
40 FX_FLOAT other_right, 40 FX_FLOAT other_right,
41 FX_FLOAT other_bottom) { 41 FX_FLOAT other_bottom) {
42 left = other_left; 42 left = other_left;
43 top = other_top; 43 top = other_top;
44 right = other_right; 44 right = other_right;
45 bottom = other_bottom; 45 bottom = other_bottom;
46 } 46 }
47 explicit CPVT_FloatRect(const CPDF_Rect& rect) { 47 explicit CPVT_FloatRect(const CFX_FloatRect& rect) {
48 left = rect.left; 48 left = rect.left;
49 top = rect.top; 49 top = rect.top;
50 right = rect.right; 50 right = rect.right;
51 bottom = rect.bottom; 51 bottom = rect.bottom;
52 } 52 }
53 void Default() { left = top = right = bottom = 0.0f; } 53 void Default() { left = top = right = bottom = 0.0f; }
54 FX_FLOAT Height() const { 54 FX_FLOAT Height() const {
55 if (top > bottom) 55 if (top > bottom)
56 return top - bottom; 56 return top - bottom;
57 return bottom - top; 57 return bottom - top;
(...skipping 192 matching lines...) Expand 10 before | Expand all | Expand 10 after
250 CPVT_WordPlace AddLine(const CPVT_LineInfo& lineinfo); 250 CPVT_WordPlace AddLine(const CPVT_LineInfo& lineinfo);
251 void ClearWords(const CPVT_WordRange& PlaceRange); 251 void ClearWords(const CPVT_WordRange& PlaceRange);
252 void ClearWord(const CPVT_WordPlace& place); 252 void ClearWord(const CPVT_WordPlace& place);
253 CPVT_FloatRect Rearrange(); 253 CPVT_FloatRect Rearrange();
254 CPVT_Size GetSectionSize(FX_FLOAT fFontSize); 254 CPVT_Size GetSectionSize(FX_FLOAT fFontSize);
255 CPVT_WordPlace GetBeginWordPlace() const; 255 CPVT_WordPlace GetBeginWordPlace() const;
256 CPVT_WordPlace GetEndWordPlace() const; 256 CPVT_WordPlace GetEndWordPlace() const;
257 CPVT_WordPlace GetPrevWordPlace(const CPVT_WordPlace& place) const; 257 CPVT_WordPlace GetPrevWordPlace(const CPVT_WordPlace& place) const;
258 CPVT_WordPlace GetNextWordPlace(const CPVT_WordPlace& place) const; 258 CPVT_WordPlace GetNextWordPlace(const CPVT_WordPlace& place) const;
259 void UpdateWordPlace(CPVT_WordPlace& place) const; 259 void UpdateWordPlace(CPVT_WordPlace& place) const;
260 CPVT_WordPlace SearchWordPlace(const CPDF_Point& point) const; 260 CPVT_WordPlace SearchWordPlace(const CFX_FloatPoint& point) const;
261 CPVT_WordPlace SearchWordPlace(FX_FLOAT fx, 261 CPVT_WordPlace SearchWordPlace(FX_FLOAT fx,
262 const CPVT_WordPlace& lineplace) const; 262 const CPVT_WordPlace& lineplace) const;
263 CPVT_WordPlace SearchWordPlace(FX_FLOAT fx, 263 CPVT_WordPlace SearchWordPlace(FX_FLOAT fx,
264 const CPVT_WordRange& range) const; 264 const CPVT_WordRange& range) const;
265 265
266 public: 266 public:
267 CPVT_WordPlace SecPlace; 267 CPVT_WordPlace SecPlace;
268 CPVT_SectionInfo m_SecInfo; 268 CPVT_SectionInfo m_SecInfo;
269 CLines m_LineArray; 269 CLines m_LineArray;
270 CPVT_ArrayTemplate<CPVT_WordInfo*> m_WordArray; 270 CPVT_ArrayTemplate<CPVT_WordInfo*> m_WordArray;
(...skipping 18 matching lines...) Expand all
289 void OutputLines(); 289 void OutputLines();
290 290
291 CPVT_FloatRect m_rcRet; 291 CPVT_FloatRect m_rcRet;
292 CPDF_VariableText* m_pVT; 292 CPDF_VariableText* m_pVT;
293 CSection* m_pSection; 293 CSection* m_pSection;
294 }; 294 };
295 class CPDF_EditContainer { 295 class CPDF_EditContainer {
296 public: 296 public:
297 CPDF_EditContainer() : m_rcPlate(0, 0, 0, 0), m_rcContent(0, 0, 0, 0) {} 297 CPDF_EditContainer() : m_rcPlate(0, 0, 0, 0), m_rcContent(0, 0, 0, 0) {}
298 virtual ~CPDF_EditContainer() {} 298 virtual ~CPDF_EditContainer() {}
299 virtual void SetPlateRect(const CPDF_Rect& rect) { m_rcPlate = rect; } 299 virtual void SetPlateRect(const CFX_FloatRect& rect) { m_rcPlate = rect; }
300 virtual const CPDF_Rect& GetPlateRect() const { return m_rcPlate; } 300 virtual const CFX_FloatRect& GetPlateRect() const { return m_rcPlate; }
301 virtual void SetContentRect(const CPVT_FloatRect& rect) { 301 virtual void SetContentRect(const CPVT_FloatRect& rect) {
302 m_rcContent = rect; 302 m_rcContent = rect;
303 } 303 }
304 virtual CPDF_Rect GetContentRect() const { return m_rcContent; } 304 virtual CFX_FloatRect GetContentRect() const { return m_rcContent; }
305 FX_FLOAT GetPlateWidth() const { return m_rcPlate.right - m_rcPlate.left; } 305 FX_FLOAT GetPlateWidth() const { return m_rcPlate.right - m_rcPlate.left; }
306 FX_FLOAT GetPlateHeight() const { return m_rcPlate.top - m_rcPlate.bottom; } 306 FX_FLOAT GetPlateHeight() const { return m_rcPlate.top - m_rcPlate.bottom; }
307 CPVT_Size GetPlateSize() const { 307 CPVT_Size GetPlateSize() const {
308 return CPVT_Size(GetPlateWidth(), GetPlateHeight()); 308 return CPVT_Size(GetPlateWidth(), GetPlateHeight());
309 } 309 }
310 CPDF_Point GetBTPoint() const { 310 CFX_FloatPoint GetBTPoint() const {
311 return CPDF_Point(m_rcPlate.left, m_rcPlate.top); 311 return CFX_FloatPoint(m_rcPlate.left, m_rcPlate.top);
312 } 312 }
313 CPDF_Point GetETPoint() const { 313 CFX_FloatPoint GetETPoint() const {
314 return CPDF_Point(m_rcPlate.right, m_rcPlate.bottom); 314 return CFX_FloatPoint(m_rcPlate.right, m_rcPlate.bottom);
315 } 315 }
316 inline CPDF_Point InToOut(const CPDF_Point& point) const { 316 inline CFX_FloatPoint InToOut(const CFX_FloatPoint& point) const {
317 return CPDF_Point(point.x + GetBTPoint().x, GetBTPoint().y - point.y); 317 return CFX_FloatPoint(point.x + GetBTPoint().x, GetBTPoint().y - point.y);
318 } 318 }
319 inline CPDF_Point OutToIn(const CPDF_Point& point) const { 319 inline CFX_FloatPoint OutToIn(const CFX_FloatPoint& point) const {
320 return CPDF_Point(point.x - GetBTPoint().x, GetBTPoint().y - point.y); 320 return CFX_FloatPoint(point.x - GetBTPoint().x, GetBTPoint().y - point.y);
321 } 321 }
322 inline CPDF_Rect InToOut(const CPVT_FloatRect& rect) const { 322 inline CFX_FloatRect InToOut(const CPVT_FloatRect& rect) const {
323 CPDF_Point ptLeftTop = InToOut(CPDF_Point(rect.left, rect.top)); 323 CFX_FloatPoint ptLeftTop = InToOut(CFX_FloatPoint(rect.left, rect.top));
324 CPDF_Point ptRightBottom = InToOut(CPDF_Point(rect.right, rect.bottom)); 324 CFX_FloatPoint ptRightBottom =
325 return CPDF_Rect(ptLeftTop.x, ptRightBottom.y, ptRightBottom.x, 325 InToOut(CFX_FloatPoint(rect.right, rect.bottom));
326 ptLeftTop.y); 326 return CFX_FloatRect(ptLeftTop.x, ptRightBottom.y, ptRightBottom.x,
327 ptLeftTop.y);
327 } 328 }
328 inline CPVT_FloatRect OutToIn(const CPDF_Rect& rect) const { 329 inline CPVT_FloatRect OutToIn(const CFX_FloatRect& rect) const {
329 CPDF_Point ptLeftTop = OutToIn(CPDF_Point(rect.left, rect.top)); 330 CFX_FloatPoint ptLeftTop = OutToIn(CFX_FloatPoint(rect.left, rect.top));
330 CPDF_Point ptRightBottom = OutToIn(CPDF_Point(rect.right, rect.bottom)); 331 CFX_FloatPoint ptRightBottom =
332 OutToIn(CFX_FloatPoint(rect.right, rect.bottom));
331 return CPVT_FloatRect(ptLeftTop.x, ptLeftTop.y, ptRightBottom.x, 333 return CPVT_FloatRect(ptLeftTop.x, ptLeftTop.y, ptRightBottom.x,
332 ptRightBottom.y); 334 ptRightBottom.y);
333 } 335 }
334 336
335 private: 337 private:
336 CPDF_Rect m_rcPlate; 338 CFX_FloatRect m_rcPlate;
337 CPVT_FloatRect m_rcContent; 339 CPVT_FloatRect m_rcContent;
338 }; 340 };
339 341
340 class CPDF_VariableText : public IPDF_VariableText, private CPDF_EditContainer { 342 class CPDF_VariableText : public IPDF_VariableText, private CPDF_EditContainer {
341 friend class CTypeset; 343 friend class CTypeset;
342 friend class CSection; 344 friend class CSection;
343 friend class CPDF_VariableText_Iterator; 345 friend class CPDF_VariableText_Iterator;
344 346
345 public: 347 public:
346 CPDF_VariableText(); 348 CPDF_VariableText();
347 ~CPDF_VariableText() override; 349 ~CPDF_VariableText() override;
348 350
349 // IPDF_VariableText 351 // IPDF_VariableText
350 IPDF_VariableText_Provider* SetProvider( 352 IPDF_VariableText_Provider* SetProvider(
351 IPDF_VariableText_Provider* pProvider) override; 353 IPDF_VariableText_Provider* pProvider) override;
352 IPDF_VariableText_Iterator* GetIterator() override; 354 IPDF_VariableText_Iterator* GetIterator() override;
353 void SetPlateRect(const CPDF_Rect& rect) override { 355 void SetPlateRect(const CFX_FloatRect& rect) override {
354 CPDF_EditContainer::SetPlateRect(rect); 356 CPDF_EditContainer::SetPlateRect(rect);
355 } 357 }
356 void SetAlignment(int32_t nFormat = 0) override { m_nAlignment = nFormat; } 358 void SetAlignment(int32_t nFormat = 0) override { m_nAlignment = nFormat; }
357 void SetPasswordChar(FX_WORD wSubWord = '*') override { 359 void SetPasswordChar(FX_WORD wSubWord = '*') override {
358 m_wSubWord = wSubWord; 360 m_wSubWord = wSubWord;
359 } 361 }
360 void SetLimitChar(int32_t nLimitChar = 0) override { 362 void SetLimitChar(int32_t nLimitChar = 0) override {
361 m_nLimitChar = nLimitChar; 363 m_nLimitChar = nLimitChar;
362 } 364 }
363 void SetCharSpace(FX_FLOAT fCharSpace = 0.0f) override { 365 void SetCharSpace(FX_FLOAT fCharSpace = 0.0f) override {
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
400 const CPVT_SecProps* pSecProps = NULL, 402 const CPVT_SecProps* pSecProps = NULL,
401 const CPVT_WordProps* pWordProps = NULL) override; 403 const CPVT_WordProps* pWordProps = NULL) override;
402 CPVT_WordPlace InsertText(const CPVT_WordPlace& place, 404 CPVT_WordPlace InsertText(const CPVT_WordPlace& place,
403 const FX_WCHAR* text, 405 const FX_WCHAR* text,
404 int32_t charset = 1, 406 int32_t charset = 1,
405 const CPVT_SecProps* pSecProps = NULL, 407 const CPVT_SecProps* pSecProps = NULL,
406 const CPVT_WordProps* pWordProps = NULL) override; 408 const CPVT_WordProps* pWordProps = NULL) override;
407 CPVT_WordPlace DeleteWords(const CPVT_WordRange& PlaceRange) override; 409 CPVT_WordPlace DeleteWords(const CPVT_WordRange& PlaceRange) override;
408 CPVT_WordPlace DeleteWord(const CPVT_WordPlace& place) override; 410 CPVT_WordPlace DeleteWord(const CPVT_WordPlace& place) override;
409 CPVT_WordPlace BackSpaceWord(const CPVT_WordPlace& place) override; 411 CPVT_WordPlace BackSpaceWord(const CPVT_WordPlace& place) override;
410 const CPDF_Rect& GetPlateRect() const override { 412 const CFX_FloatRect& GetPlateRect() const override {
411 return CPDF_EditContainer::GetPlateRect(); 413 return CPDF_EditContainer::GetPlateRect();
412 } 414 }
413 CPDF_Rect GetContentRect() const override; 415 CFX_FloatRect GetContentRect() const override;
414 int32_t GetTotalWords() const override; 416 int32_t GetTotalWords() const override;
415 FX_FLOAT GetFontSize() const override { return m_fFontSize; } 417 FX_FLOAT GetFontSize() const override { return m_fFontSize; }
416 int32_t GetAlignment() const override { return m_nAlignment; } 418 int32_t GetAlignment() const override { return m_nAlignment; }
417 FX_WORD GetPasswordChar() const override { return GetSubWord(); } 419 FX_WORD GetPasswordChar() const override { return GetSubWord(); }
418 int32_t GetCharArray() const override { return m_nCharArray; } 420 int32_t GetCharArray() const override { return m_nCharArray; }
419 int32_t GetLimitChar() const override { return m_nLimitChar; } 421 int32_t GetLimitChar() const override { return m_nLimitChar; }
420 FX_BOOL IsMultiLine() const override { return m_bMultiLine; } 422 FX_BOOL IsMultiLine() const override { return m_bMultiLine; }
421 int32_t GetHorzScale() const override { return m_nHorzScale; } 423 int32_t GetHorzScale() const override { return m_nHorzScale; }
422 FX_FLOAT GetCharSpace() const override { return m_fCharSpace; } 424 FX_FLOAT GetCharSpace() const override { return m_fCharSpace; }
423 CPVT_WordPlace GetBeginWordPlace() const override; 425 CPVT_WordPlace GetBeginWordPlace() const override;
424 CPVT_WordPlace GetEndWordPlace() const override; 426 CPVT_WordPlace GetEndWordPlace() const override;
425 CPVT_WordPlace GetPrevWordPlace(const CPVT_WordPlace& place) const override; 427 CPVT_WordPlace GetPrevWordPlace(const CPVT_WordPlace& place) const override;
426 CPVT_WordPlace GetNextWordPlace(const CPVT_WordPlace& place) const override; 428 CPVT_WordPlace GetNextWordPlace(const CPVT_WordPlace& place) const override;
427 CPVT_WordPlace SearchWordPlace(const CPDF_Point& point) const override; 429 CPVT_WordPlace SearchWordPlace(const CFX_FloatPoint& point) const override;
428 CPVT_WordPlace GetUpWordPlace(const CPVT_WordPlace& place, 430 CPVT_WordPlace GetUpWordPlace(const CPVT_WordPlace& place,
429 const CPDF_Point& point) const override; 431 const CFX_FloatPoint& point) const override;
430 CPVT_WordPlace GetDownWordPlace(const CPVT_WordPlace& place, 432 CPVT_WordPlace GetDownWordPlace(const CPVT_WordPlace& place,
431 const CPDF_Point& point) const override; 433 const CFX_FloatPoint& point) const override;
432 CPVT_WordPlace GetLineBeginPlace(const CPVT_WordPlace& place) const override; 434 CPVT_WordPlace GetLineBeginPlace(const CPVT_WordPlace& place) const override;
433 CPVT_WordPlace GetLineEndPlace(const CPVT_WordPlace& place) const override; 435 CPVT_WordPlace GetLineEndPlace(const CPVT_WordPlace& place) const override;
434 CPVT_WordPlace GetSectionBeginPlace( 436 CPVT_WordPlace GetSectionBeginPlace(
435 const CPVT_WordPlace& place) const override; 437 const CPVT_WordPlace& place) const override;
436 CPVT_WordPlace GetSectionEndPlace(const CPVT_WordPlace& place) const override; 438 CPVT_WordPlace GetSectionEndPlace(const CPVT_WordPlace& place) const override;
437 void UpdateWordPlace(CPVT_WordPlace& place) const override; 439 void UpdateWordPlace(CPVT_WordPlace& place) const override;
438 CPVT_WordPlace AdjustLineHeader(const CPVT_WordPlace& place, 440 CPVT_WordPlace AdjustLineHeader(const CPVT_WordPlace& place,
439 FX_BOOL bPrevOrNext) const override; 441 FX_BOOL bPrevOrNext) const override;
440 int32_t WordPlaceToWordIndex(const CPVT_WordPlace& place) const override; 442 int32_t WordPlaceToWordIndex(const CPVT_WordPlace& place) const override;
441 CPVT_WordPlace WordIndexToWordPlace(int32_t index) const override; 443 CPVT_WordPlace WordIndexToWordPlace(int32_t index) const override;
(...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after
550 void SetAt(int32_t nWordIndex) override; 552 void SetAt(int32_t nWordIndex) override;
551 void SetAt(const CPVT_WordPlace& place) override; 553 void SetAt(const CPVT_WordPlace& place) override;
552 const CPVT_WordPlace& GetAt() const override { return m_CurPos; } 554 const CPVT_WordPlace& GetAt() const override { return m_CurPos; }
553 555
554 private: 556 private:
555 CPVT_WordPlace m_CurPos; 557 CPVT_WordPlace m_CurPos;
556 CPDF_VariableText* m_pVT; 558 CPDF_VariableText* m_pVT;
557 }; 559 };
558 560
559 #endif // CORE_SRC_FPDFDOC_PDF_VT_H_ 561 #endif // CORE_SRC_FPDFDOC_PDF_VT_H_
OLDNEW
« no previous file with comments | « core/src/fpdfdoc/doc_vt.cpp ('k') | core/src/fpdftext/fpdf_text_int.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698