// Copyright 2014 PDFium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com #ifndef XFA_FDE_CFDE_TXTEDTPARAG_H_ #define XFA_FDE_CFDE_TXTEDTPARAG_H_ #include class CFDE_TxtEdtEngine; class CFDE_TxtEdtParag { public: explicit CFDE_TxtEdtParag(CFDE_TxtEdtEngine* pEngine); ~CFDE_TxtEdtParag(); int32_t GetTextLength() const { return m_nCharCount; } int32_t GetStartIndex() const { return m_nCharStart; } int32_t GetLineCount() const { return m_nLineCount; } void SetTextLength(int32_t len) { m_nCharCount = len; } void IncrementTextLength(int32_t len) { m_nCharCount += len; } void SetStartIndex(int32_t idx) { m_nCharStart = idx; } void IncrementStartIndex(int32_t val) { m_nCharStart += val; } void DecrementStartIndex(int32_t val) { m_nCharStart -= val; } void SetLineCount(int32_t count) { m_nLineCount = count; } void GetLineRange(int32_t nLineIndex, int32_t& nStart, int32_t& nCount) const; void LoadParag(); void UnloadParag(); void CalcLines(); private: int32_t m_nCharStart; int32_t m_nCharCount; int32_t m_nLineCount; int32_t* m_lpData; CFDE_TxtEdtEngine* m_pEngine; }; #endif // XFA_FDE_CFDE_TXTEDTPARAG_H_