| OLD | NEW | 
|---|
| 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/app/xfa_fftextedit.h" | 7 #include "xfa/fxfa/app/xfa_fftextedit.h" | 
| 8 | 8 | 
| 9 #include <vector> | 9 #include <vector> | 
| 10 | 10 | 
| 11 #include "xfa/fwl/basewidget/ifwl_edit.h" | 11 #include "xfa/fwl/basewidget/ifwl_edit.h" | 
| 12 #include "xfa/fwl/core/cfwl_message.h" | 12 #include "xfa/fwl/core/cfwl_message.h" | 
| 13 #include "xfa/fwl/core/fwl_noteimp.h" | 13 #include "xfa/fwl/core/fwl_noteimp.h" | 
| 14 #include "xfa/fwl/lightwidget/cfwl_datetimepicker.h" | 14 #include "xfa/fwl/lightwidget/cfwl_datetimepicker.h" | 
| 15 #include "xfa/fwl/lightwidget/cfwl_edit.h" | 15 #include "xfa/fwl/lightwidget/cfwl_edit.h" | 
| 16 #include "xfa/fxfa/app/xfa_fffield.h" | 16 #include "xfa/fxfa/app/xfa_fffield.h" | 
| 17 #include "xfa/fxfa/app/xfa_fwladapter.h" | 17 #include "xfa/fxfa/app/xfa_fwladapter.h" | 
| 18 #include "xfa/fxfa/app/xfa_textlayout.h" | 18 #include "xfa/fxfa/app/xfa_textlayout.h" | 
| 19 #include "xfa/fxfa/include/cxfa_eventparam.h" | 19 #include "xfa/fxfa/include/cxfa_eventparam.h" | 
| 20 #include "xfa/fxfa/include/xfa_ffapp.h" | 20 #include "xfa/fxfa/include/xfa_ffapp.h" | 
| 21 #include "xfa/fxfa/include/xfa_ffdoc.h" | 21 #include "xfa/fxfa/include/xfa_ffdoc.h" | 
| 22 #include "xfa/fxfa/include/xfa_ffdocview.h" | 22 #include "xfa/fxfa/include/xfa_ffdocview.h" | 
| 23 #include "xfa/fxfa/include/xfa_ffpageview.h" | 23 #include "xfa/fxfa/include/xfa_ffpageview.h" | 
| 24 #include "xfa/fxfa/include/xfa_ffwidget.h" | 24 #include "xfa/fxfa/include/xfa_ffwidget.h" | 
| 25 #include "xfa/fxfa/parser/xfa_localevalue.h" | 25 #include "xfa/fxfa/parser/xfa_localevalue.h" | 
| 26 | 26 | 
| 27 CXFA_FFTextEdit::CXFA_FFTextEdit(CXFA_FFPageView* pPageView, | 27 CXFA_FFTextEdit::CXFA_FFTextEdit(CXFA_FFPageView* pPageView, | 
| 28                                  CXFA_WidgetAcc* pDataAcc) | 28                                  CXFA_WidgetAcc* pDataAcc) | 
| 29     : CXFA_FFField(pPageView, pDataAcc), m_pOldDelegate(NULL) {} | 29     : CXFA_FFField(pPageView, pDataAcc), m_pOldDelegate(nullptr) {} | 
| 30 CXFA_FFTextEdit::~CXFA_FFTextEdit() { | 30 CXFA_FFTextEdit::~CXFA_FFTextEdit() { | 
| 31   if (m_pNormalWidget) { | 31   if (m_pNormalWidget) { | 
| 32     IFWL_Widget* pWidget = m_pNormalWidget->GetWidget(); | 32     IFWL_Widget* pWidget = m_pNormalWidget->GetWidget(); | 
| 33     CFWL_NoteDriver* pNoteDriver = FWL_GetApp()->GetNoteDriver(); | 33     CFWL_NoteDriver* pNoteDriver = FWL_GetApp()->GetNoteDriver(); | 
| 34     pNoteDriver->UnregisterEventTarget(pWidget); | 34     pNoteDriver->UnregisterEventTarget(pWidget); | 
| 35   } | 35   } | 
| 36 } | 36 } | 
| 37 FX_BOOL CXFA_FFTextEdit::LoadWidget() { | 37 FX_BOOL CXFA_FFTextEdit::LoadWidget() { | 
| 38   CFWL_Edit* pFWLEdit = CFWL_Edit::Create(); | 38   CFWL_Edit* pFWLEdit = CFWL_Edit::Create(); | 
| 39   pFWLEdit->Initialize(); | 39   pFWLEdit->Initialize(); | 
| (...skipping 112 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 152 FX_BOOL CXFA_FFTextEdit::OnSetFocus(CXFA_FFWidget* pOldWidget) { | 152 FX_BOOL CXFA_FFTextEdit::OnSetFocus(CXFA_FFWidget* pOldWidget) { | 
| 153   m_dwStatus &= ~XFA_WidgetStatus_TextEditValueChanged; | 153   m_dwStatus &= ~XFA_WidgetStatus_TextEditValueChanged; | 
| 154   if (!IsFocused()) { | 154   if (!IsFocused()) { | 
| 155     m_dwStatus |= XFA_WidgetStatus_Focused; | 155     m_dwStatus |= XFA_WidgetStatus_Focused; | 
| 156     UpdateFWLData(); | 156     UpdateFWLData(); | 
| 157     AddInvalidateRect(); | 157     AddInvalidateRect(); | 
| 158   } | 158   } | 
| 159   CXFA_FFWidget::OnSetFocus(pOldWidget); | 159   CXFA_FFWidget::OnSetFocus(pOldWidget); | 
| 160   CFWL_MsgSetFocus ms; | 160   CFWL_MsgSetFocus ms; | 
| 161   ms.m_pDstTarget = m_pNormalWidget->m_pIface; | 161   ms.m_pDstTarget = m_pNormalWidget->m_pIface; | 
| 162   ms.m_pSrcTarget = NULL; | 162   ms.m_pSrcTarget = nullptr; | 
| 163   TranslateFWLMessage(&ms); | 163   TranslateFWLMessage(&ms); | 
| 164   return TRUE; | 164   return TRUE; | 
| 165 } | 165 } | 
| 166 FX_BOOL CXFA_FFTextEdit::OnKillFocus(CXFA_FFWidget* pNewWidget) { | 166 FX_BOOL CXFA_FFTextEdit::OnKillFocus(CXFA_FFWidget* pNewWidget) { | 
| 167   CFWL_MsgKillFocus ms; | 167   CFWL_MsgKillFocus ms; | 
| 168   ms.m_pDstTarget = m_pNormalWidget->m_pIface; | 168   ms.m_pDstTarget = m_pNormalWidget->m_pIface; | 
| 169   ms.m_pSrcTarget = NULL; | 169   ms.m_pSrcTarget = nullptr; | 
| 170   TranslateFWLMessage(&ms); | 170   TranslateFWLMessage(&ms); | 
| 171   m_dwStatus &= ~XFA_WidgetStatus_Focused; | 171   m_dwStatus &= ~XFA_WidgetStatus_Focused; | 
| 172   SetEditScrollOffset(); | 172   SetEditScrollOffset(); | 
| 173   ProcessCommittedData(); | 173   ProcessCommittedData(); | 
| 174   UpdateFWLData(); | 174   UpdateFWLData(); | 
| 175   AddInvalidateRect(); | 175   AddInvalidateRect(); | 
| 176   CXFA_FFWidget::OnKillFocus(pNewWidget); | 176   CXFA_FFWidget::OnKillFocus(pNewWidget); | 
| 177   m_dwStatus &= ~XFA_WidgetStatus_TextEditValueChanged; | 177   m_dwStatus &= ~XFA_WidgetStatus_TextEditValueChanged; | 
| 178   return TRUE; | 178   return TRUE; | 
| 179 } | 179 } | 
| (...skipping 595 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 775   CXFA_LocaleValue date(XFA_VT_DATE, GetDoc()->GetXFADoc()->GetLocalMgr()); | 775   CXFA_LocaleValue date(XFA_VT_DATE, GetDoc()->GetXFADoc()->GetLocalMgr()); | 
| 776   CFX_Unitime dt; | 776   CFX_Unitime dt; | 
| 777   dt.Set(iYear, iMonth, iDay); | 777   dt.Set(iYear, iMonth, iDay); | 
| 778   date.SetDate(dt); | 778   date.SetDate(dt); | 
| 779   CFX_WideString wsDate; | 779   CFX_WideString wsDate; | 
| 780   date.FormatPatterns(wsDate, wsPicture, m_pDataAcc->GetLocal(), | 780   date.FormatPatterns(wsDate, wsPicture, m_pDataAcc->GetLocal(), | 
| 781                       XFA_VALUEPICTURE_Edit); | 781                       XFA_VALUEPICTURE_Edit); | 
| 782   CFWL_DateTimePicker* pDateTime = (CFWL_DateTimePicker*)m_pNormalWidget; | 782   CFWL_DateTimePicker* pDateTime = (CFWL_DateTimePicker*)m_pNormalWidget; | 
| 783   pDateTime->SetEditText(wsDate); | 783   pDateTime->SetEditText(wsDate); | 
| 784   pDateTime->Update(); | 784   pDateTime->Update(); | 
| 785   GetDoc()->GetDocProvider()->SetFocusWidget(GetDoc(), NULL); | 785   GetDoc()->GetDocProvider()->SetFocusWidget(GetDoc(), nullptr); | 
| 786   CXFA_EventParam eParam; | 786   CXFA_EventParam eParam; | 
| 787   eParam.m_eType = XFA_EVENT_Change; | 787   eParam.m_eType = XFA_EVENT_Change; | 
| 788   eParam.m_pTarget = m_pDataAcc; | 788   eParam.m_pTarget = m_pDataAcc; | 
| 789   m_pDataAcc->GetValue(eParam.m_wsNewText, XFA_VALUEPICTURE_Raw); | 789   m_pDataAcc->GetValue(eParam.m_wsNewText, XFA_VALUEPICTURE_Raw); | 
| 790   m_pDataAcc->ProcessEvent(XFA_ATTRIBUTEENUM_Change, &eParam); | 790   m_pDataAcc->ProcessEvent(XFA_ATTRIBUTEENUM_Change, &eParam); | 
| 791 } | 791 } | 
| 792 | 792 | 
| 793 void CXFA_FFDateTimeEdit::OnProcessEvent(CFWL_Event* pEvent) { | 793 void CXFA_FFDateTimeEdit::OnProcessEvent(CFWL_Event* pEvent) { | 
| 794   if (pEvent->GetClassID() == CFWL_EventType::SelectChanged) { | 794   if (pEvent->GetClassID() == CFWL_EventType::SelectChanged) { | 
| 795     CFWL_Event_DtpSelectChanged* event = (CFWL_Event_DtpSelectChanged*)pEvent; | 795     CFWL_Event_DtpSelectChanged* event = (CFWL_Event_DtpSelectChanged*)pEvent; | 
| 796     OnSelectChanged(m_pNormalWidget->GetWidget(), event->iYear, event->iMonth, | 796     OnSelectChanged(m_pNormalWidget->GetWidget(), event->iYear, event->iMonth, | 
| 797                     event->iDay); | 797                     event->iDay); | 
| 798     return; | 798     return; | 
| 799   } | 799   } | 
| 800   CXFA_FFTextEdit::OnProcessEvent(pEvent); | 800   CXFA_FFTextEdit::OnProcessEvent(pEvent); | 
| 801 } | 801 } | 
| OLD | NEW | 
|---|