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 XFA_FWL_CORE_CFWL_EDIT_H_ | 7 #ifndef XFA_FWL_CFWL_EDIT_H_ |
8 #define XFA_FWL_CORE_CFWL_EDIT_H_ | 8 #define XFA_FWL_CFWL_EDIT_H_ |
9 | 9 |
10 #include <deque> | 10 #include <deque> |
11 #include <memory> | 11 #include <memory> |
12 #include <vector> | 12 #include <vector> |
13 | 13 |
14 #include "xfa/fde/cfde_txtedtengine.h" | 14 #include "xfa/fde/cfde_txtedtengine.h" |
15 #include "xfa/fde/ifde_txtedtdorecord.h" | 15 #include "xfa/fde/ifde_txtedtdorecord.h" |
16 #include "xfa/fwl/core/cfwl_event.h" | 16 #include "xfa/fwl/cfwl_event.h" |
17 #include "xfa/fwl/core/cfwl_scrollbar.h" | 17 #include "xfa/fwl/cfwl_scrollbar.h" |
18 #include "xfa/fwl/core/cfwl_widget.h" | 18 #include "xfa/fwl/cfwl_widget.h" |
19 #include "xfa/fxgraphics/cfx_path.h" | 19 #include "xfa/fxgraphics/cfx_path.h" |
20 | 20 |
21 #define FWL_STYLEEXT_EDT_ReadOnly (1L << 0) | 21 #define FWL_STYLEEXT_EDT_ReadOnly (1L << 0) |
22 #define FWL_STYLEEXT_EDT_MultiLine (1L << 1) | 22 #define FWL_STYLEEXT_EDT_MultiLine (1L << 1) |
23 #define FWL_STYLEEXT_EDT_WantReturn (1L << 2) | 23 #define FWL_STYLEEXT_EDT_WantReturn (1L << 2) |
24 #define FWL_STYLEEXT_EDT_NoHideSel (1L << 3) | 24 #define FWL_STYLEEXT_EDT_NoHideSel (1L << 3) |
25 #define FWL_STYLEEXT_EDT_AutoHScroll (1L << 4) | 25 #define FWL_STYLEEXT_EDT_AutoHScroll (1L << 4) |
26 #define FWL_STYLEEXT_EDT_AutoVScroll (1L << 5) | 26 #define FWL_STYLEEXT_EDT_AutoVScroll (1L << 5) |
27 #define FWL_STYLEEXT_EDT_NoRedoUndo (1L << 6) | 27 #define FWL_STYLEEXT_EDT_NoRedoUndo (1L << 6) |
28 #define FWL_STYLEEXT_EDT_Validate (1L << 7) | 28 #define FWL_STYLEEXT_EDT_Validate (1L << 7) |
(...skipping 16 matching lines...) Expand all Loading... |
45 #define FWL_STYLEEXT_EDT_HAlignMask (3L << 18) | 45 #define FWL_STYLEEXT_EDT_HAlignMask (3L << 18) |
46 #define FWL_STYLEEXT_EDT_VAlignMask (3L << 20) | 46 #define FWL_STYLEEXT_EDT_VAlignMask (3L << 20) |
47 #define FWL_STYLEEXT_EDT_HAlignModeMask (3L << 22) | 47 #define FWL_STYLEEXT_EDT_HAlignModeMask (3L << 22) |
48 #define FWL_STYLEEXT_EDT_InnerCaret (1L << 24) | 48 #define FWL_STYLEEXT_EDT_InnerCaret (1L << 24) |
49 #define FWL_STYLEEXT_EDT_ShowScrollbarFocus (1L << 25) | 49 #define FWL_STYLEEXT_EDT_ShowScrollbarFocus (1L << 25) |
50 #define FWL_STYLEEXT_EDT_OuterScrollbar (1L << 26) | 50 #define FWL_STYLEEXT_EDT_OuterScrollbar (1L << 26) |
51 #define FWL_STYLEEXT_EDT_LastLineHeight (1L << 27) | 51 #define FWL_STYLEEXT_EDT_LastLineHeight (1L << 27) |
52 | 52 |
53 class IFDE_TxtEdtDoRecord; | 53 class IFDE_TxtEdtDoRecord; |
54 class CFWL_Edit; | 54 class CFWL_Edit; |
55 class CFWL_MsgMouse; | 55 class CFWL_MessageMouse; |
56 class CFWL_WidgetProperties; | 56 class CFWL_WidgetProperties; |
57 class CFWL_Caret; | 57 class CFWL_Caret; |
58 | 58 |
59 class CFWL_Edit : public CFWL_Widget { | 59 class CFWL_Edit : public CFWL_Widget { |
60 public: | 60 public: |
61 CFWL_Edit(const CFWL_App* app, | 61 CFWL_Edit(const CFWL_App* app, |
62 std::unique_ptr<CFWL_WidgetProperties> properties, | 62 std::unique_ptr<CFWL_WidgetProperties> properties, |
63 CFWL_Widget* pOuter); | 63 CFWL_Widget* pOuter); |
64 ~CFWL_Edit() override; | 64 ~CFWL_Edit() override; |
65 | 65 |
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
146 bool IsShowScrollBar(bool bVert); | 146 bool IsShowScrollBar(bool bVert); |
147 bool IsContentHeightOverflow(); | 147 bool IsContentHeightOverflow(); |
148 int32_t AddDoRecord(std::unique_ptr<IFDE_TxtEdtDoRecord> pRecord); | 148 int32_t AddDoRecord(std::unique_ptr<IFDE_TxtEdtDoRecord> pRecord); |
149 void ProcessInsertError(int32_t iError); | 149 void ProcessInsertError(int32_t iError); |
150 void AddSpellCheckObj(CFX_Path& PathData, | 150 void AddSpellCheckObj(CFX_Path& PathData, |
151 int32_t nStart, | 151 int32_t nStart, |
152 int32_t nCount, | 152 int32_t nCount, |
153 FX_FLOAT fOffSetX, | 153 FX_FLOAT fOffSetX, |
154 FX_FLOAT fOffSetY); | 154 FX_FLOAT fOffSetY); |
155 | 155 |
156 void DoButtonDown(CFWL_MsgMouse* pMsg); | 156 void DoButtonDown(CFWL_MessageMouse* pMsg); |
157 void OnFocusChanged(CFWL_Message* pMsg, bool bSet); | 157 void OnFocusChanged(CFWL_Message* pMsg, bool bSet); |
158 void OnLButtonDown(CFWL_MsgMouse* pMsg); | 158 void OnLButtonDown(CFWL_MessageMouse* pMsg); |
159 void OnLButtonUp(CFWL_MsgMouse* pMsg); | 159 void OnLButtonUp(CFWL_MessageMouse* pMsg); |
160 void OnButtonDblClk(CFWL_MsgMouse* pMsg); | 160 void OnButtonDblClk(CFWL_MessageMouse* pMsg); |
161 void OnMouseMove(CFWL_MsgMouse* pMsg); | 161 void OnMouseMove(CFWL_MessageMouse* pMsg); |
162 void OnKeyDown(CFWL_MsgKey* pMsg); | 162 void OnKeyDown(CFWL_MessageKey* pMsg); |
163 void OnChar(CFWL_MsgKey* pMsg); | 163 void OnChar(CFWL_MessageKey* pMsg); |
164 bool OnScroll(CFWL_ScrollBar* pScrollBar, | 164 bool OnScroll(CFWL_ScrollBar* pScrollBar, |
165 CFWL_EvtScroll::Code dwCode, | 165 CFWL_EventScroll::Code dwCode, |
166 FX_FLOAT fPos); | 166 FX_FLOAT fPos); |
167 | 167 |
168 CFX_RectF m_rtClient; | 168 CFX_RectF m_rtClient; |
169 CFX_RectF m_rtEngine; | 169 CFX_RectF m_rtEngine; |
170 CFX_RectF m_rtStatic; | 170 CFX_RectF m_rtStatic; |
171 FX_FLOAT m_fVAlignOffset; | 171 FX_FLOAT m_fVAlignOffset; |
172 FX_FLOAT m_fScrollOffsetX; | 172 FX_FLOAT m_fScrollOffsetX; |
173 FX_FLOAT m_fScrollOffsetY; | 173 FX_FLOAT m_fScrollOffsetY; |
174 CFDE_TxtEdtEngine m_EdtEngine; | 174 CFDE_TxtEdtEngine m_EdtEngine; |
175 bool m_bLButtonDown; | 175 bool m_bLButtonDown; |
176 int32_t m_nSelStart; | 176 int32_t m_nSelStart; |
177 int32_t m_nLimit; | 177 int32_t m_nLimit; |
178 FX_FLOAT m_fFontSize; | 178 FX_FLOAT m_fFontSize; |
179 bool m_bSetRange; | 179 bool m_bSetRange; |
180 int32_t m_iMax; | 180 int32_t m_iMax; |
181 std::unique_ptr<CFWL_ScrollBar> m_pVertScrollBar; | 181 std::unique_ptr<CFWL_ScrollBar> m_pVertScrollBar; |
182 std::unique_ptr<CFWL_ScrollBar> m_pHorzScrollBar; | 182 std::unique_ptr<CFWL_ScrollBar> m_pHorzScrollBar; |
183 std::unique_ptr<CFWL_Caret> m_pCaret; | 183 std::unique_ptr<CFWL_Caret> m_pCaret; |
184 CFX_WideString m_wsCache; | 184 CFX_WideString m_wsCache; |
185 CFX_WideString m_wsFont; | 185 CFX_WideString m_wsFont; |
186 std::deque<std::unique_ptr<IFDE_TxtEdtDoRecord>> m_DoRecords; | 186 std::deque<std::unique_ptr<IFDE_TxtEdtDoRecord>> m_DoRecords; |
187 int32_t m_iCurRecord; | 187 int32_t m_iCurRecord; |
188 int32_t m_iMaxRecord; | 188 int32_t m_iMaxRecord; |
189 }; | 189 }; |
190 | 190 |
191 #endif // XFA_FWL_CORE_CFWL_EDIT_H_ | 191 #endif // XFA_FWL_CFWL_EDIT_H_ |
OLD | NEW |