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

Side by Side Diff: xfa/fxfa/app/xfa_ffdocview.cpp

Issue 2031873003: Get rid of NULLs in xfa/ (Closed) Base URL: https://pdfium.googlesource.com/pdfium@nullptr_fpdfsdk
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
« no previous file with comments | « xfa/fxfa/app/xfa_ffchoicelist.cpp ('k') | xfa/fxfa/app/xfa_ffexclgroup.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 "xfa/fxfa/include/xfa_ffdocview.h" 7 #include "xfa/fxfa/include/xfa_ffdocview.h"
8 8
9 #include "core/fxcrt/include/fx_ext.h" 9 #include "core/fxcrt/include/fx_ext.h"
10 #include "xfa/fxfa/app/xfa_ffbarcode.h" 10 #include "xfa/fxfa/app/xfa_ffbarcode.h"
(...skipping 181 matching lines...) Expand 10 before | Expand all | Expand 10 after
192 UnlockUpdate(); 192 UnlockUpdate();
193 } 193 }
194 int32_t CXFA_FFDocView::CountPageViews() { 194 int32_t CXFA_FFDocView::CountPageViews() {
195 if (!m_pXFADocLayout) { 195 if (!m_pXFADocLayout) {
196 return 0; 196 return 0;
197 } 197 }
198 return m_pXFADocLayout->CountPages(); 198 return m_pXFADocLayout->CountPages();
199 } 199 }
200 CXFA_FFPageView* CXFA_FFDocView::GetPageView(int32_t nIndex) { 200 CXFA_FFPageView* CXFA_FFDocView::GetPageView(int32_t nIndex) {
201 if (!m_pXFADocLayout) { 201 if (!m_pXFADocLayout) {
202 return NULL; 202 return nullptr;
203 } 203 }
204 return static_cast<CXFA_FFPageView*>(m_pXFADocLayout->GetPage(nIndex)); 204 return static_cast<CXFA_FFPageView*>(m_pXFADocLayout->GetPage(nIndex));
205 } 205 }
206 206
207 CXFA_LayoutProcessor* CXFA_FFDocView::GetXFALayout() const { 207 CXFA_LayoutProcessor* CXFA_FFDocView::GetXFALayout() const {
208 return m_pDoc->GetXFADoc()->GetDocLayout(); 208 return m_pDoc->GetXFADoc()->GetDocLayout();
209 } 209 }
210 FX_BOOL CXFA_FFDocView::ResetSingleWidgetAccData(CXFA_WidgetAcc* pWidgetAcc) { 210 FX_BOOL CXFA_FFDocView::ResetSingleWidgetAccData(CXFA_WidgetAcc* pWidgetAcc) {
211 CXFA_Node* pNode = pWidgetAcc->GetNode(); 211 CXFA_Node* pNode = pWidgetAcc->GetNode();
212 XFA_ELEMENT eType = pNode->GetClassID(); 212 XFA_ELEMENT eType = pNode->GetClassID();
213 if (eType != XFA_ELEMENT_Field && eType != XFA_ELEMENT_ExclGroup) { 213 if (eType != XFA_ELEMENT_Field && eType != XFA_ELEMENT_ExclGroup) {
214 return FALSE; 214 return FALSE;
215 } 215 }
216 pWidgetAcc->ResetData(); 216 pWidgetAcc->ResetData();
217 pWidgetAcc->UpdateUIDisplay(); 217 pWidgetAcc->UpdateUIDisplay();
218 if (CXFA_Validate validate = pWidgetAcc->GetValidate()) { 218 if (CXFA_Validate validate = pWidgetAcc->GetValidate()) {
219 AddValidateWidget(pWidgetAcc); 219 AddValidateWidget(pWidgetAcc);
220 validate.GetNode()->SetFlag(XFA_NODEFLAG_NeedsInitApp, false); 220 validate.GetNode()->SetFlag(XFA_NODEFLAG_NeedsInitApp, false);
221 } 221 }
222 return TRUE; 222 return TRUE;
223 } 223 }
224 void CXFA_FFDocView::ResetWidgetData(CXFA_WidgetAcc* pWidgetAcc) { 224 void CXFA_FFDocView::ResetWidgetData(CXFA_WidgetAcc* pWidgetAcc) {
225 m_bLayoutEvent = TRUE; 225 m_bLayoutEvent = TRUE;
226 FX_BOOL bChanged = FALSE; 226 FX_BOOL bChanged = FALSE;
227 CXFA_Node* pFormNode = NULL; 227 CXFA_Node* pFormNode = nullptr;
228 if (pWidgetAcc) { 228 if (pWidgetAcc) {
229 bChanged = ResetSingleWidgetAccData(pWidgetAcc); 229 bChanged = ResetSingleWidgetAccData(pWidgetAcc);
230 pFormNode = pWidgetAcc->GetNode(); 230 pFormNode = pWidgetAcc->GetNode();
231 } else { 231 } else {
232 pFormNode = GetRootSubform(); 232 pFormNode = GetRootSubform();
233 } 233 }
234 if (!pFormNode) { 234 if (!pFormNode) {
235 return; 235 return;
236 } 236 }
237 if (pFormNode->GetClassID() != XFA_ELEMENT_Field && 237 if (pFormNode->GetClassID() != XFA_ELEMENT_Field &&
238 pFormNode->GetClassID() != XFA_ELEMENT_ExclGroup) { 238 pFormNode->GetClassID() != XFA_ELEMENT_ExclGroup) {
239 CXFA_WidgetAccIterator Iterator(this, pFormNode); 239 CXFA_WidgetAccIterator Iterator(this, pFormNode);
240 while (CXFA_WidgetAcc* pAcc = Iterator.MoveToNext()) { 240 while (CXFA_WidgetAcc* pAcc = Iterator.MoveToNext()) {
241 bChanged |= ResetSingleWidgetAccData(pAcc); 241 bChanged |= ResetSingleWidgetAccData(pAcc);
242 if (pAcc->GetNode()->GetClassID() == XFA_ELEMENT_ExclGroup) { 242 if (pAcc->GetNode()->GetClassID() == XFA_ELEMENT_ExclGroup) {
243 Iterator.SkipTree(); 243 Iterator.SkipTree();
244 } 244 }
245 } 245 }
246 } 246 }
247 if (bChanged) { 247 if (bChanged) {
248 m_pDoc->GetDocProvider()->SetChangeMark(m_pDoc); 248 m_pDoc->GetDocProvider()->SetChangeMark(m_pDoc);
249 } 249 }
250 } 250 }
251 int32_t CXFA_FFDocView::ProcessWidgetEvent(CXFA_EventParam* pParam, 251 int32_t CXFA_FFDocView::ProcessWidgetEvent(CXFA_EventParam* pParam,
252 CXFA_WidgetAcc* pWidgetAcc) { 252 CXFA_WidgetAcc* pWidgetAcc) {
253 if (pParam == NULL) { 253 if (!pParam)
254 return XFA_EVENTERROR_Error; 254 return XFA_EVENTERROR_Error;
255 } 255
256 if (pParam->m_eType == XFA_EVENT_Validate) { 256 if (pParam->m_eType == XFA_EVENT_Validate) {
257 CFX_WideString wsValidateStr(L"preSubmit"); 257 CFX_WideString wsValidateStr(L"preSubmit");
258 CXFA_Node* pConfigItem = 258 CXFA_Node* pConfigItem =
259 ToNode(m_pDoc->GetXFADoc()->GetXFAObject(XFA_HASHCODE_Config)); 259 ToNode(m_pDoc->GetXFADoc()->GetXFAObject(XFA_HASHCODE_Config));
260 if (pConfigItem) { 260 if (pConfigItem) {
261 CXFA_Node* pValidateNode = NULL; 261 CXFA_Node* pValidateNode = nullptr;
262 CXFA_Node* pAcrobatNode = pConfigItem->GetChild(0, XFA_ELEMENT_Acrobat); 262 CXFA_Node* pAcrobatNode = pConfigItem->GetChild(0, XFA_ELEMENT_Acrobat);
263 pValidateNode = 263 pValidateNode = pAcrobatNode
264 pAcrobatNode ? pAcrobatNode->GetChild(0, XFA_ELEMENT_Validate) : NULL; 264 ? pAcrobatNode->GetChild(0, XFA_ELEMENT_Validate)
265 : nullptr;
265 if (!pValidateNode) { 266 if (!pValidateNode) {
266 CXFA_Node* pPresentNode = pConfigItem->GetChild(0, XFA_ELEMENT_Present); 267 CXFA_Node* pPresentNode = pConfigItem->GetChild(0, XFA_ELEMENT_Present);
267 pValidateNode = pPresentNode 268 pValidateNode = pPresentNode
268 ? pPresentNode->GetChild(0, XFA_ELEMENT_Validate) 269 ? pPresentNode->GetChild(0, XFA_ELEMENT_Validate)
269 : NULL; 270 : nullptr;
270 } 271 }
271 if (pValidateNode) { 272 if (pValidateNode) {
272 wsValidateStr = pValidateNode->GetContent(); 273 wsValidateStr = pValidateNode->GetContent();
273 } 274 }
274 } 275 }
275 FX_BOOL bValidate = FALSE; 276 FX_BOOL bValidate = FALSE;
276 switch (pParam->m_iValidateActivities) { 277 switch (pParam->m_iValidateActivities) {
277 case XFA_VALIDATE_preSubmit: 278 case XFA_VALIDATE_preSubmit:
278 bValidate = wsValidateStr.Find(L"preSubmit") != -1; 279 bValidate = wsValidateStr.Find(L"preSubmit") != -1;
279 break; 280 break;
280 case XFA_VALIDATE_prePrint: 281 case XFA_VALIDATE_prePrint:
281 bValidate = wsValidateStr.Find(L"prePrint") != -1; 282 bValidate = wsValidateStr.Find(L"prePrint") != -1;
282 break; 283 break;
283 case XFA_VALIDATE_preExecute: 284 case XFA_VALIDATE_preExecute:
284 bValidate = wsValidateStr.Find(L"preExecute") != -1; 285 bValidate = wsValidateStr.Find(L"preExecute") != -1;
285 break; 286 break;
286 case XFA_VALIDATE_preSave: 287 case XFA_VALIDATE_preSave:
287 bValidate = wsValidateStr.Find(L"preSave") != -1; 288 bValidate = wsValidateStr.Find(L"preSave") != -1;
288 break; 289 break;
289 } 290 }
290 if (!bValidate) { 291 if (!bValidate) {
291 return XFA_EVENTERROR_Success; 292 return XFA_EVENTERROR_Success;
292 } 293 }
293 } 294 }
294 CXFA_Node* pNode = pWidgetAcc ? pWidgetAcc->GetNode() : NULL; 295 CXFA_Node* pNode = pWidgetAcc ? pWidgetAcc->GetNode() : nullptr;
295 if (!pNode) { 296 if (!pNode) {
296 CXFA_Node* pRootItem = 297 CXFA_Node* pRootItem =
297 ToNode(m_pDoc->GetXFADoc()->GetXFAObject(XFA_HASHCODE_Form)); 298 ToNode(m_pDoc->GetXFADoc()->GetXFAObject(XFA_HASHCODE_Form));
298 if (!pRootItem) { 299 if (!pRootItem) {
299 return XFA_EVENTERROR_Error; 300 return XFA_EVENTERROR_Error;
300 } 301 }
301 pNode = pRootItem->GetChild(0, XFA_ELEMENT_Subform); 302 pNode = pRootItem->GetChild(0, XFA_ELEMENT_Subform);
302 } 303 }
303 ExecEventActivityByDeepFirst(pNode, pParam->m_eType, pParam->m_bIsFormReady); 304 ExecEventActivityByDeepFirst(pNode, pParam->m_eType, pParam->m_bIsFormReady);
304 return XFA_EVENTERROR_Success; 305 return XFA_EVENTERROR_Success;
305 } 306 }
306 CXFA_FFWidgetHandler* CXFA_FFDocView::GetWidgetHandler() { 307 CXFA_FFWidgetHandler* CXFA_FFDocView::GetWidgetHandler() {
307 if (!m_pWidgetHandler) { 308 if (!m_pWidgetHandler) {
308 m_pWidgetHandler = new CXFA_FFWidgetHandler(this); 309 m_pWidgetHandler = new CXFA_FFWidgetHandler(this);
309 } 310 }
310 return m_pWidgetHandler; 311 return m_pWidgetHandler;
311 } 312 }
312 313
313 CXFA_WidgetAccIterator* CXFA_FFDocView::CreateWidgetAccIterator( 314 CXFA_WidgetAccIterator* CXFA_FFDocView::CreateWidgetAccIterator(
314 XFA_WIDGETORDER eOrder) { 315 XFA_WIDGETORDER eOrder) {
315 CXFA_Node* pFormRoot = GetRootSubform(); 316 CXFA_Node* pFormRoot = GetRootSubform();
316 if (!pFormRoot) { 317 if (!pFormRoot) {
317 return NULL; 318 return nullptr;
318 } 319 }
319 return new CXFA_WidgetAccIterator(this, pFormRoot); 320 return new CXFA_WidgetAccIterator(this, pFormRoot);
320 } 321 }
321 CXFA_FFWidget* CXFA_FFDocView::GetFocusWidget() { 322 CXFA_FFWidget* CXFA_FFDocView::GetFocusWidget() {
322 return m_pFocusWidget; 323 return m_pFocusWidget;
323 } 324 }
324 void CXFA_FFDocView::KillFocus() { 325 void CXFA_FFDocView::KillFocus() {
325 if (m_pFocusWidget && 326 if (m_pFocusWidget &&
326 (m_pFocusWidget->GetStatus() & XFA_WidgetStatus_Focused)) { 327 (m_pFocusWidget->GetStatus() & XFA_WidgetStatus_Focused)) {
327 (m_pFocusWidget)->OnKillFocus(NULL); 328 (m_pFocusWidget)->OnKillFocus(nullptr);
328 } 329 }
329 m_pFocusAcc = NULL; 330 m_pFocusAcc = nullptr;
330 m_pFocusWidget = NULL; 331 m_pFocusWidget = nullptr;
331 m_pOldFocusWidget = NULL; 332 m_pOldFocusWidget = nullptr;
332 } 333 }
333 FX_BOOL CXFA_FFDocView::SetFocus(CXFA_FFWidget* hWidget) { 334 FX_BOOL CXFA_FFDocView::SetFocus(CXFA_FFWidget* hWidget) {
334 CXFA_FFWidget* pNewFocus = hWidget; 335 CXFA_FFWidget* pNewFocus = hWidget;
335 if (m_pOldFocusWidget == pNewFocus) { 336 if (m_pOldFocusWidget == pNewFocus) {
336 return FALSE; 337 return FALSE;
337 } 338 }
338 CXFA_FFWidget* pOldFocus = m_pOldFocusWidget; 339 CXFA_FFWidget* pOldFocus = m_pOldFocusWidget;
339 m_pOldFocusWidget = pNewFocus; 340 m_pOldFocusWidget = pNewFocus;
340 if (pOldFocus) { 341 if (pOldFocus) {
341 if (m_pFocusWidget != m_pOldFocusWidget && 342 if (m_pFocusWidget != m_pOldFocusWidget &&
342 (pOldFocus->GetStatus() & XFA_WidgetStatus_Focused)) { 343 (pOldFocus->GetStatus() & XFA_WidgetStatus_Focused)) {
343 m_pFocusWidget = pOldFocus; 344 m_pFocusWidget = pOldFocus;
344 pOldFocus->OnKillFocus(pNewFocus); 345 pOldFocus->OnKillFocus(pNewFocus);
345 } else if ((pOldFocus->GetStatus() & XFA_WidgetStatus_Visible)) { 346 } else if ((pOldFocus->GetStatus() & XFA_WidgetStatus_Visible)) {
346 if (!pOldFocus->IsLoaded()) { 347 if (!pOldFocus->IsLoaded()) {
347 pOldFocus->LoadWidget(); 348 pOldFocus->LoadWidget();
348 } 349 }
349 pOldFocus->OnSetFocus(m_pFocusWidget); 350 pOldFocus->OnSetFocus(m_pFocusWidget);
350 m_pFocusWidget = pOldFocus; 351 m_pFocusWidget = pOldFocus;
351 pOldFocus->OnKillFocus(pNewFocus); 352 pOldFocus->OnKillFocus(pNewFocus);
352 } 353 }
353 } 354 }
354 if (m_pFocusWidget == m_pOldFocusWidget) { 355 if (m_pFocusWidget == m_pOldFocusWidget) {
355 return FALSE; 356 return FALSE;
356 } 357 }
357 pNewFocus = m_pOldFocusWidget; 358 pNewFocus = m_pOldFocusWidget;
358 if (m_pListFocusWidget && pNewFocus == m_pListFocusWidget) { 359 if (m_pListFocusWidget && pNewFocus == m_pListFocusWidget) {
359 m_pFocusAcc = NULL; 360 m_pFocusAcc = nullptr;
360 m_pFocusWidget = NULL; 361 m_pFocusWidget = nullptr;
361 m_pListFocusWidget = NULL; 362 m_pListFocusWidget = nullptr;
362 m_pOldFocusWidget = NULL; 363 m_pOldFocusWidget = nullptr;
363 return FALSE; 364 return FALSE;
364 } 365 }
365 if (pNewFocus && (pNewFocus->GetStatus() & XFA_WidgetStatus_Visible)) { 366 if (pNewFocus && (pNewFocus->GetStatus() & XFA_WidgetStatus_Visible)) {
366 if (!pNewFocus->IsLoaded()) { 367 if (!pNewFocus->IsLoaded()) {
367 pNewFocus->LoadWidget(); 368 pNewFocus->LoadWidget();
368 } 369 }
369 pNewFocus->OnSetFocus(m_pFocusWidget); 370 pNewFocus->OnSetFocus(m_pFocusWidget);
370 } 371 }
371 m_pFocusAcc = pNewFocus ? pNewFocus->GetDataAcc() : NULL; 372 m_pFocusAcc = pNewFocus ? pNewFocus->GetDataAcc() : nullptr;
372 m_pFocusWidget = pNewFocus; 373 m_pFocusWidget = pNewFocus;
373 m_pOldFocusWidget = m_pFocusWidget; 374 m_pOldFocusWidget = m_pFocusWidget;
374 return TRUE; 375 return TRUE;
375 } 376 }
376 CXFA_WidgetAcc* CXFA_FFDocView::GetFocusWidgetAcc() { 377 CXFA_WidgetAcc* CXFA_FFDocView::GetFocusWidgetAcc() {
377 return m_pFocusAcc; 378 return m_pFocusAcc;
378 } 379 }
379 void CXFA_FFDocView::SetFocusWidgetAcc(CXFA_WidgetAcc* pWidgetAcc) { 380 void CXFA_FFDocView::SetFocusWidgetAcc(CXFA_WidgetAcc* pWidgetAcc) {
380 CXFA_FFWidget* pNewFocus = 381 CXFA_FFWidget* pNewFocus =
381 pWidgetAcc ? pWidgetAcc->GetNextWidget(NULL) : NULL; 382 pWidgetAcc ? pWidgetAcc->GetNextWidget(nullptr) : nullptr;
382 if (SetFocus(pNewFocus)) { 383 if (SetFocus(pNewFocus)) {
383 m_pFocusAcc = pWidgetAcc; 384 m_pFocusAcc = pWidgetAcc;
384 if (m_iStatus == XFA_DOCVIEW_LAYOUTSTATUS_End) { 385 if (m_iStatus == XFA_DOCVIEW_LAYOUTSTATUS_End) {
385 m_pDoc->GetDocProvider()->SetFocusWidget(m_pDoc, m_pFocusWidget); 386 m_pDoc->GetDocProvider()->SetFocusWidget(m_pDoc, m_pFocusWidget);
386 } 387 }
387 } 388 }
388 } 389 }
389 void CXFA_FFDocView::DeleteLayoutItem(CXFA_FFWidget* pWidget) { 390 void CXFA_FFDocView::DeleteLayoutItem(CXFA_FFWidget* pWidget) {
390 if (m_pFocusAcc == pWidget->GetDataAcc()) { 391 if (m_pFocusAcc == pWidget->GetDataAcc()) {
391 m_pFocusAcc = NULL; 392 m_pFocusAcc = nullptr;
392 m_pFocusWidget = NULL; 393 m_pFocusWidget = nullptr;
393 m_pOldFocusWidget = NULL; 394 m_pOldFocusWidget = nullptr;
394 } 395 }
395 } 396 }
396 static int32_t XFA_ProcessEvent(CXFA_FFDocView* pDocView, 397 static int32_t XFA_ProcessEvent(CXFA_FFDocView* pDocView,
397 CXFA_WidgetAcc* pWidgetAcc, 398 CXFA_WidgetAcc* pWidgetAcc,
398 CXFA_EventParam* pParam) { 399 CXFA_EventParam* pParam) {
399 if (!pParam || pParam->m_eType == XFA_EVENT_Unknown) { 400 if (!pParam || pParam->m_eType == XFA_EVENT_Unknown) {
400 return XFA_EVENTERROR_NotExist; 401 return XFA_EVENTERROR_NotExist;
401 } 402 }
402 if (!pWidgetAcc || pWidgetAcc->GetClassID() == XFA_ELEMENT_Draw) { 403 if (!pWidgetAcc || pWidgetAcc->GetClassID() == XFA_ELEMENT_Draw) {
403 return XFA_EVENTERROR_NotExist; 404 return XFA_EVENTERROR_NotExist;
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
438 int32_t iRet = XFA_EVENTERROR_NotExist; 439 int32_t iRet = XFA_EVENTERROR_NotExist;
439 if (pFormNode == pExclude) { 440 if (pFormNode == pExclude) {
440 return iRet; 441 return iRet;
441 } 442 }
442 XFA_ELEMENT elementType = pFormNode->GetClassID(); 443 XFA_ELEMENT elementType = pFormNode->GetClassID();
443 if (elementType == XFA_ELEMENT_Field) { 444 if (elementType == XFA_ELEMENT_Field) {
444 if (eEventType == XFA_EVENT_IndexChange) { 445 if (eEventType == XFA_EVENT_IndexChange) {
445 return iRet; 446 return iRet;
446 } 447 }
447 CXFA_WidgetAcc* pWidgetAcc = (CXFA_WidgetAcc*)pFormNode->GetWidgetData(); 448 CXFA_WidgetAcc* pWidgetAcc = (CXFA_WidgetAcc*)pFormNode->GetWidgetData();
448 if (pWidgetAcc == NULL) { 449 if (!pWidgetAcc)
449 return iRet; 450 return iRet;
450 } 451
451 CXFA_EventParam eParam; 452 CXFA_EventParam eParam;
452 eParam.m_eType = eEventType; 453 eParam.m_eType = eEventType;
453 eParam.m_pTarget = pWidgetAcc; 454 eParam.m_pTarget = pWidgetAcc;
454 eParam.m_bIsFormReady = bIsFormReady; 455 eParam.m_bIsFormReady = bIsFormReady;
455 return XFA_ProcessEvent(this, pWidgetAcc, &eParam); 456 return XFA_ProcessEvent(this, pWidgetAcc, &eParam);
456 } 457 }
457 if (bRecursive) { 458 if (bRecursive) {
458 for (CXFA_Node* pNode = pFormNode->GetNodeItem( 459 for (CXFA_Node* pNode = pFormNode->GetNodeItem(
459 XFA_NODEITEM_FirstChild, XFA_OBJECTTYPE_ContainerNode); 460 XFA_NODEITEM_FirstChild, XFA_OBJECTTYPE_ContainerNode);
460 pNode; pNode = pNode->GetNodeItem(XFA_NODEITEM_NextSibling, 461 pNode; pNode = pNode->GetNodeItem(XFA_NODEITEM_NextSibling,
461 XFA_OBJECTTYPE_ContainerNode)) { 462 XFA_OBJECTTYPE_ContainerNode)) {
462 elementType = pNode->GetClassID(); 463 elementType = pNode->GetClassID();
463 if (elementType != XFA_ELEMENT_Variables && 464 if (elementType != XFA_ELEMENT_Variables &&
464 elementType != XFA_ELEMENT_Draw) { 465 elementType != XFA_ELEMENT_Draw) {
465 iRet |= ExecEventActivityByDeepFirst(pNode, eEventType, bIsFormReady, 466 iRet |= ExecEventActivityByDeepFirst(pNode, eEventType, bIsFormReady,
466 bRecursive, pExclude); 467 bRecursive, pExclude);
467 } 468 }
468 } 469 }
469 } 470 }
470 CXFA_WidgetAcc* pWidgetAcc = (CXFA_WidgetAcc*)pFormNode->GetWidgetData(); 471 CXFA_WidgetAcc* pWidgetAcc = (CXFA_WidgetAcc*)pFormNode->GetWidgetData();
471 if (pWidgetAcc == NULL) { 472 if (!pWidgetAcc)
472 return iRet; 473 return iRet;
473 } 474
474 CXFA_EventParam eParam; 475 CXFA_EventParam eParam;
475 eParam.m_eType = eEventType; 476 eParam.m_eType = eEventType;
476 eParam.m_pTarget = pWidgetAcc; 477 eParam.m_pTarget = pWidgetAcc;
477 eParam.m_bIsFormReady = bIsFormReady; 478 eParam.m_bIsFormReady = bIsFormReady;
478 iRet |= XFA_ProcessEvent(this, pWidgetAcc, &eParam); 479 iRet |= XFA_ProcessEvent(this, pWidgetAcc, &eParam);
479 return iRet; 480 return iRet;
480 } 481 }
481 482
482 CXFA_FFWidget* CXFA_FFDocView::GetWidgetByName(const CFX_WideString& wsName, 483 CXFA_FFWidget* CXFA_FFDocView::GetWidgetByName(const CFX_WideString& wsName,
483 CXFA_FFWidget* pRefWidget) { 484 CXFA_FFWidget* pRefWidget) {
(...skipping 275 matching lines...) Expand 10 before | Expand all | Expand 10 after
759 for (int32_t j = 0; j < iCount; j++) { 760 for (int32_t j = 0; j < iCount; j++) {
760 CXFA_Object* refObj = rs.nodes[j]; 761 CXFA_Object* refObj = rs.nodes[j];
761 if (!refObj->IsNode()) { 762 if (!refObj->IsNode()) {
762 continue; 763 continue;
763 } 764 }
764 CXFA_Node* refNode = refObj->AsNode(); 765 CXFA_Node* refNode = refObj->AsNode();
765 if (bValueUseContent) { 766 if (bValueUseContent) {
766 wsValue = refNode->GetContent(); 767 wsValue = refNode->GetContent();
767 } else { 768 } else {
768 CXFA_Node* nodeValue = refNode->GetFirstChildByName(uValueHash); 769 CXFA_Node* nodeValue = refNode->GetFirstChildByName(uValueHash);
769 if (nodeValue == NULL) { 770 if (nodeValue)
771 wsValue = nodeValue->GetContent();
772 else
770 wsValue = refNode->GetContent(); 773 wsValue = refNode->GetContent();
771 } else {
772 wsValue = nodeValue->GetContent();
773 }
774 } 774 }
775 if (!bUseValue) { 775 if (!bUseValue) {
776 if (bLabelUseContent) { 776 if (bLabelUseContent) {
777 wsLabel = refNode->GetContent(); 777 wsLabel = refNode->GetContent();
778 } else { 778 } else {
779 CXFA_Node* nodeLabel = refNode->GetFirstChildByName(wsLabelRef); 779 CXFA_Node* nodeLabel = refNode->GetFirstChildByName(wsLabelRef);
780 if (nodeLabel) 780 if (nodeLabel)
781 wsLabel = nodeLabel->GetContent(); 781 wsLabel = nodeLabel->GetContent();
782 } 782 }
783 } else { 783 } else {
784 wsLabel = wsValue; 784 wsLabel = wsValue;
785 } 785 }
786 pAcc->InsertItem(wsLabel, wsValue); 786 pAcc->InsertItem(wsLabel, wsValue);
787 } 787 }
788 } 788 }
789 m_BindItems.RemoveAll(); 789 m_BindItems.RemoveAll();
790 } 790 }
791 void CXFA_FFDocView::SetChangeMark() { 791 void CXFA_FFDocView::SetChangeMark() {
792 if (m_iStatus < XFA_DOCVIEW_LAYOUTSTATUS_End) { 792 if (m_iStatus < XFA_DOCVIEW_LAYOUTSTATUS_End) {
793 return; 793 return;
794 } 794 }
795 m_pDoc->GetDocProvider()->SetChangeMark(m_pDoc); 795 m_pDoc->GetDocProvider()->SetChangeMark(m_pDoc);
796 } 796 }
797 CXFA_Node* CXFA_FFDocView::GetRootSubform() { 797 CXFA_Node* CXFA_FFDocView::GetRootSubform() {
798 CXFA_Node* pFormPacketNode = 798 CXFA_Node* pFormPacketNode =
799 ToNode(m_pDoc->GetXFADoc()->GetXFAObject(XFA_HASHCODE_Form)); 799 ToNode(m_pDoc->GetXFADoc()->GetXFAObject(XFA_HASHCODE_Form));
800 if (!pFormPacketNode) { 800 if (!pFormPacketNode) {
801 return NULL; 801 return nullptr;
802 } 802 }
803 return pFormPacketNode->GetFirstChildByClass(XFA_ELEMENT_Subform); 803 return pFormPacketNode->GetFirstChildByClass(XFA_ELEMENT_Subform);
804 } 804 }
805 805
806 CXFA_WidgetAccIterator::CXFA_WidgetAccIterator(CXFA_FFDocView* pDocView, 806 CXFA_WidgetAccIterator::CXFA_WidgetAccIterator(CXFA_FFDocView* pDocView,
807 CXFA_Node* pTravelRoot) 807 CXFA_Node* pTravelRoot)
808 : m_ContentIterator(pTravelRoot) { 808 : m_ContentIterator(pTravelRoot) {
809 m_pDocView = pDocView; 809 m_pDocView = pDocView;
810 m_pCurWidgetAcc = NULL; 810 m_pCurWidgetAcc = nullptr;
811 } 811 }
812 CXFA_WidgetAccIterator::~CXFA_WidgetAccIterator() {} 812 CXFA_WidgetAccIterator::~CXFA_WidgetAccIterator() {}
813 void CXFA_WidgetAccIterator::Reset() { 813 void CXFA_WidgetAccIterator::Reset() {
814 m_pCurWidgetAcc = NULL; 814 m_pCurWidgetAcc = nullptr;
815 m_ContentIterator.Reset(); 815 m_ContentIterator.Reset();
816 } 816 }
817 CXFA_WidgetAcc* CXFA_WidgetAccIterator::MoveToFirst() { 817 CXFA_WidgetAcc* CXFA_WidgetAccIterator::MoveToFirst() {
818 return NULL; 818 return nullptr;
819 } 819 }
820 CXFA_WidgetAcc* CXFA_WidgetAccIterator::MoveToLast() { 820 CXFA_WidgetAcc* CXFA_WidgetAccIterator::MoveToLast() {
821 return NULL; 821 return nullptr;
822 } 822 }
823 CXFA_WidgetAcc* CXFA_WidgetAccIterator::MoveToNext() { 823 CXFA_WidgetAcc* CXFA_WidgetAccIterator::MoveToNext() {
824 CXFA_Node* pItem = m_pCurWidgetAcc ? m_ContentIterator.MoveToNext() 824 CXFA_Node* pItem = m_pCurWidgetAcc ? m_ContentIterator.MoveToNext()
825 : m_ContentIterator.GetCurrent(); 825 : m_ContentIterator.GetCurrent();
826 while (pItem) { 826 while (pItem) {
827 m_pCurWidgetAcc = (CXFA_WidgetAcc*)pItem->GetWidgetData(); 827 m_pCurWidgetAcc = (CXFA_WidgetAcc*)pItem->GetWidgetData();
828 if (m_pCurWidgetAcc) 828 if (m_pCurWidgetAcc)
829 return m_pCurWidgetAcc; 829 return m_pCurWidgetAcc;
830 pItem = m_ContentIterator.MoveToNext(); 830 pItem = m_ContentIterator.MoveToNext();
831 } 831 }
832 return NULL; 832 return nullptr;
833 } 833 }
834 CXFA_WidgetAcc* CXFA_WidgetAccIterator::MoveToPrevious() { 834 CXFA_WidgetAcc* CXFA_WidgetAccIterator::MoveToPrevious() {
835 return NULL; 835 return nullptr;
836 } 836 }
837 CXFA_WidgetAcc* CXFA_WidgetAccIterator::GetCurrentWidgetAcc() { 837 CXFA_WidgetAcc* CXFA_WidgetAccIterator::GetCurrentWidgetAcc() {
838 return NULL; 838 return nullptr;
839 } 839 }
840 FX_BOOL CXFA_WidgetAccIterator::SetCurrentWidgetAcc(CXFA_WidgetAcc* hWidget) { 840 FX_BOOL CXFA_WidgetAccIterator::SetCurrentWidgetAcc(CXFA_WidgetAcc* hWidget) {
841 return FALSE; 841 return FALSE;
842 } 842 }
843 void CXFA_WidgetAccIterator::SkipTree() { 843 void CXFA_WidgetAccIterator::SkipTree() {
844 m_ContentIterator.SkipChildrenAndMoveToNext(); 844 m_ContentIterator.SkipChildrenAndMoveToNext();
845 m_pCurWidgetAcc = NULL; 845 m_pCurWidgetAcc = nullptr;
846 } 846 }
OLDNEW
« no previous file with comments | « xfa/fxfa/app/xfa_ffchoicelist.cpp ('k') | xfa/fxfa/app/xfa_ffexclgroup.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698