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

Side by Side Diff: fpdfsdk/fxedit/include/fxet_edit.h

Issue 2187073005: Splitting fpdfdoc/doc_* part II. (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@fpdf_doc_III
Patch Set: Rebase to master Created 4 years, 4 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 | « fpdfsdk/fxedit/fxet_list.cpp ('k') | fpdfsdk/pdfwindow/PWL_ComboBox.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 FPDFSDK_FXEDIT_INCLUDE_FXET_EDIT_H_ 7 #ifndef FPDFSDK_FXEDIT_INCLUDE_FXET_EDIT_H_
8 #define FPDFSDK_FXEDIT_INCLUDE_FXET_EDIT_H_ 8 #define FPDFSDK_FXEDIT_INCLUDE_FXET_EDIT_H_
9 9
10 #include <memory> 10 #include <memory>
11 11
12 #include "core/fpdfdoc/include/cpvt_secprops.h" 12 #include "core/fpdfdoc/include/cpvt_secprops.h"
13 #include "core/fpdfdoc/include/cpvt_wordprops.h" 13 #include "core/fpdfdoc/include/cpvt_wordprops.h"
14 #include "fpdfsdk/fxedit/include/fx_edit.h" 14 #include "fpdfsdk/fxedit/include/fx_edit.h"
15 15
16 class CPDF_PageObjectHolder; 16 class CPDF_PageObjectHolder;
17 class CPDF_TextObject; 17 class CPDF_TextObject;
18 class CPWL_Edit; 18 class CPWL_Edit;
19 class CPWL_EditCtrl; 19 class CPWL_EditCtrl;
20 class CFX_Edit; 20 class CFX_Edit;
21 class CFX_Edit_Iterator; 21 class CFX_Edit_Iterator;
22 class CFX_Edit_Provider; 22 class CFX_Edit_Provider;
23 class CFX_RenderDevice; 23 class CFX_RenderDevice;
24 class CFX_SystemHandler; 24 class CFX_SystemHandler;
25 class IFX_Edit_UndoItem; 25 class IFX_Edit_UndoItem;
26 26
27 #define FX_EDIT_IsFloatZero(f) (f < 0.0001 && f > -0.0001)
28 #define FX_EDIT_IsFloatEqual(fa, fb) FX_EDIT_IsFloatZero(fa - fb)
29 #define FX_EDIT_IsFloatBigger(fa, fb) (fa > fb && !FX_EDIT_IsFloatEqual(fa, fb))
30 #define FX_EDIT_IsFloatSmaller(fa, fb) \
31 (fa < fb && !FX_EDIT_IsFloatEqual(fa, fb))
32
33 enum EDIT_PROPS_E { 27 enum EDIT_PROPS_E {
34 EP_LINELEADING, 28 EP_LINELEADING,
35 EP_LINEINDENT, 29 EP_LINEINDENT,
36 EP_ALIGNMENT, 30 EP_ALIGNMENT,
37 EP_FONTINDEX, 31 EP_FONTINDEX,
38 EP_FONTSIZE, 32 EP_FONTSIZE,
39 EP_WORDCOLOR, 33 EP_WORDCOLOR,
40 EP_SCRIPTTYPE, 34 EP_SCRIPTTYPE,
41 EP_UNDERLINE, 35 EP_UNDERLINE,
42 EP_CROSSOUT, 36 EP_CROSSOUT,
43 EP_CHARSPACE, 37 EP_CHARSPACE,
44 EP_HORZSCALE, 38 EP_HORZSCALE,
45 EP_BOLD, 39 EP_BOLD,
46 EP_ITALIC 40 EP_ITALIC
47 }; 41 };
48 42
49 struct CFX_Edit_LineRect { 43 struct CFX_Edit_LineRect {
50 CFX_Edit_LineRect(const CPVT_WordRange& wrLine, const CFX_FloatRect& rcLine) 44 CFX_Edit_LineRect(const CPVT_WordRange& wrLine, const CFX_FloatRect& rcLine)
51 : m_wrLine(wrLine), m_rcLine(rcLine) {} 45 : m_wrLine(wrLine), m_rcLine(rcLine) {}
52 46
53 FX_BOOL operator!=(const CFX_Edit_LineRect& linerect) const { 47 FX_BOOL operator!=(const CFX_Edit_LineRect& linerect) const {
54 return FXSYS_memcmp(this, &linerect, sizeof(CFX_Edit_LineRect)) != 0; 48 return FXSYS_memcmp(this, &linerect, sizeof(CFX_Edit_LineRect)) != 0;
55 } 49 }
56 50
57 FX_BOOL IsSameHeight(const CFX_Edit_LineRect& linerect) const { 51 FX_BOOL IsSameHeight(const CFX_Edit_LineRect& linerect) const {
58 return FX_EDIT_IsFloatZero( 52 return IsFloatZero((m_rcLine.top - m_rcLine.bottom) -
59 (m_rcLine.top - m_rcLine.bottom) - 53 (linerect.m_rcLine.top - linerect.m_rcLine.bottom));
60 (linerect.m_rcLine.top - linerect.m_rcLine.bottom));
61 } 54 }
62 55
63 FX_BOOL IsSameTop(const CFX_Edit_LineRect& linerect) const { 56 FX_BOOL IsSameTop(const CFX_Edit_LineRect& linerect) const {
64 return FX_EDIT_IsFloatZero(m_rcLine.top - linerect.m_rcLine.top); 57 return IsFloatZero(m_rcLine.top - linerect.m_rcLine.top);
65 } 58 }
66 59
67 FX_BOOL IsSameLeft(const CFX_Edit_LineRect& linerect) const { 60 FX_BOOL IsSameLeft(const CFX_Edit_LineRect& linerect) const {
68 return FX_EDIT_IsFloatZero(m_rcLine.left - linerect.m_rcLine.left); 61 return IsFloatZero(m_rcLine.left - linerect.m_rcLine.left);
69 } 62 }
70 63
71 FX_BOOL IsSameRight(const CFX_Edit_LineRect& linerect) const { 64 FX_BOOL IsSameRight(const CFX_Edit_LineRect& linerect) const {
72 return FX_EDIT_IsFloatZero(m_rcLine.right - linerect.m_rcLine.right); 65 return IsFloatZero(m_rcLine.right - linerect.m_rcLine.right);
73 } 66 }
74 67
75 CPVT_WordRange m_wrLine; 68 CPVT_WordRange m_wrLine;
76 CFX_FloatRect m_rcLine; 69 CFX_FloatRect m_rcLine;
77 }; 70 };
78 71
79 class CFX_Edit_LineRectArray { 72 class CFX_Edit_LineRectArray {
80 public: 73 public:
81 CFX_Edit_LineRectArray(); 74 CFX_Edit_LineRectArray();
82 virtual ~CFX_Edit_LineRectArray(); 75 virtual ~CFX_Edit_LineRectArray();
(...skipping 589 matching lines...) Expand 10 before | Expand all | Expand 10 after
672 int32_t charset, 665 int32_t charset,
673 int32_t nFontIndex) override; 666 int32_t nFontIndex) override;
674 int32_t GetDefaultFontIndex() override; 667 int32_t GetDefaultFontIndex() override;
675 FX_BOOL IsLatinWord(uint16_t word) override; 668 FX_BOOL IsLatinWord(uint16_t word) override;
676 669
677 private: 670 private:
678 IPVT_FontMap* m_pFontMap; 671 IPVT_FontMap* m_pFontMap;
679 }; 672 };
680 673
681 #endif // FPDFSDK_FXEDIT_INCLUDE_FXET_EDIT_H_ 674 #endif // FPDFSDK_FXEDIT_INCLUDE_FXET_EDIT_H_
OLDNEW
« no previous file with comments | « fpdfsdk/fxedit/fxet_list.cpp ('k') | fpdfsdk/pdfwindow/PWL_ComboBox.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698