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

Side by Side Diff: fpdfsdk/formfiller/cffl_listbox.cpp

Issue 2453683011: Remove FX_BOOL from fpdfsdk. (Closed)
Patch Set: Regenerate patch after rebase. 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
« no previous file with comments | « fpdfsdk/formfiller/cffl_listbox.h ('k') | fpdfsdk/formfiller/cffl_pushbutton.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 "fpdfsdk/formfiller/cffl_listbox.h" 7 #include "fpdfsdk/formfiller/cffl_listbox.h"
8 8
9 #include "fpdfsdk/cpdfsdk_formfillenvironment.h" 9 #include "fpdfsdk/cpdfsdk_formfillenvironment.h"
10 #include "fpdfsdk/cpdfsdk_widget.h" 10 #include "fpdfsdk/cpdfsdk_widget.h"
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
52 pWnd->AttachFFLData(this); 52 pWnd->AttachFFLData(this);
53 pWnd->Create(cp); 53 pWnd->Create(cp);
54 pWnd->SetFillerNotify(m_pFormFillEnv->GetInteractiveFormFiller()); 54 pWnd->SetFillerNotify(m_pFormFillEnv->GetInteractiveFormFiller());
55 55
56 for (int32_t i = 0, sz = m_pWidget->CountOptions(); i < sz; i++) 56 for (int32_t i = 0, sz = m_pWidget->CountOptions(); i < sz; i++)
57 pWnd->AddString(m_pWidget->GetOptionLabel(i)); 57 pWnd->AddString(m_pWidget->GetOptionLabel(i));
58 58
59 if (pWnd->HasFlag(PLBS_MULTIPLESEL)) { 59 if (pWnd->HasFlag(PLBS_MULTIPLESEL)) {
60 m_OriginSelections.clear(); 60 m_OriginSelections.clear();
61 61
62 FX_BOOL bSetCaret = FALSE; 62 bool bSetCaret = false;
63 for (int32_t i = 0, sz = m_pWidget->CountOptions(); i < sz; i++) { 63 for (int32_t i = 0, sz = m_pWidget->CountOptions(); i < sz; i++) {
64 if (m_pWidget->IsOptionSelected(i)) { 64 if (m_pWidget->IsOptionSelected(i)) {
65 if (!bSetCaret) { 65 if (!bSetCaret) {
66 pWnd->SetCaret(i); 66 pWnd->SetCaret(i);
67 bSetCaret = TRUE; 67 bSetCaret = true;
68 } 68 }
69 pWnd->Select(i); 69 pWnd->Select(i);
70 m_OriginSelections.insert(i); 70 m_OriginSelections.insert(i);
71 } 71 }
72 } 72 }
73 } else { 73 } else {
74 for (int i = 0, sz = m_pWidget->CountOptions(); i < sz; i++) { 74 for (int i = 0, sz = m_pWidget->CountOptions(); i < sz; i++) {
75 if (m_pWidget->IsOptionSelected(i)) { 75 if (m_pWidget->IsOptionSelected(i)) {
76 pWnd->Select(i); 76 pWnd->Select(i);
77 break; 77 break;
78 } 78 }
79 } 79 }
80 } 80 }
81 81
82 pWnd->SetTopVisibleIndex(m_pWidget->GetTopVisibleIndex()); 82 pWnd->SetTopVisibleIndex(m_pWidget->GetTopVisibleIndex());
83 83
84 return pWnd; 84 return pWnd;
85 } 85 }
86 86
87 FX_BOOL CFFL_ListBox::OnChar(CPDFSDK_Annot* pAnnot, 87 bool CFFL_ListBox::OnChar(CPDFSDK_Annot* pAnnot,
88 uint32_t nChar, 88 uint32_t nChar,
89 uint32_t nFlags) { 89 uint32_t nFlags) {
90 return CFFL_FormFiller::OnChar(pAnnot, nChar, nFlags); 90 return CFFL_FormFiller::OnChar(pAnnot, nChar, nFlags);
91 } 91 }
92 92
93 FX_BOOL CFFL_ListBox::IsDataChanged(CPDFSDK_PageView* pPageView) { 93 bool CFFL_ListBox::IsDataChanged(CPDFSDK_PageView* pPageView) {
94 CPWL_ListBox* pListBox = (CPWL_ListBox*)GetPDFWindow(pPageView, FALSE); 94 CPWL_ListBox* pListBox = (CPWL_ListBox*)GetPDFWindow(pPageView, false);
95 if (!pListBox) 95 if (!pListBox)
96 return FALSE; 96 return false;
97 97
98 if (m_pWidget->GetFieldFlags() & FIELDFLAG_MULTISELECT) { 98 if (m_pWidget->GetFieldFlags() & FIELDFLAG_MULTISELECT) {
99 size_t nSelCount = 0; 99 size_t nSelCount = 0;
100 for (int32_t i = 0, sz = pListBox->GetCount(); i < sz; ++i) { 100 for (int32_t i = 0, sz = pListBox->GetCount(); i < sz; ++i) {
101 if (pListBox->IsItemSelected(i)) { 101 if (pListBox->IsItemSelected(i)) {
102 if (m_OriginSelections.count(i) == 0) 102 if (m_OriginSelections.count(i) == 0)
103 return TRUE; 103 return true;
104 104
105 ++nSelCount; 105 ++nSelCount;
106 } 106 }
107 } 107 }
108 108
109 return nSelCount != m_OriginSelections.size(); 109 return nSelCount != m_OriginSelections.size();
110 } 110 }
111 return pListBox->GetCurSel() != m_pWidget->GetSelectedIndex(0); 111 return pListBox->GetCurSel() != m_pWidget->GetSelectedIndex(0);
112 } 112 }
113 113
114 void CFFL_ListBox::SaveData(CPDFSDK_PageView* pPageView) { 114 void CFFL_ListBox::SaveData(CPDFSDK_PageView* pPageView) {
115 CPWL_ListBox* pListBox = 115 CPWL_ListBox* pListBox =
116 static_cast<CPWL_ListBox*>(GetPDFWindow(pPageView, FALSE)); 116 static_cast<CPWL_ListBox*>(GetPDFWindow(pPageView, false));
117 if (!pListBox) 117 if (!pListBox)
118 return; 118 return;
119 119
120 int32_t nNewTopIndex = pListBox->GetTopVisibleIndex(); 120 int32_t nNewTopIndex = pListBox->GetTopVisibleIndex();
121 m_pWidget->ClearSelection(FALSE); 121 m_pWidget->ClearSelection(false);
122 if (m_pWidget->GetFieldFlags() & FIELDFLAG_MULTISELECT) { 122 if (m_pWidget->GetFieldFlags() & FIELDFLAG_MULTISELECT) {
123 for (int32_t i = 0, sz = pListBox->GetCount(); i < sz; i++) { 123 for (int32_t i = 0, sz = pListBox->GetCount(); i < sz; i++) {
124 if (pListBox->IsItemSelected(i)) 124 if (pListBox->IsItemSelected(i))
125 m_pWidget->SetOptionSelection(i, TRUE, FALSE); 125 m_pWidget->SetOptionSelection(i, true, false);
126 } 126 }
127 } else { 127 } else {
128 m_pWidget->SetOptionSelection(pListBox->GetCurSel(), TRUE, FALSE); 128 m_pWidget->SetOptionSelection(pListBox->GetCurSel(), true, false);
129 } 129 }
130 m_pWidget->SetTopVisibleIndex(nNewTopIndex); 130 m_pWidget->SetTopVisibleIndex(nNewTopIndex);
131 m_pWidget->ResetFieldAppearance(TRUE); 131 m_pWidget->ResetFieldAppearance(true);
132 m_pWidget->UpdateField(); 132 m_pWidget->UpdateField();
133 SetChangeMark(); 133 SetChangeMark();
134 } 134 }
135 135
136 void CFFL_ListBox::GetActionData(CPDFSDK_PageView* pPageView, 136 void CFFL_ListBox::GetActionData(CPDFSDK_PageView* pPageView,
137 CPDF_AAction::AActionType type, 137 CPDF_AAction::AActionType type,
138 PDFSDK_FieldAction& fa) { 138 PDFSDK_FieldAction& fa) {
139 switch (type) { 139 switch (type) {
140 case CPDF_AAction::Validate: 140 case CPDF_AAction::Validate:
141 if (m_pWidget->GetFieldFlags() & FIELDFLAG_MULTISELECT) { 141 if (m_pWidget->GetFieldFlags() & FIELDFLAG_MULTISELECT) {
142 fa.sValue = L""; 142 fa.sValue = L"";
143 } else { 143 } else {
144 if (CPWL_ListBox* pListBox = 144 if (CPWL_ListBox* pListBox =
145 (CPWL_ListBox*)GetPDFWindow(pPageView, FALSE)) { 145 (CPWL_ListBox*)GetPDFWindow(pPageView, false)) {
146 int32_t nCurSel = pListBox->GetCurSel(); 146 int32_t nCurSel = pListBox->GetCurSel();
147 if (nCurSel >= 0) 147 if (nCurSel >= 0)
148 fa.sValue = m_pWidget->GetOptionLabel(nCurSel); 148 fa.sValue = m_pWidget->GetOptionLabel(nCurSel);
149 } 149 }
150 } 150 }
151 break; 151 break;
152 case CPDF_AAction::LoseFocus: 152 case CPDF_AAction::LoseFocus:
153 case CPDF_AAction::GetFocus: 153 case CPDF_AAction::GetFocus:
154 if (m_pWidget->GetFieldFlags() & FIELDFLAG_MULTISELECT) { 154 if (m_pWidget->GetFieldFlags() & FIELDFLAG_MULTISELECT) {
155 fa.sValue = L""; 155 fa.sValue = L"";
156 } else { 156 } else {
157 int32_t nCurSel = m_pWidget->GetSelectedIndex(0); 157 int32_t nCurSel = m_pWidget->GetSelectedIndex(0);
158 if (nCurSel >= 0) 158 if (nCurSel >= 0)
159 fa.sValue = m_pWidget->GetOptionLabel(nCurSel); 159 fa.sValue = m_pWidget->GetOptionLabel(nCurSel);
160 } 160 }
161 break; 161 break;
162 default: 162 default:
163 break; 163 break;
164 } 164 }
165 } 165 }
166 166
167 void CFFL_ListBox::SaveState(CPDFSDK_PageView* pPageView) { 167 void CFFL_ListBox::SaveState(CPDFSDK_PageView* pPageView) {
168 ASSERT(pPageView); 168 ASSERT(pPageView);
169 169
170 if (CPWL_ListBox* pListBox = (CPWL_ListBox*)GetPDFWindow(pPageView, FALSE)) { 170 if (CPWL_ListBox* pListBox = (CPWL_ListBox*)GetPDFWindow(pPageView, false)) {
171 for (int32_t i = 0, sz = pListBox->GetCount(); i < sz; i++) { 171 for (int32_t i = 0, sz = pListBox->GetCount(); i < sz; i++) {
172 if (pListBox->IsItemSelected(i)) { 172 if (pListBox->IsItemSelected(i)) {
173 m_State.Add(i); 173 m_State.Add(i);
174 } 174 }
175 } 175 }
176 } 176 }
177 } 177 }
178 178
179 void CFFL_ListBox::RestoreState(CPDFSDK_PageView* pPageView) { 179 void CFFL_ListBox::RestoreState(CPDFSDK_PageView* pPageView) {
180 if (CPWL_ListBox* pListBox = (CPWL_ListBox*)GetPDFWindow(pPageView, FALSE)) { 180 if (CPWL_ListBox* pListBox = (CPWL_ListBox*)GetPDFWindow(pPageView, false)) {
181 for (int i = 0, sz = m_State.GetSize(); i < sz; i++) 181 for (int i = 0, sz = m_State.GetSize(); i < sz; i++)
182 pListBox->Select(m_State[i]); 182 pListBox->Select(m_State[i]);
183 } 183 }
184 } 184 }
185 185
186 CPWL_Wnd* CFFL_ListBox::ResetPDFWindow(CPDFSDK_PageView* pPageView, 186 CPWL_Wnd* CFFL_ListBox::ResetPDFWindow(CPDFSDK_PageView* pPageView,
187 FX_BOOL bRestoreValue) { 187 bool bRestoreValue) {
188 if (bRestoreValue) 188 if (bRestoreValue)
189 SaveState(pPageView); 189 SaveState(pPageView);
190 190
191 DestroyPDFWindow(pPageView); 191 DestroyPDFWindow(pPageView);
192 192
193 CPWL_Wnd* pRet = nullptr; 193 CPWL_Wnd* pRet = nullptr;
194 194
195 if (bRestoreValue) { 195 if (bRestoreValue) {
196 RestoreState(pPageView); 196 RestoreState(pPageView);
197 pRet = GetPDFWindow(pPageView, FALSE); 197 pRet = GetPDFWindow(pPageView, false);
198 } else { 198 } else {
199 pRet = GetPDFWindow(pPageView, TRUE); 199 pRet = GetPDFWindow(pPageView, true);
200 } 200 }
201 201
202 m_pWidget->UpdateField(); 202 m_pWidget->UpdateField();
203 203
204 return pRet; 204 return pRet;
205 } 205 }
OLDNEW
« no previous file with comments | « fpdfsdk/formfiller/cffl_listbox.h ('k') | fpdfsdk/formfiller/cffl_pushbutton.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698