Index: fpdfsdk/fxedit/include/fxet_edit.h |
diff --git a/fpdfsdk/fxedit/include/fxet_edit.h b/fpdfsdk/fxedit/include/fxet_edit.h |
index 71431de90a4fe0faf142648baf947063c428cbab..aab26556b8b8dc0561fb2c849acbe2bfabad99dd 100644 |
--- a/fpdfsdk/fxedit/include/fxet_edit.h |
+++ b/fpdfsdk/fxedit/include/fxet_edit.h |
@@ -73,76 +73,33 @@ struct CFX_Edit_LineRect { |
class CFX_Edit_LineRectArray { |
public: |
- CFX_Edit_LineRectArray() {} |
+ CFX_Edit_LineRectArray(); |
+ virtual ~CFX_Edit_LineRectArray(); |
- virtual ~CFX_Edit_LineRectArray() { Empty(); } |
+ void Empty(); |
+ void RemoveAll(); |
+ void operator=(CFX_Edit_LineRectArray& rects); |
+ void Add(const CPVT_WordRange& wrLine, const CFX_FloatRect& rcLine); |
- void Empty() { |
- for (int32_t i = 0, sz = m_LineRects.GetSize(); i < sz; i++) |
- delete m_LineRects.GetAt(i); |
- |
- m_LineRects.RemoveAll(); |
- } |
- |
- void RemoveAll() { m_LineRects.RemoveAll(); } |
- |
- void operator=(CFX_Edit_LineRectArray& rects) { |
- Empty(); |
- for (int32_t i = 0, sz = rects.GetSize(); i < sz; i++) |
- m_LineRects.Add(rects.GetAt(i)); |
- |
- rects.RemoveAll(); |
- } |
- |
- void Add(const CPVT_WordRange& wrLine, const CFX_FloatRect& rcLine) { |
- m_LineRects.Add(new CFX_Edit_LineRect(wrLine, rcLine)); |
- } |
- |
- int32_t GetSize() const { return m_LineRects.GetSize(); } |
- |
- CFX_Edit_LineRect* GetAt(int32_t nIndex) const { |
- if (nIndex < 0 || nIndex >= m_LineRects.GetSize()) |
- return nullptr; |
- |
- return m_LineRects.GetAt(nIndex); |
- } |
+ int32_t GetSize() const; |
+ CFX_Edit_LineRect* GetAt(int32_t nIndex) const; |
+ private: |
CFX_ArrayTemplate<CFX_Edit_LineRect*> m_LineRects; |
}; |
class CFX_Edit_RectArray { |
public: |
- CFX_Edit_RectArray() {} |
- |
- virtual ~CFX_Edit_RectArray() { Empty(); } |
- |
- void Empty() { |
- for (int32_t i = 0, sz = m_Rects.GetSize(); i < sz; i++) |
- delete m_Rects.GetAt(i); |
+ CFX_Edit_RectArray(); |
+ virtual ~CFX_Edit_RectArray(); |
- m_Rects.RemoveAll(); |
- } |
- |
- void Add(const CFX_FloatRect& rect) { |
- // check for overlapped area |
- for (int32_t i = 0, sz = m_Rects.GetSize(); i < sz; i++) { |
- CFX_FloatRect* pRect = m_Rects.GetAt(i); |
- if (pRect && pRect->Contains(rect)) |
- return; |
- } |
- |
- m_Rects.Add(new CFX_FloatRect(rect)); |
- } |
+ void Empty(); |
+ void Add(const CFX_FloatRect& rect); |
- int32_t GetSize() const { return m_Rects.GetSize(); } |
- |
- CFX_FloatRect* GetAt(int32_t nIndex) const { |
- if (nIndex < 0 || nIndex >= m_Rects.GetSize()) |
- return nullptr; |
- |
- return m_Rects.GetAt(nIndex); |
- } |
+ int32_t GetSize() const; |
+ CFX_FloatRect* GetAt(int32_t nIndex) const; |
+ private: |
CFX_ArrayTemplate<CFX_FloatRect*> m_Rects; |
}; |
@@ -167,39 +124,18 @@ class CFX_Edit_Refresh { |
class CFX_Edit_Select { |
public: |
- CFX_Edit_Select() {} |
- |
- CFX_Edit_Select(const CPVT_WordPlace& begin, const CPVT_WordPlace& end) { |
- Set(begin, end); |
- } |
- |
- explicit CFX_Edit_Select(const CPVT_WordRange& range) { |
- Set(range.BeginPos, range.EndPos); |
- } |
- |
- CPVT_WordRange ConvertToWordRange() const { |
- return CPVT_WordRange(BeginPos, EndPos); |
- } |
- |
- void Default() { |
- BeginPos.Default(); |
- EndPos.Default(); |
- } |
- |
- void Set(const CPVT_WordPlace& begin, const CPVT_WordPlace& end) { |
- BeginPos = begin; |
- EndPos = end; |
- } |
+ CFX_Edit_Select(); |
+ CFX_Edit_Select(const CPVT_WordPlace& begin, const CPVT_WordPlace& end); |
+ explicit CFX_Edit_Select(const CPVT_WordRange& range); |
- void SetBeginPos(const CPVT_WordPlace& begin) { BeginPos = begin; } |
+ void Default(); |
+ void Set(const CPVT_WordPlace& begin, const CPVT_WordPlace& end); |
+ void SetBeginPos(const CPVT_WordPlace& begin); |
+ void SetEndPos(const CPVT_WordPlace& end); |
- void SetEndPos(const CPVT_WordPlace& end) { EndPos = end; } |
- |
- FX_BOOL IsExist() const { return BeginPos != EndPos; } |
- |
- FX_BOOL operator!=(const CPVT_WordRange& wr) const { |
- return wr.BeginPos != BeginPos || wr.EndPos != EndPos; |
- } |
+ CPVT_WordRange ConvertToWordRange() const; |
+ FX_BOOL IsExist() const; |
+ FX_BOOL operator!=(const CPVT_WordRange& wr) const; |
CPVT_WordPlace BeginPos, EndPos; |
}; |
@@ -244,15 +180,15 @@ class CFX_Edit_Undo { |
class CFX_Edit_UndoItem : public IFX_Edit_UndoItem { |
public: |
- CFX_Edit_UndoItem() : m_bFirst(TRUE), m_bLast(TRUE) {} |
- ~CFX_Edit_UndoItem() override {} |
+ CFX_Edit_UndoItem(); |
+ ~CFX_Edit_UndoItem() override; |
- CFX_WideString GetUndoTitle() override { return L""; } |
+ CFX_WideString GetUndoTitle() override; |
- void SetFirst(FX_BOOL bFirst) { m_bFirst = bFirst; } |
- FX_BOOL IsFirst() { return m_bFirst; } |
- void SetLast(FX_BOOL bLast) { m_bLast = bLast; } |
- FX_BOOL IsLast() { return m_bLast; } |
+ void SetFirst(FX_BOOL bFirst); |
+ FX_BOOL IsFirst(); |
+ void SetLast(FX_BOOL bLast); |
+ FX_BOOL IsLast(); |
private: |
FX_BOOL m_bFirst; |
@@ -264,6 +200,7 @@ class CFX_Edit_GroupUndoItem : public IFX_Edit_UndoItem { |
explicit CFX_Edit_GroupUndoItem(const CFX_WideString& sTitle); |
~CFX_Edit_GroupUndoItem() override; |
+ // IFX_Edit_UndoItem |
void Undo() override; |
void Redo() override; |
CFX_WideString GetUndoTitle() override; |