| OLD | NEW | 
|---|
| 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_INCLUDE_FXEDIT_FXET_EDIT_H_ | 7 #ifndef FPDFSDK_INCLUDE_FXEDIT_FXET_EDIT_H_ | 
| 8 #define FPDFSDK_INCLUDE_FXEDIT_FXET_EDIT_H_ | 8 #define FPDFSDK_INCLUDE_FXEDIT_FXET_EDIT_H_ | 
| 9 | 9 | 
| 10 #include "../../../core/include/fpdfdoc/fpdf_vt.h" | 10 #include "../../../core/include/fpdfdoc/fpdf_vt.h" | 
| (...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 108 | 108 | 
| 109   void operator=(CFX_Edit_LineRectArray& rects) { | 109   void operator=(CFX_Edit_LineRectArray& rects) { | 
| 110     Empty(); | 110     Empty(); | 
| 111     for (int32_t i = 0, sz = rects.GetSize(); i < sz; i++) | 111     for (int32_t i = 0, sz = rects.GetSize(); i < sz; i++) | 
| 112       m_LineRects.Add(rects.GetAt(i)); | 112       m_LineRects.Add(rects.GetAt(i)); | 
| 113 | 113 | 
| 114     rects.RemoveAll(); | 114     rects.RemoveAll(); | 
| 115   } | 115   } | 
| 116 | 116 | 
| 117   void Add(const CPVT_WordRange& wrLine, const CPDF_Rect& rcLine) { | 117   void Add(const CPVT_WordRange& wrLine, const CPDF_Rect& rcLine) { | 
| 118     if (CFX_Edit_LineRect* pRect = new CFX_Edit_LineRect(wrLine, rcLine)) | 118     m_LineRects.Add(new CFX_Edit_LineRect(wrLine, rcLine)); | 
| 119       m_LineRects.Add(pRect); |  | 
| 120   } | 119   } | 
| 121 | 120 | 
| 122   int32_t GetSize() const { return m_LineRects.GetSize(); } | 121   int32_t GetSize() const { return m_LineRects.GetSize(); } | 
| 123 | 122 | 
| 124   CFX_Edit_LineRect* GetAt(int32_t nIndex) const { | 123   CFX_Edit_LineRect* GetAt(int32_t nIndex) const { | 
| 125     if (nIndex < 0 || nIndex >= m_LineRects.GetSize()) | 124     if (nIndex < 0 || nIndex >= m_LineRects.GetSize()) | 
| 126       return NULL; | 125       return NULL; | 
| 127 | 126 | 
| 128     return m_LineRects.GetAt(nIndex); | 127     return m_LineRects.GetAt(nIndex); | 
| 129   } | 128   } | 
| 130 | 129 | 
| 131   CFX_ArrayTemplate<CFX_Edit_LineRect*> m_LineRects; | 130   CFX_ArrayTemplate<CFX_Edit_LineRect*> m_LineRects; | 
| 132 }; | 131 }; | 
| 133 | 132 | 
| 134 class CFX_Edit_RectArray { | 133 class CFX_Edit_RectArray { | 
| 135  public: | 134  public: | 
| 136   CFX_Edit_RectArray() {} | 135   CFX_Edit_RectArray() {} | 
| 137 | 136 | 
| 138   virtual ~CFX_Edit_RectArray() { Empty(); } | 137   virtual ~CFX_Edit_RectArray() { Empty(); } | 
| 139 | 138 | 
| 140   void Empty() { | 139   void Empty() { | 
| 141     for (int32_t i = 0, sz = m_Rects.GetSize(); i < sz; i++) | 140     for (int32_t i = 0, sz = m_Rects.GetSize(); i < sz; i++) | 
| 142       delete m_Rects.GetAt(i); | 141       delete m_Rects.GetAt(i); | 
| 143 | 142 | 
| 144     m_Rects.RemoveAll(); | 143     m_Rects.RemoveAll(); | 
| 145   } | 144   } | 
| 146 | 145 | 
| 147   void Add(const CPDF_Rect& rect) { | 146   void Add(const CPDF_Rect& rect) { | 
| 148     // check for overlaped area | 147     // check for overlapped area | 
| 149     for (int32_t i = 0, sz = m_Rects.GetSize(); i < sz; i++) | 148     for (int32_t i = 0, sz = m_Rects.GetSize(); i < sz; i++) { | 
| 150       if (CPDF_Rect* pRect = m_Rects.GetAt(i)) | 149       CPDF_Rect* pRect = m_Rects.GetAt(i); | 
| 151         if (pRect->Contains(rect)) | 150       if (pRect && pRect->Contains(rect)) | 
| 152           return; | 151         return; | 
|  | 152     } | 
| 153 | 153 | 
| 154     if (CPDF_Rect* pNewRect = new CPDF_Rect(rect)) | 154     m_Rects.Add(new CPDF_Rect(rect)); | 
| 155       m_Rects.Add(pNewRect); |  | 
| 156   } | 155   } | 
| 157 | 156 | 
| 158   int32_t GetSize() const { return m_Rects.GetSize(); } | 157   int32_t GetSize() const { return m_Rects.GetSize(); } | 
| 159 | 158 | 
| 160   CPDF_Rect* GetAt(int32_t nIndex) const { | 159   CPDF_Rect* GetAt(int32_t nIndex) const { | 
| 161     if (nIndex < 0 || nIndex >= m_Rects.GetSize()) | 160     if (nIndex < 0 || nIndex >= m_Rects.GetSize()) | 
| 162       return NULL; | 161       return NULL; | 
| 163 | 162 | 
| 164     return m_Rects.GetAt(nIndex); | 163     return m_Rects.GetAt(nIndex); | 
| 165   } | 164   } | 
| (...skipping 648 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 814   int32_t GetTypeDescent(int32_t nFontIndex); | 813   int32_t GetTypeDescent(int32_t nFontIndex); | 
| 815   int32_t GetWordFontIndex(FX_WORD word, int32_t charset, int32_t nFontIndex); | 814   int32_t GetWordFontIndex(FX_WORD word, int32_t charset, int32_t nFontIndex); | 
| 816   int32_t GetDefaultFontIndex(); | 815   int32_t GetDefaultFontIndex(); | 
| 817   FX_BOOL IsLatinWord(FX_WORD word); | 816   FX_BOOL IsLatinWord(FX_WORD word); | 
| 818 | 817 | 
| 819  private: | 818  private: | 
| 820   IFX_Edit_FontMap* m_pFontMap; | 819   IFX_Edit_FontMap* m_pFontMap; | 
| 821 }; | 820 }; | 
| 822 | 821 | 
| 823 #endif  // FPDFSDK_INCLUDE_FXEDIT_FXET_EDIT_H_ | 822 #endif  // FPDFSDK_INCLUDE_FXEDIT_FXET_EDIT_H_ | 
| OLD | NEW | 
|---|