diff options
Diffstat (limited to 'xfa/fde/cfde_txtedtparag.h')
-rw-r--r-- | xfa/fde/cfde_txtedtparag.h | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/xfa/fde/cfde_txtedtparag.h b/xfa/fde/cfde_txtedtparag.h new file mode 100644 index 0000000000..74eaaff088 --- /dev/null +++ b/xfa/fde/cfde_txtedtparag.h @@ -0,0 +1,43 @@ +// 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 <stdint.h> + +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; + void* m_lpData; + CFDE_TxtEdtEngine* m_pEngine; +}; + +#endif // XFA_FDE_CFDE_TXTEDTPARAG_H_ |