Do some IWYU cleanups.
[pdfium.git] / core / src / fxcrt / fx_arabic.h
1 // Copyright 2014 PDFium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
6
7 #ifndef CORE_SRC_FXCRT_FX_ARABIC_H_
8 #define CORE_SRC_FXCRT_FX_ARABIC_H_
9
10 #include "../../include/fxcrt/fx_arb.h"
11
12 class CFX_BidiChar final : public IFX_BidiChar
13 {
14 public:
15     CFX_BidiChar();
16     virtual void                Release() override
17     {
18         delete this;
19     }
20     virtual void                SetPolicy(FX_BOOL bSeparateNeutral = TRUE) override
21     {
22         m_bSeparateNeutral = bSeparateNeutral;
23     }
24     virtual FX_BOOL             AppendChar(FX_WCHAR wch) override;
25     virtual FX_BOOL             EndChar() override;
26     virtual int32_t     GetBidiInfo(int32_t &iStart, int32_t &iCount) override;
27     virtual void                Reset() override;
28
29 private:
30     ~CFX_BidiChar() { }
31     FX_BOOL     m_bSeparateNeutral;
32     int32_t     m_iCurStart;
33     int32_t     m_iCurCount;
34     int32_t     m_iCurBidi;
35     int32_t     m_iLastBidi;
36     int32_t     m_iLastStart;
37     int32_t     m_iLastCount;
38 };
39
40 #endif  // CORE_SRC_FXCRT_FX_ARABIC_H_