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 "fpdfsdk/formfiller/cffl_textfield.h" | 7 #include "fpdfsdk/formfiller/cffl_textfield.h" |
8 | 8 |
9 #include "fpdfsdk/formfiller/cba_fontmap.h" | 9 #include "fpdfsdk/formfiller/cba_fontmap.h" |
10 #include "fpdfsdk/include/cpdfsdk_environment.h" | 10 #include "fpdfsdk/include/cpdfsdk_environment.h" |
(...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
106 FX_BOOL CFFL_TextField::OnChar(CPDFSDK_Annot* pAnnot, | 106 FX_BOOL CFFL_TextField::OnChar(CPDFSDK_Annot* pAnnot, |
107 FX_UINT nChar, | 107 FX_UINT nChar, |
108 FX_UINT nFlags) { | 108 FX_UINT nFlags) { |
109 switch (nChar) { | 109 switch (nChar) { |
110 case FWL_VKEY_Return: | 110 case FWL_VKEY_Return: |
111 if (!(m_pWidget->GetFieldFlags() & FIELDFLAG_MULTILINE)) { | 111 if (!(m_pWidget->GetFieldFlags() & FIELDFLAG_MULTILINE)) { |
112 CPDFSDK_PageView* pPageView = GetCurPageView(true); | 112 CPDFSDK_PageView* pPageView = GetCurPageView(true); |
113 ASSERT(pPageView); | 113 ASSERT(pPageView); |
114 m_bValid = !m_bValid; | 114 m_bValid = !m_bValid; |
115 CFX_FloatRect rcAnnot = pAnnot->GetRect(); | 115 CFX_FloatRect rcAnnot = pAnnot->GetRect(); |
116 m_pApp->FFI_Invalidate(pAnnot->GetUnderlyingPage(), rcAnnot.left, | 116 m_pApp->Invalidate(pAnnot->GetUnderlyingPage(), rcAnnot.left, |
117 rcAnnot.top, rcAnnot.right, rcAnnot.bottom); | 117 rcAnnot.top, rcAnnot.right, rcAnnot.bottom); |
118 | 118 |
119 if (m_bValid) { | 119 if (m_bValid) { |
120 if (CPWL_Wnd* pWnd = GetPDFWindow(pPageView, TRUE)) | 120 if (CPWL_Wnd* pWnd = GetPDFWindow(pPageView, TRUE)) |
121 pWnd->SetFocus(); | 121 pWnd->SetFocus(); |
122 } else { | 122 } else { |
123 if (CommitData(pPageView, nFlags)) { | 123 if (CommitData(pPageView, nFlags)) { |
124 DestroyPDFWindow(pPageView); | 124 DestroyPDFWindow(pPageView); |
125 return TRUE; | 125 return TRUE; |
126 } | 126 } |
127 return FALSE; | 127 return FALSE; |
(...skipping 145 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
273 if (pWnd->GetClassName() == PWL_CLASSNAME_EDIT) { | 273 if (pWnd->GetClassName() == PWL_CLASSNAME_EDIT) { |
274 CPWL_Edit* pEdit = (CPWL_Edit*)pWnd; | 274 CPWL_Edit* pEdit = (CPWL_Edit*)pWnd; |
275 pEdit->SetCharSet(FXFONT_GB2312_CHARSET); | 275 pEdit->SetCharSet(FXFONT_GB2312_CHARSET); |
276 pEdit->SetCodePage(936); | 276 pEdit->SetCodePage(936); |
277 | 277 |
278 pEdit->SetReadyToInput(); | 278 pEdit->SetReadyToInput(); |
279 CFX_WideString wsText = pEdit->GetText(); | 279 CFX_WideString wsText = pEdit->GetText(); |
280 int nCharacters = wsText.GetLength(); | 280 int nCharacters = wsText.GetLength(); |
281 CFX_ByteString bsUTFText = wsText.UTF16LE_Encode(); | 281 CFX_ByteString bsUTFText = wsText.UTF16LE_Encode(); |
282 unsigned short* pBuffer = (unsigned short*)bsUTFText.c_str(); | 282 unsigned short* pBuffer = (unsigned short*)bsUTFText.c_str(); |
283 m_pApp->FFI_OnSetFieldInputFocus(m_pWidget->GetFormField(), pBuffer, | 283 m_pApp->OnSetFieldInputFocus(m_pWidget->GetFormField(), pBuffer, |
284 nCharacters, TRUE); | 284 nCharacters, TRUE); |
285 } | 285 } |
286 } | 286 } |
OLD | NEW |