Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(111)

Side by Side Diff: fpdfsdk/include/fxedit/fxet_list.h

Issue 1265503005: clang-format all pdfium code. (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: sigh Created 5 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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_LIST_H_ 7 #ifndef FPDFSDK_INCLUDE_FXEDIT_FXET_LIST_H_
8 #define FPDFSDK_INCLUDE_FXEDIT_FXET_LIST_H_ 8 #define FPDFSDK_INCLUDE_FXEDIT_FXET_LIST_H_
9 9
10 #include "../../../core/include/fpdfapi/fpdf_parser.h" // For CPDF_Point. 10 #include "../../../core/include/fpdfapi/fpdf_parser.h" // For CPDF_Point.
11 #include "fx_edit.h" 11 #include "fx_edit.h"
12 12
13 class IFX_Edit; 13 class IFX_Edit;
14 14
15 class CLST_Size 15 class CLST_Size {
16 { 16 public:
17 public: 17 CLST_Size() : x(0.0f), y(0.0f) {}
18 CLST_Size() : x(0.0f), y(0.0f) 18
19 { 19 CLST_Size(FX_FLOAT other_x, FX_FLOAT other_y) {
20 } 20 x = other_x;
21 21 y = other_y;
22 CLST_Size(FX_FLOAT other_x, FX_FLOAT other_y) 22 }
23 { 23
24 x = other_x; 24 void Default() {
25 y = other_y; 25 x = 0.0f;
26 } 26 y = 0.0f;
27 27 }
28 void Default() 28
29 { 29 FX_BOOL operator!=(const CLST_Size& size) const {
30 x = 0.0f; 30 return FXSYS_memcmp(this, &size, sizeof(CLST_Size)) != 0;
31 y = 0.0f; 31 }
32 } 32
33 33 FX_FLOAT x, y;
34 FX_BOOL operator != (const CLST_Size & size) const 34 };
35 { 35
36 return FXSYS_memcmp(this, &size, sizeof(CLST_Size)) != 0; 36 class CLST_Rect : public CPDF_Rect {
37 } 37 public:
38 38 CLST_Rect() { left = top = right = bottom = 0.0f; }
39 FX_FLOAT x,y; 39
40 }; 40 CLST_Rect(FX_FLOAT other_left,
41 41 FX_FLOAT other_top,
42 class CLST_Rect : public CPDF_Rect 42 FX_FLOAT other_right,
43 { 43 FX_FLOAT other_bottom) {
44 public: 44 left = other_left;
45 CLST_Rect() 45 top = other_top;
46 { 46 right = other_right;
47 left = top = right = bottom = 0.0f; 47 bottom = other_bottom;
48 } 48 }
49 49
50 CLST_Rect(FX_FLOAT other_left, 50 CLST_Rect(const CPDF_Rect& rect) {
51 FX_FLOAT other_top, 51 left = rect.left;
52 FX_FLOAT other_right, 52 top = rect.top;
53 FX_FLOAT other_bottom) 53 right = rect.right;
54 { 54 bottom = rect.bottom;
55 left = other_left; 55 }
56 top = other_top; 56
57 right = other_right; 57 void Default() { left = top = right = bottom = 0.0f; }
58 bottom = other_bottom; 58
59 } 59 const CLST_Rect operator=(const CPDF_Rect& rect) {
60 60 left = rect.left;
61 CLST_Rect(const CPDF_Rect & rect) 61 top = rect.top;
62 { 62 right = rect.right;
63 left = rect.left; 63 bottom = rect.bottom;
64 top = rect.top; 64
65 right = rect.right; 65 return *this;
66 bottom = rect.bottom; 66 }
67 } 67
68 68 FX_BOOL operator==(const CLST_Rect& rect) const {
69 void Default() 69 return FXSYS_memcmp(this, &rect, sizeof(CLST_Rect)) == 0;
70 { 70 }
71 left = top = right = bottom = 0.0f; 71
72 } 72 FX_BOOL operator!=(const CLST_Rect& rect) const {
73 73 return FXSYS_memcmp(this, &rect, sizeof(CLST_Rect)) != 0;
74 const CLST_Rect operator = (const CPDF_Rect & rect) 74 }
75 { 75
76 left = rect.left; 76 FX_FLOAT Width() const { return right - left; }
77 top = rect.top; 77
78 right = rect.right; 78 FX_FLOAT Height() const {
79 bottom = rect.bottom; 79 if (top > bottom)
80 80 return top - bottom;
81 return *this; 81 return bottom - top;
82 } 82 }
83 83
84 FX_BOOL operator == (const CLST_Rect & rect) const 84 CPDF_Point LeftTop() const { return CPDF_Point(left, top); }
85 { 85
86 return FXSYS_memcmp(this, &rect, sizeof(CLST_Rect)) == 0; 86 CPDF_Point RightBottom() const { return CPDF_Point(right, bottom); }
87 } 87
88 88 const CLST_Rect operator+=(const CPDF_Point& point) {
89 FX_BOOL operator != (const CLST_Rect & rect) const 89 left += point.x;
90 { 90 right += point.x;
91 return FXSYS_memcmp(this, &rect, sizeof(CLST_Rect)) != 0; 91 top += point.y;
92 } 92 bottom += point.y;
93 93
94 FX_FLOAT Width() const 94 return *this;
95 { 95 }
96 return right - left; 96
97 } 97 const CLST_Rect operator-=(const CPDF_Point& point) {
98 98 left -= point.x;
99 FX_FLOAT Height() const 99 right -= point.x;
100 { 100 top -= point.y;
101 if (top > bottom) 101 bottom -= point.y;
102 return top - bottom; 102
103 return bottom - top; 103 return *this;
104 } 104 }
105 105
106 CPDF_Point LeftTop() const 106 CLST_Rect operator+(const CPDF_Point& point) const {
107 { 107 return CLST_Rect(left + point.x, top + point.y, right + point.x,
108 return CPDF_Point(left,top); 108 bottom + point.y);
109 } 109 }
110 110
111 CPDF_Point RightBottom() const 111 CLST_Rect operator-(const CPDF_Point& point) const {
112 { 112 return CLST_Rect(left - point.x, top - point.y, right - point.x,
113 return CPDF_Point(right,bottom); 113 bottom - point.y);
114 } 114 }
115 115 };
116 const CLST_Rect operator += (const CPDF_Point & point) 116
117 { 117 class CFX_ListItem {
118 left += point.x; 118 public:
119 right += point.x; 119 CFX_ListItem();
120 top += point.y; 120 virtual ~CFX_ListItem();
121 bottom += point.y; 121
122 122 void SetFontMap(IFX_Edit_FontMap* pFontMap);
123 return *this; 123 IFX_Edit_Iterator* GetIterator() const;
124 } 124 IFX_Edit* GetEdit() const;
125 125
126 const CLST_Rect operator -= (const CPDF_Point & point) 126 public:
127 { 127 void SetRect(const CLST_Rect& rect);
128 left -= point.x; 128 void SetSelect(FX_BOOL bSelected);
129 right -= point.x; 129 void SetCaret(FX_BOOL bCaret);
130 top -= point.y; 130 void SetText(const FX_WCHAR* text);
131 bottom -= point.y; 131 void SetFontSize(FX_FLOAT fFontSize);
132 132 CFX_WideString GetText() const;
133 return *this; 133
134 } 134 CLST_Rect GetRect() const;
135 135 FX_BOOL IsSelected() const;
136 CLST_Rect operator + (const CPDF_Point & point) const 136 FX_BOOL IsCaret() const;
137 { 137 FX_FLOAT GetItemHeight() const;
138 return CLST_Rect(left + point.x, 138 FX_WORD GetFirstChar() const;
139 top + point.y, 139
140 right + point.x, 140 private:
141 bottom + point.y); 141 IFX_Edit* m_pEdit;
142 } 142 FX_BOOL m_bSelected;
143 143 FX_BOOL m_bCaret;
144 CLST_Rect operator - (const CPDF_Point & point) const 144 CLST_Rect m_rcListItem;
145 { 145 };
146 return CLST_Rect(left - point.x, 146
147 top - point.y, 147 class CFX_ListContainer {
148 right - point.x, 148 public:
149 bottom - point.y); 149 CFX_ListContainer()
150 } 150 : m_rcPlate(0.0f, 0.0f, 0.0f, 0.0f),
151 }; 151 m_rcContent(0.0f, 0.0f, 0.0f, 0.0f) {}
152 152 virtual ~CFX_ListContainer() {}
153 class CFX_ListItem 153 virtual void SetPlateRect(const CPDF_Rect& rect) { m_rcPlate = rect; }
154 { 154 CPDF_Rect GetPlateRect() const { return m_rcPlate; }
155 public: 155 void SetContentRect(const CLST_Rect& rect) { m_rcContent = rect; }
156 CFX_ListItem(); 156 CLST_Rect GetContentRect() const { return m_rcContent; }
157 virtual ~CFX_ListItem(); 157 CPDF_Point GetBTPoint() const {
158 158 return CPDF_Point(m_rcPlate.left, m_rcPlate.top);
159 void SetFontMap(IFX_E dit_FontMap * pFontMap); 159 }
160 IFX_Edit_Iterator* GetIterator() const; 160 CPDF_Point GetETPoint() const {
161 IFX_Edit* GetEdit() const; 161 return CPDF_Point(m_rcPlate.right, m_rcPlate.bottom);
162 162 }
163 public: 163
164 void SetRect(const CL ST_Rect & rect); 164 public:
165 void SetSelect(FX_BOO L bSelected); 165 CPDF_Point InnerToOuter(const CPDF_Point& point) const {
166 void SetCaret(FX_BOOL bCaret); 166 return CPDF_Point(point.x + GetBTPoint().x, GetBTPoint().y - point.y);
167 void SetText(const FX _WCHAR* text); 167 }
168 void SetFontSize(FX_F LOAT fFontSize); 168 CPDF_Point OuterToInner(const CPDF_Point& point) const {
169 CFX_WideString GetText() const; 169 return CPDF_Point(point.x - GetBTPoint().x, GetBTPoint().y - point.y);
170 170 }
171 CLST_Rect GetRect() const; 171 CPDF_Rect InnerToOuter(const CLST_Rect& rect) const {
172 FX_BOOL IsSelected() con st; 172 CPDF_Point ptLeftTop = InnerToOuter(CPDF_Point(rect.left, rect.top));
173 FX_BOOL IsCaret() const; 173 CPDF_Point ptRightBottom =
174 FX_FLOAT GetItemHeight() const; 174 InnerToOuter(CPDF_Point(rect.right, rect.bottom));
175 FX_WORD GetFirstChar() c onst; 175 return CPDF_Rect(ptLeftTop.x, ptRightBottom.y, ptRightBottom.x,
176 176 ptLeftTop.y);
177 private: 177 }
178 IFX_Edit* m_pEdit; 178 CLST_Rect OuterToInner(const CPDF_Rect& rect) const {
179 FX_BOOL m_bSelected; 179 CPDF_Point ptLeftTop = OuterToInner(CPDF_Point(rect.left, rect.top));
180 FX_BOOL m_bCaret; 180 CPDF_Point ptRightBottom =
181 CLST_Rect m_rcListItem; 181 OuterToInner(CPDF_Point(rect.right, rect.bottom));
182 }; 182 return CLST_Rect(ptLeftTop.x, ptLeftTop.y, ptRightBottom.x,
183 183 ptRightBottom.y);
184 class CFX_ListContainer 184 }
185 { 185
186 public: 186 private:
187 CFX_ListContainer() : m_rcPlate(0.0f,0.0f,0.0f,0.0f), m_rcContent(0.0f,0 .0f,0.0f,0.0f){} 187 CPDF_Rect m_rcPlate;
188 virtual ~CFX_ListContainer(){} 188 CLST_Rect m_rcContent; // positive forever!
189 virtual void SetPlateRect(const CPDF_ Rect & rect){m_rcPlate = rect;} 189 };
190 CPDF_Rect GetPlateRect() c onst{return m_rcPlate;} 190
191 void SetContentRect(c onst CLST_Rect & rect){m_rcContent = rect;} 191 template <class TYPE>
192 CLST_Rect GetContentRect() const{return m_rcContent;} 192 class CLST_ArrayTemplate : public CFX_ArrayTemplate<TYPE> {
193 CPDF_Point GetBTPoint() con st{return CPDF_Point(m_rcPlate.left,m_rcPlate.top);} 193 public:
194 CPDF_Point GetETPoint() con st{return CPDF_Point(m_rcPlate.right,m_rcPlate.bottom);} 194 FX_BOOL IsEmpty() { return CFX_ArrayTemplate<TYPE>::GetSize() <= 0; }
195 public: 195 TYPE GetAt(int32_t nIndex) const {
196 CPDF_Point InnerToOuter(con st CPDF_Point & point) const{return CPDF_Point(point.x + GetBTPoint().x,GetBTPoi nt().y - point.y);} 196 if (nIndex >= 0 && nIndex < CFX_ArrayTemplate<TYPE>::GetSize())
197 CPDF_Point OuterToInner(con st CPDF_Point & point) const{return CPDF_Point(point.x - GetBTPoint().x,GetBTPoi nt().y - point.y);} 197 return CFX_ArrayTemplate<TYPE>::GetAt(nIndex);
198 CPDF_Rect InnerToOuter(con st CLST_Rect & rect) const{CPDF_Point ptLeftTop = InnerToOuter(CPDF_Point(rect.l eft,rect.top)); 198 return NULL;
199 CPDF_Poi nt ptRightBottom = InnerToOuter(CPDF_Point(rect.right,rect.bottom)); 199 }
200 return C PDF_Rect(ptLeftTop.x,ptRightBottom.y,ptRightBottom.x,ptLeftTop.y);} 200 void RemoveAt(int32_t nIndex) {
201 CLST_Rect OuterToInner(con st CPDF_Rect & rect) const{CPDF_Point ptLeftTop = OuterToInner(CPDF_Point(rect.l eft,rect.top)); 201 if (nIndex >= 0 && nIndex < CFX_ArrayTemplate<TYPE>::GetSize())
202 CPDF_Poi nt ptRightBottom = OuterToInner(CPDF_Point(rect.right,rect.bottom)); 202 CFX_ArrayTemplate<TYPE>::RemoveAt(nIndex);
203 return C LST_Rect(ptLeftTop.x,ptLeftTop.y,ptRightBottom.x,ptRightBottom.y);} 203 }
204 private: 204 };
205 CPDF_Rect m_rcPlate; 205
206 CLST_Rect m_rcContent; //positive forever! 206 class CFX_List : protected CFX_ListContainer, public IFX_List {
207 }; 207 public:
208 208 CFX_List();
209 template<class TYPE> class CLST_ArrayTemplate : public CFX_ArrayTemplate<TYPE> 209 virtual ~CFX_List();
210 { 210
211 public: 211 public:
212 FX_BOOL IsEmpty() { return CFX_ArrayTemplate<TYPE>::GetSize() <= 0; } 212 virtual void SetFontMap(IFX_Edit_FontMap* pFontMap);
213 TYPE GetAt(int32_t nIndex) const { if (nIndex >= 0 && nIndex < CFX_Array Template<TYPE>::GetSize()) return CFX_ArrayTemplate<TYPE>::GetAt(nIndex); return NULL;} 213 virtual void SetFontSize(FX_FLOAT fFontSize);
214 void RemoveAt(int32_t nIndex){if (nIndex >= 0 && nIndex < CFX_ArrayTempl ate<TYPE>::GetSize()) CFX_ArrayTemplate<TYPE>::RemoveAt(nIndex);} 214
215 }; 215 virtual CPDF_Rect GetPlateRect() const;
216 216 virtual CPDF_Rect GetContentRect() const;
217 class CFX_List : protected CFX_ListContainer , public IFX_List 217
218 { 218 virtual FX_FLOAT GetFontSize() const;
219 public: 219 virtual IFX_Edit* GetItemEdit(int32_t nIndex) const;
220 CFX_List(); 220 virtual int32_t GetCount() const;
221 virtual ~CFX_List(); 221 virtual FX_BOOL IsItemSelected(int32_t nIndex) const;
222 222 virtual FX_FLOAT GetFirstHeight() const;
223 public: 223
224 virtual void SetFontMap(IFX_Edit_Font Map * pFontMap); 224 virtual void SetMultipleSel(FX_BOOL bMultiple);
225 virtual void SetFontSize(FX_FLOAT fFo ntSize); 225 virtual FX_BOOL IsMultipleSel() const;
226 226 virtual FX_BOOL IsValid(int32_t nItemIndex) const;
227 virtual CPDF_Rect GetPlateRect() const; 227 virtual int32_t FindNext(int32_t nIndex, FX_WCHAR nChar) const;
228 virtual CPDF_Rect GetContentRect() const; 228
229 229 protected:
230 virtual FX_FLOAT GetFontSize() const; 230 virtual void Empty();
231 virtual IFX_Edit* GetItemEdit(int32_t nInd ex) const; 231
232 virtual int32_t GetCount() const; 232 void AddItem(const FX_WCHAR* str);
233 virtual FX_BOOL IsItemSelected(int32_t n Index) const; 233 virtual void ReArrange(int32_t nItemIndex);
234 virtual FX_FLOAT GetFirstHeight() const; 234
235 235 virtual CPDF_Rect GetItemRect(int32_t nIndex) const;
236 virtual void SetMultipleSel(FX_BOOL b Multiple); 236 CFX_WideString GetItemText(int32_t nIndex) const;
237 virtual FX_BOOL IsMultipleSel() const; 237
238 virtual FX_BOOL IsValid(int32_t nItemInd ex) const; 238 void SetItemSelect(int32_t nItemIndex, FX_BOOL bSelected);
239 virtual int32_t FindNext(int32_t nIndex,FX_WCHAR nChar) const; 239 void SetItemCaret(int32_t nItemIndex, FX_BOOL bCaret);
240 240
241 protected: 241 virtual int32_t GetItemIndex(const CPDF_Point& point) const;
242 virtual void Empty(); 242 int32_t GetFirstSelected() const;
243 243 int32_t GetLastSelected() const;
244 void AddItem(const FX _WCHAR* str); 244 FX_WCHAR Toupper(FX_WCHAR c) const;
245 virtual void ReArrange(int32_t nItemI ndex); 245
246 246 private:
247 virtual CPDF_Rect GetItemRect(int32_t nInd ex) const; 247 CLST_ArrayTemplate<CFX_ListItem*> m_aListItems;
248 CFX_WideString GetItemText(int32_t nInd ex) const; 248 FX_FLOAT m_fFontSize;
249 249 IFX_Edit_FontMap* m_pFontMap;
250 void SetItemSelect(in t32_t nItemIndex, FX_BOOL bSelected); 250 FX_BOOL m_bMultiple;
251 void SetItemCaret(int 32_t nItemIndex, FX_BOOL bCaret); 251 };
252 252
253 virtual int32_t GetItemIndex(const CPDF_Point & point) const; 253 struct CPLST_Select_Item {
254 int32_t GetFirstSelected() const ; 254 CPLST_Select_Item(int32_t other_nItemIndex, int32_t other_nState) {
255 int32_t GetLastSelected() const; 255 nItemIndex = other_nItemIndex;
256 FX_WCHAR Toupper(FX_WCHAR c) const; 256 nState = other_nState;
257 257 }
258 private: 258
259 CLST_ArrayTemplate<CFX_ListItem*> m_aListItems; 259 int32_t nItemIndex;
260 FX_FLOAT m_fFontS ize; 260 int32_t nState; // 0:normal select -1:to deselect 1: to select
261 IFX_Edit_FontMap* m_pFontMap; 261 };
262 FX_BOOL m_bMulti ple; 262
263 }; 263 class CPLST_Select {
264 264 public:
265 struct CPLST_Select_Item 265 CPLST_Select();
266 { 266 virtual ~CPLST_Select();
267 CPLST_Select_Item(int32_t other_nItemIndex, int32_t other_nState) 267
268 { 268 public:
269 nItemIndex = other_nItemIndex; 269 void Add(int32_t nItemIndex);
270 nState = other_nState; 270 void Add(int32_t nBeginIndex, int32_t nEndIndex);
271 } 271 void Sub(int32_t nItemIndex);
272 272 void Sub(int32_t nBeginIndex, int32_t nEndIndex);
273 int32_t nItemIndex; 273 FX_BOOL IsExist(int32_t nItemIndex) const;
274 int32_t nState; //0:normal select -1:to deselect 1: to select 274 int32_t Find(int32_t nItemIndex) const;
275 }; 275 int32_t GetCount() const;
276 276 int32_t GetItemIndex(int32_t nIndex) const;
277 class CPLST_Select 277 int32_t GetState(int32_t nIndex) const;
278 { 278 void Done();
279 public: 279 void DeselectAll();
280 CPLST_Select(); 280
281 virtual ~CPLST_Select(); 281 private:
282 282 CFX_ArrayTemplate<CPLST_Select_Item*> m_aItems;
283 public: 283 };
284 void Add(int32_t nIte mIndex); 284
285 void Add(int32_t nBeg inIndex, int32_t nEndIndex); 285 class CFX_ListCtrl : public CFX_List {
286 void Sub(int32_t nIte mIndex); 286 public:
287 void Sub(int32_t nBeg inIndex, int32_t nEndIndex); 287 CFX_ListCtrl();
288 FX_BOOL IsExist(int32_t nItemIndex) const; 288 virtual ~CFX_ListCtrl();
289 int32_t Find(int32_t nItemIndex) const; 289
290 int32_t GetCount() const; 290 public:
291 int32_t GetItemIndex(int32_t nIn dex) const; 291 void SetNotify(IFX_List_Notify* pNotify);
292 int32_t GetState(int32_t nIndex) const; 292
293 void Done(); 293 void OnMouseDown(const CPDF_Point& point, FX_BOOL bShift, FX_BOOL bCtrl);
294 void DeselectAll(); 294 void OnMouseMove(const CPDF_Point& point, FX_BOOL bShift, FX_BOOL bCtrl);
295 295 void OnVK_UP(FX_BOOL bShift, FX_BOOL bCtrl);
296 private: 296 void OnVK_DOWN(FX_BOOL bShift, FX_BOOL bCtrl);
297 CFX_ArrayTemplate<CPLST_Select_Item*> m_aItems; 297 void OnVK_LEFT(FX_BOOL bShift, FX_BOOL bCtrl);
298 }; 298 void OnVK_RIGHT(FX_BOOL bShift, FX_BOOL bCtrl);
299 299 void OnVK_HOME(FX_BOOL bShift, FX_BOOL bCtrl);
300 class CFX_ListCtrl : public CFX_List 300 void OnVK_END(FX_BOOL bShift, FX_BOOL bCtrl);
301 { 301 void OnVK(int32_t nItemIndex, FX_BOOL bShift, FX_BOOL bCtrl);
302 public: 302 FX_BOOL OnChar(FX_WORD nChar, FX_BOOL bShift, FX_BOOL bCtrl);
303 CFX_ListCtrl(); 303
304 virtual ~CFX_ListCtrl(); 304 virtual CPDF_Point InToOut(const CPDF_Point& point) const;
305 305 virtual CPDF_Point OutToIn(const CPDF_Point& point) const;
306 public: 306 virtual CPDF_Rect InToOut(const CPDF_Rect& rect) const;
307 void SetNotify(IFX_Li st_Notify * pNotify); 307 virtual CPDF_Rect OutToIn(const CPDF_Rect& rect) const;
308 308
309 void OnMouseDown(cons t CPDF_Point & point,FX_BOOL bShift,FX_BOOL bCtrl); 309 virtual void SetPlateRect(const CPDF_Rect& rect);
310 void OnMouseMove(cons t CPDF_Point & point,FX_BOOL bShift,FX_BOOL bCtrl); 310 void SetScrollPos(const CPDF_Point& point);
311 void OnVK_UP(FX_BOOL bShift,FX_BOOL bCtrl); 311 void ScrollToListItem(int32_t nItemIndex);
312 void OnVK_DOWN(FX_BOO L bShift,FX_BOOL bCtrl); 312 virtual CPDF_Rect GetItemRect(int32_t nIndex) const;
313 void OnVK_LEFT(FX_BOO L bShift,FX_BOOL bCtrl); 313 int32_t GetCaret() const { return m_nCaretIndex; }
314 void OnVK_RIGHT(FX_BO OL bShift,FX_BOOL bCtrl); 314 int32_t GetSelect() const { return m_nSelItem; }
315 void OnVK_HOME(FX_BOO L bShift,FX_BOOL bCtrl); 315 int32_t GetTopItem() const;
316 void OnVK_END(FX_BOOL bShift,FX_BOOL bCtrl); 316 virtual CPDF_Rect GetContentRect() const;
317 void OnVK(int32_t nIt emIndex,FX_BOOL bShift,FX_BOOL bCtrl); 317 virtual int32_t GetItemIndex(const CPDF_Point& point) const;
318 FX_BOOL OnChar(FX_WORD n Char,FX_BOOL bShift,FX_BOOL bCtrl); 318
319 319 void AddString(const FX_WCHAR* string);
320 virtual CPDF_Point InToOut(const CPDF_Point & point) const; 320 void SetTopItem(int32_t nIndex);
321 virtual CPDF_Point OutToIn(const CPDF_Point & point) const; 321 void Select(int32_t nItemIndex);
322 virtual CPDF_Rect InToOut(const CPDF_Rect & rect) const; 322 virtual void SetCaret(int32_t nItemIndex);
323 virtual CPDF_Rect OutToIn(const CPDF_Rect & rect) const; 323 virtual void Empty();
324 324 virtual void Cancel();
325 virtual void SetPlateRect(const CPDF_ Rect & rect); 325 CFX_WideString GetText() const;
326 void SetScrollPos(con st CPDF_Point & point); 326
327 void ScrollToListItem (int32_t nItemIndex); 327 private:
328 virtual CPDF_Rect GetItemRect(int32_t nInd ex) const; 328 void SetMultipleSelect(int32_t nItemIndex, FX_BOOL bSelected);
329 int32_t GetCaret() const {return m_nCaretIndex;} 329 void SetSingleSelect(int32_t nItemIndex);
330 int32_t GetSelect() const {retur n m_nSelItem;} 330 void InvalidateItem(int32_t nItemIndex);
331 int32_t GetTopItem() const; 331 void SelectItems();
332 virtual CPDF_Rect GetContentRect() const; 332 FX_BOOL IsItemVisible(int32_t nItemIndex) const;
333 virtual int32_t GetItemIndex(const CPDF_Point & point) const; 333 void SetScrollInfo();
334 334 void SetScrollPosY(FX_FLOAT fy);
335 void AddString(const FX_WCHAR* string); 335 virtual void ReArrange(int32_t nItemIndex);
336 void SetTopItem(int32 _t nIndex); 336
337 void Select(int32_t n ItemIndex); 337 private:
338 virtual void SetCaret(int32_t nItemIn dex); 338 IFX_List_Notify* m_pNotify;
339 virtual void Empty(); 339 FX_BOOL m_bNotifyFlag;
340 virtual void Cancel(); 340 CPDF_Point m_ptScrollPos;
341 CFX_WideString GetText() const; 341 CPLST_Select m_aSelItems; // for multiple
342 342 int32_t m_nSelItem; // for single
343 private: 343 int32_t m_nFootIndex; // for multiple
344 void SetMultipleSelec t(int32_t nItemIndex, FX_BOOL bSelected); 344 FX_BOOL m_bCtrlSel; // for multiple
345 void SetSingleSelect( int32_t nItemIndex); 345 int32_t m_nCaretIndex; // for multiple
346 void InvalidateItem(i nt32_t nItemIndex);
347 void SelectItems();
348 FX_BOOL IsItemVisible(in t32_t nItemIndex) const;
349 void SetScrollInfo();
350 void SetScrollPosY(FX _FLOAT fy);
351 virtual void ReArrange(int32_t nItemI ndex);
352
353 private:
354 IFX_List_Notify* m_pNotify;
355 FX_BOOL m_bNotifyFlag;
356 CPDF_Point m_ptScrollPos;
357 CPLST_Select m_aSelItems; //for mu ltiple
358 int32_t m_nSelItem; //for single
359 int32_t m_nFootIndex; //for mu ltiple
360 FX_BOOL m_bCtrlSel; //for multiple
361 int32_t m_nCaretIndex; //for mu ltiple
362 }; 346 };
363 347
364 #endif // FPDFSDK_INCLUDE_FXEDIT_FXET_LIST_H_ 348 #endif // FPDFSDK_INCLUDE_FXEDIT_FXET_LIST_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698