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

Side by Side Diff: xfa/fwl/basewidget/ifwl_listbox.h

Issue 2029923002: Replace FWL_HLISTITEM with class IFWL_ListItem {} (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: Created 4 years, 6 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 XFA_FWL_BASEWIDGET_IFWL_LISTBOX_H_ 7 #ifndef XFA_FWL_BASEWIDGET_IFWL_LISTBOX_H_
8 #define XFA_FWL_BASEWIDGET_IFWL_LISTBOX_H_ 8 #define XFA_FWL_BASEWIDGET_IFWL_LISTBOX_H_
9 9
10 #include "xfa/fwl/core/ifwl_widget.h" 10 #include "xfa/fwl/core/ifwl_widget.h"
(...skipping 11 matching lines...) Expand all
22 #define FWL_STYLEEXT_LTB_MultiLine (1L << 6) 22 #define FWL_STYLEEXT_LTB_MultiLine (1L << 6)
23 #define FWL_STYLEEXT_LTB_OwnerDraw (1L << 7) 23 #define FWL_STYLEEXT_LTB_OwnerDraw (1L << 7)
24 #define FWL_STYLEEXT_LTB_Icon (1L << 8) 24 #define FWL_STYLEEXT_LTB_Icon (1L << 8)
25 #define FWL_STYLEEXT_LTB_Check (1L << 9) 25 #define FWL_STYLEEXT_LTB_Check (1L << 9)
26 #define FWL_STYLEEXT_LTB_AlignMask (3L << 4) 26 #define FWL_STYLEEXT_LTB_AlignMask (3L << 4)
27 #define FWL_STYLEEXT_LTB_ShowScrollBarFocus (1L << 10) 27 #define FWL_STYLEEXT_LTB_ShowScrollBarFocus (1L << 10)
28 #define FWL_ITEMSTATE_LTB_Selected (1L << 0) 28 #define FWL_ITEMSTATE_LTB_Selected (1L << 0)
29 #define FWL_ITEMSTATE_LTB_Focused (1L << 1) 29 #define FWL_ITEMSTATE_LTB_Focused (1L << 1)
30 #define FWL_ITEMSTATE_LTB_Checked (1L << 2) 30 #define FWL_ITEMSTATE_LTB_Checked (1L << 2)
31 31
32 typedef struct FWL_HLISTITEM_ { void* pData; } * FWL_HLISTITEM;
33
34 class CFX_DIBitmap; 32 class CFX_DIBitmap;
35 33
36 BEGIN_FWL_EVENT_DEF(CFWL_EvtLtbSelChanged, CFWL_EventType::SelectChanged) 34 BEGIN_FWL_EVENT_DEF(CFWL_EvtLtbSelChanged, CFWL_EventType::SelectChanged)
37 CFX_Int32Array iarraySels; 35 CFX_Int32Array iarraySels;
38 END_FWL_EVENT_DEF 36 END_FWL_EVENT_DEF
39 37
40 BEGIN_FWL_EVENT_DEF(CFWL_EvtLtbDrawItem, CFWL_EventType::DrawItem) 38 BEGIN_FWL_EVENT_DEF(CFWL_EvtLtbDrawItem, CFWL_EventType::DrawItem)
41 CFX_Graphics* m_pGraphics; 39 CFX_Graphics* m_pGraphics;
42 CFX_Matrix m_matrix; 40 CFX_Matrix m_matrix;
43 int32_t m_index; 41 int32_t m_index;
44 CFX_RectF m_rect; 42 CFX_RectF m_rect;
45 END_FWL_EVENT_DEF 43 END_FWL_EVENT_DEF
46 44
45 class IFWL_ListItem {};
46
47 class IFWL_ListBoxDP : public IFWL_DataProvider { 47 class IFWL_ListBoxDP : public IFWL_DataProvider {
48 public: 48 public:
49 virtual int32_t CountItems(IFWL_Widget* pWidget) = 0; 49 virtual int32_t CountItems(IFWL_Widget* pWidget) = 0;
50 virtual FWL_HLISTITEM GetItem(IFWL_Widget* pWidget, int32_t nIndex) = 0; 50 virtual IFWL_ListItem* GetItem(IFWL_Widget* pWidget, int32_t nIndex) = 0;
51 virtual int32_t GetItemIndex(IFWL_Widget* pWidget, FWL_HLISTITEM hItem) = 0; 51 virtual int32_t GetItemIndex(IFWL_Widget* pWidget, IFWL_ListItem* hItem) = 0;
52 virtual FX_BOOL SetItemIndex(IFWL_Widget* pWidget, 52 virtual FX_BOOL SetItemIndex(IFWL_Widget* pWidget,
53 FWL_HLISTITEM hItem, 53 IFWL_ListItem* hItem,
54 int32_t nIndex) = 0; 54 int32_t nIndex) = 0;
55 virtual uint32_t GetItemStyles(IFWL_Widget* pWidget, FWL_HLISTITEM hItem) = 0; 55 virtual uint32_t GetItemStyles(IFWL_Widget* pWidget,
56 IFWL_ListItem* hItem) = 0;
56 virtual FWL_Error GetItemText(IFWL_Widget* pWidget, 57 virtual FWL_Error GetItemText(IFWL_Widget* pWidget,
57 FWL_HLISTITEM hItem, 58 IFWL_ListItem* hItem,
58 CFX_WideString& wsText) = 0; 59 CFX_WideString& wsText) = 0;
59 virtual FWL_Error GetItemRect(IFWL_Widget* pWidget, 60 virtual FWL_Error GetItemRect(IFWL_Widget* pWidget,
60 FWL_HLISTITEM hItem, 61 IFWL_ListItem* hItem,
61 CFX_RectF& rtItem) = 0; 62 CFX_RectF& rtItem) = 0;
62 virtual void* GetItemData(IFWL_Widget* pWidget, FWL_HLISTITEM hItem) = 0; 63 virtual void* GetItemData(IFWL_Widget* pWidget, IFWL_ListItem* hItem) = 0;
63 virtual FWL_Error SetItemStyles(IFWL_Widget* pWidget, 64 virtual FWL_Error SetItemStyles(IFWL_Widget* pWidget,
64 FWL_HLISTITEM hItem, 65 IFWL_ListItem* hItem,
65 uint32_t dwStyle) = 0; 66 uint32_t dwStyle) = 0;
66 virtual FWL_Error SetItemText(IFWL_Widget* pWidget, 67 virtual FWL_Error SetItemText(IFWL_Widget* pWidget,
67 FWL_HLISTITEM hItem, 68 IFWL_ListItem* hItem,
68 const FX_WCHAR* pszText) = 0; 69 const FX_WCHAR* pszText) = 0;
69 virtual FWL_Error SetItemRect(IFWL_Widget* pWidget, 70 virtual FWL_Error SetItemRect(IFWL_Widget* pWidget,
70 FWL_HLISTITEM hItem, 71 IFWL_ListItem* hItem,
71 const CFX_RectF& rtItem) = 0; 72 const CFX_RectF& rtItem) = 0;
72 virtual FX_FLOAT GetItemHeight(IFWL_Widget* pWidget) = 0; 73 virtual FX_FLOAT GetItemHeight(IFWL_Widget* pWidget) = 0;
73 virtual CFX_DIBitmap* GetItemIcon(IFWL_Widget* pWidget, 74 virtual CFX_DIBitmap* GetItemIcon(IFWL_Widget* pWidget,
74 FWL_HLISTITEM hItem) = 0; 75 IFWL_ListItem* hItem) = 0;
75 virtual FWL_Error GetItemCheckRect(IFWL_Widget* pWidget, 76 virtual FWL_Error GetItemCheckRect(IFWL_Widget* pWidget,
76 FWL_HLISTITEM hItem, 77 IFWL_ListItem* hItem,
77 CFX_RectF& rtCheck) = 0; 78 CFX_RectF& rtCheck) = 0;
78 virtual FWL_Error SetItemCheckRect(IFWL_Widget* pWidget, 79 virtual FWL_Error SetItemCheckRect(IFWL_Widget* pWidget,
79 FWL_HLISTITEM hItem, 80 IFWL_ListItem* hItem,
80 const CFX_RectF& rtCheck) = 0; 81 const CFX_RectF& rtCheck) = 0;
81 virtual uint32_t GetItemCheckState(IFWL_Widget* pWidget, 82 virtual uint32_t GetItemCheckState(IFWL_Widget* pWidget,
82 FWL_HLISTITEM hItem) = 0; 83 IFWL_ListItem* hItem) = 0;
83 virtual FWL_Error SetItemCheckState(IFWL_Widget* pWidget, 84 virtual FWL_Error SetItemCheckState(IFWL_Widget* pWidget,
84 FWL_HLISTITEM hItem, 85 IFWL_ListItem* hItem,
85 uint32_t dwCheckState) = 0; 86 uint32_t dwCheckState) = 0;
86 }; 87 };
87 88
88 class IFWL_ListBoxCompare { 89 class IFWL_ListBoxCompare {
89 public: 90 public:
90 virtual ~IFWL_ListBoxCompare() {} 91 virtual ~IFWL_ListBoxCompare() {}
91 virtual int32_t Compare(FWL_HLISTITEM hLeft, FWL_HLISTITEM hRight) = 0; 92 virtual int32_t Compare(IFWL_ListItem* hLeft, IFWL_ListItem* hRight) = 0;
92 }; 93 };
93 94
94 class IFWL_ListBox : public IFWL_Widget { 95 class IFWL_ListBox : public IFWL_Widget {
95 public: 96 public:
96 static IFWL_ListBox* Create(const CFWL_WidgetImpProperties& properties, 97 static IFWL_ListBox* Create(const CFWL_WidgetImpProperties& properties,
97 IFWL_Widget* pOuter); 98 IFWL_Widget* pOuter);
98 static IFWL_ListBox* CreateComboList( 99 static IFWL_ListBox* CreateComboList(
99 const CFWL_WidgetImpProperties& properties, 100 const CFWL_WidgetImpProperties& properties,
100 IFWL_Widget* pOuter); 101 IFWL_Widget* pOuter);
101 102
102 int32_t CountSelItems(); 103 int32_t CountSelItems();
103 FWL_HLISTITEM GetSelItem(int32_t nIndexSel); 104 IFWL_ListItem* GetSelItem(int32_t nIndexSel);
104 int32_t GetSelIndex(int32_t nIndex); 105 int32_t GetSelIndex(int32_t nIndex);
105 FWL_Error SetSelItem(FWL_HLISTITEM hItem, FX_BOOL bSelect = TRUE); 106 FWL_Error SetSelItem(IFWL_ListItem* hItem, FX_BOOL bSelect = TRUE);
106 FWL_Error GetItemText(FWL_HLISTITEM hItem, CFX_WideString& wsText); 107 FWL_Error GetItemText(IFWL_ListItem* hItem, CFX_WideString& wsText);
107 FWL_Error GetScrollPos(FX_FLOAT& fPos, FX_BOOL bVert = TRUE); 108 FWL_Error GetScrollPos(FX_FLOAT& fPos, FX_BOOL bVert = TRUE);
108 109
109 protected: 110 protected:
110 IFWL_ListBox(); 111 IFWL_ListBox();
111 }; 112 };
112 113
113 #endif // XFA_FWL_BASEWIDGET_IFWL_LISTBOX_H_ 114 #endif // XFA_FWL_BASEWIDGET_IFWL_LISTBOX_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698