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

Side by Side Diff: xfa/fwl/core/cfwl_combobox.cpp

Issue 2494743002: IFWL cleanup in the Combo classes (Closed)
Patch Set: Rebase to master Created 4 years, 1 month 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 #include "xfa/fwl/core/cfwl_combobox.h" 7 #include "xfa/fwl/core/cfwl_combobox.h"
8 8
9 #include <utility> 9 #include <utility>
10 10
(...skipping 28 matching lines...) Expand all
39 } 39 }
40 40
41 int32_t CFWL_ComboBox::AddString(const CFX_WideStringC& wsText) { 41 int32_t CFWL_ComboBox::AddString(const CFX_WideStringC& wsText) {
42 std::unique_ptr<CFWL_ListItem> pItem(new CFWL_ListItem); 42 std::unique_ptr<CFWL_ListItem> pItem(new CFWL_ListItem);
43 pItem->m_wsText = wsText; 43 pItem->m_wsText = wsText;
44 pItem->m_dwStyles = 0; 44 pItem->m_dwStyles = 0;
45 m_ItemArray.push_back(std::move(pItem)); 45 m_ItemArray.push_back(std::move(pItem));
46 return m_ItemArray.size() - 1; 46 return m_ItemArray.size() - 1;
47 } 47 }
48 48
49 int32_t CFWL_ComboBox::AddString(const CFX_WideStringC& wsText,
50 CFX_DIBitmap* pIcon) {
51 std::unique_ptr<CFWL_ListItem> pItem(new CFWL_ListItem);
52 pItem->m_wsText = wsText;
53 pItem->m_dwStyles = 0;
54 pItem->m_pDIB = pIcon;
55 m_ItemArray.push_back(std::move(pItem));
56 return m_ItemArray.size() - 1;
57 }
58
59 bool CFWL_ComboBox::RemoveAt(int32_t iIndex) { 49 bool CFWL_ComboBox::RemoveAt(int32_t iIndex) {
60 if (iIndex < 0 || static_cast<size_t>(iIndex) >= m_ItemArray.size()) { 50 if (iIndex < 0 || static_cast<size_t>(iIndex) >= m_ItemArray.size()) {
61 return false; 51 return false;
62 } 52 }
63 m_ItemArray.erase(m_ItemArray.begin() + iIndex); 53 m_ItemArray.erase(m_ItemArray.begin() + iIndex);
64 return true; 54 return true;
65 } 55 }
66 56
67 void CFWL_ComboBox::RemoveAll() { 57 void CFWL_ComboBox::RemoveAll() {
68 m_ItemArray.clear(); 58 m_ItemArray.clear();
69 } 59 }
70 60
71 int32_t CFWL_ComboBox::CountItems() { 61 void CFWL_ComboBox::GetTextByIndex(int32_t iIndex, CFX_WideString& wsText) {
npm 2016/11/10 19:42:38 Can we make these Get methods actually return what
72 return CountItems(GetWidget());
73 }
74
75 FWL_Error CFWL_ComboBox::GetTextByIndex(int32_t iIndex,
76 CFX_WideString& wsText) {
77 CFWL_ListItem* pItem = 62 CFWL_ListItem* pItem =
78 static_cast<CFWL_ListItem*>(GetItem(m_pIface.get(), iIndex)); 63 static_cast<CFWL_ListItem*>(GetItem(m_pIface.get(), iIndex));
79 if (!pItem) 64 if (pItem)
80 return FWL_Error::Indefinite; 65 wsText = pItem->m_wsText;
81 wsText = pItem->m_wsText;
82 return FWL_Error::Succeeded;
83 } 66 }
84 67
85 int32_t CFWL_ComboBox::GetCurSel() { 68 int32_t CFWL_ComboBox::GetCurSel() {
86 return GetWidget() ? ToComboBox(GetWidget())->GetCurSel() : -1; 69 return GetWidget() ? ToComboBox(GetWidget())->GetCurSel() : -1;
87 } 70 }
88 71
89 FWL_Error CFWL_ComboBox::SetCurSel(int32_t iSel) { 72 void CFWL_ComboBox::SetCurSel(int32_t iSel) {
90 return GetWidget() ? ToComboBox(GetWidget())->SetCurSel(iSel) 73 if (GetWidget())
91 : FWL_Error::Indefinite; 74 ToComboBox(GetWidget())->SetCurSel(iSel);
92 } 75 }
93 76
94 void CFWL_ComboBox::SetEditText(const CFX_WideString& wsText) { 77 void CFWL_ComboBox::SetEditText(const CFX_WideString& wsText) {
95 if (GetWidget()) 78 if (GetWidget())
96 ToComboBox(GetWidget())->SetEditText(wsText); 79 ToComboBox(GetWidget())->SetEditText(wsText);
97 } 80 }
98 81
99 int32_t CFWL_ComboBox::GetEditTextLength() const { 82 void CFWL_ComboBox::GetEditText(CFX_WideString& wsText,
100 return GetWidget() ? ToComboBox(GetWidget())->GetEditTextLength() : 0; 83 int32_t nStart,
84 int32_t nCount) const {
85 if (GetWidget())
86 ToComboBox(GetWidget())->GetEditText(wsText, nStart, nCount);
101 } 87 }
102 88
103 FWL_Error CFWL_ComboBox::GetEditText(CFX_WideString& wsText, 89 void CFWL_ComboBox::OpenDropDownList(bool bActivate) {
104 int32_t nStart, 90 ToComboBox(GetWidget())->OpenDropDownList(bActivate);
105 int32_t nCount) const {
106 return GetWidget()
107 ? ToComboBox(GetWidget())->GetEditText(wsText, nStart, nCount)
108 : FWL_Error::Indefinite;
109 }
110
111 FWL_Error CFWL_ComboBox::SetEditSelRange(int32_t nStart, int32_t nCount) {
112 return GetWidget() ? ToComboBox(GetWidget())->SetEditSelRange(nStart, nCount)
113 : FWL_Error::Indefinite;
114 }
115
116 int32_t CFWL_ComboBox::GetEditSelRange(int32_t nIndex, int32_t& nStart) {
117 return GetWidget() ? ToComboBox(GetWidget())->GetEditSelRange(nIndex, nStart)
118 : 0;
119 }
120
121 int32_t CFWL_ComboBox::GetEditLimit() {
122 return GetWidget() ? ToComboBox(GetWidget())->GetEditLimit() : 0;
123 }
124
125 FWL_Error CFWL_ComboBox::SetEditLimit(int32_t nLimit) {
126 return GetWidget() ? ToComboBox(GetWidget())->SetEditLimit(nLimit)
127 : FWL_Error::Indefinite;
128 }
129
130 bool CFWL_ComboBox::EditRedo(const IFDE_TxtEdtDoRecord* pRecord) {
131 return GetWidget() ? ToComboBox(GetWidget())->EditRedo(pRecord) : false;
132 }
133
134 bool CFWL_ComboBox::EditUndo(const IFDE_TxtEdtDoRecord* pRecord) {
135 return GetWidget() ? ToComboBox(GetWidget())->EditUndo(pRecord) : false;
136 }
137
138 FWL_Error CFWL_ComboBox::SetMaxListHeight(FX_FLOAT fMaxHeight) {
139 m_fMaxListHeight = fMaxHeight;
140 return FWL_Error::Succeeded;
141 }
142
143 FWL_Error CFWL_ComboBox::SetItemData(int32_t iIndex, void* pData) {
144 CFWL_ListItem* pItem =
145 static_cast<CFWL_ListItem*>(GetItem(m_pIface.get(), iIndex));
146 if (!pItem)
147 return FWL_Error::Indefinite;
148 pItem->m_pData = pData;
149 return FWL_Error::Succeeded;
150 }
151
152 void* CFWL_ComboBox::GetItemData(int32_t iIndex) {
153 CFWL_ListItem* pItem =
154 static_cast<CFWL_ListItem*>(GetItem(m_pIface.get(), iIndex));
155 return pItem ? pItem->m_pData : nullptr;
156 }
157
158 void CFWL_ComboBox::SetListTheme(IFWL_ThemeProvider* pTheme) {
159 ToComboBox(GetWidget())->GetListBoxt()->SetThemeProvider(pTheme);
160 }
161
162 bool CFWL_ComboBox::AfterFocusShowDropList() {
163 return ToComboBox(GetWidget())->AfterFocusShowDropList();
164 }
165
166 FWL_Error CFWL_ComboBox::OpenDropDownList(bool bActivate) {
167 return ToComboBox(GetWidget())->OpenDropDownList(bActivate);
168 } 91 }
169 92
170 bool CFWL_ComboBox::EditCanUndo() { 93 bool CFWL_ComboBox::EditCanUndo() {
171 return GetWidget() ? ToComboBox(GetWidget())->EditCanUndo() : false; 94 return GetWidget() ? ToComboBox(GetWidget())->EditCanUndo() : false;
172 } 95 }
173 96
174 bool CFWL_ComboBox::EditCanRedo() { 97 bool CFWL_ComboBox::EditCanRedo() {
175 return GetWidget() ? ToComboBox(GetWidget())->EditCanRedo() : false; 98 return GetWidget() ? ToComboBox(GetWidget())->EditCanRedo() : false;
176 } 99 }
177 100
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
212 } 135 }
213 136
214 bool CFWL_ComboBox::EditDelete() { 137 bool CFWL_ComboBox::EditDelete() {
215 return GetWidget() ? ToComboBox(GetWidget())->EditDelete() : false; 138 return GetWidget() ? ToComboBox(GetWidget())->EditDelete() : false;
216 } 139 }
217 140
218 bool CFWL_ComboBox::EditDeSelect() { 141 bool CFWL_ComboBox::EditDeSelect() {
219 return GetWidget() ? ToComboBox(GetWidget())->EditDeSelect() : false; 142 return GetWidget() ? ToComboBox(GetWidget())->EditDeSelect() : false;
220 } 143 }
221 144
222 FWL_Error CFWL_ComboBox::GetBBox(CFX_RectF& rect) { 145 void CFWL_ComboBox::GetBBox(CFX_RectF& rect) {
223 return GetWidget() ? ToComboBox(GetWidget())->GetBBox(rect) 146 if (GetWidget())
224 : FWL_Error::Indefinite; 147 ToComboBox(GetWidget())->GetBBox(rect);
225 } 148 }
226 149
227 void CFWL_ComboBox::EditModifyStylesEx(uint32_t dwStylesExAdded, 150 void CFWL_ComboBox::EditModifyStylesEx(uint32_t dwStylesExAdded,
228 uint32_t dwStylesExRemoved) { 151 uint32_t dwStylesExRemoved) {
229 if (GetWidget()) { 152 if (GetWidget()) {
230 ToComboBox(GetWidget()) 153 ToComboBox(GetWidget())
231 ->EditModifyStylesEx(dwStylesExAdded, dwStylesExRemoved); 154 ->EditModifyStylesEx(dwStylesExAdded, dwStylesExRemoved);
232 } 155 }
233 } 156 }
234 157
(...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after
344 267
345 void CFWL_ComboBox::SetItemCheckState(IFWL_Widget* pWidget, 268 void CFWL_ComboBox::SetItemCheckState(IFWL_Widget* pWidget,
346 CFWL_ListItem* pItem, 269 CFWL_ListItem* pItem,
347 uint32_t dwCheckState) { 270 uint32_t dwCheckState) {
348 static_cast<CFWL_ListItem*>(pItem)->m_dwCheckState = dwCheckState; 271 static_cast<CFWL_ListItem*>(pItem)->m_dwCheckState = dwCheckState;
349 } 272 }
350 273
351 FX_FLOAT CFWL_ComboBox::GetListHeight(IFWL_Widget* pWidget) { 274 FX_FLOAT CFWL_ComboBox::GetListHeight(IFWL_Widget* pWidget) {
352 return m_fMaxListHeight; 275 return m_fMaxListHeight;
353 } 276 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698