diff options
author | Dan Sinclair <dsinclair@chromium.org> | 2015-10-21 13:29:23 -0400 |
---|---|---|
committer | Dan Sinclair <dsinclair@chromium.org> | 2015-10-21 13:29:23 -0400 |
commit | 316eb864137a0b8eeb0d0d4d698ba83f4946a89c (patch) | |
tree | 9268f9369d9382ca3ee8f7496ab71394dfa9daef /fpdfsdk | |
parent | 43ce9035a026c7b4f15aa938dc39444d9253ea9f (diff) | |
download | pdfium-316eb864137a0b8eeb0d0d4d698ba83f4946a89c.tar.xz |
Merge to XFA: Add type cast definitions for CPDF_String.
This Cl adds ToString, CPDF_Object::AsString and CPDF_Object::IsString and
updates the src to use them as needed.
BUG=pdfium:201
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1417933002 .
(cherry picked from commit 53d3ab125ef583be8cfac907b308a6551b93067a)
Review URL: https://codereview.chromium.org/1408323006 .
Diffstat (limited to 'fpdfsdk')
-rw-r--r-- | fpdfsdk/src/formfiller/FFL_Utils.cpp | 2 | ||||
-rw-r--r-- | fpdfsdk/src/fsdk_baseform.cpp | 10 | ||||
-rw-r--r-- | fpdfsdk/src/javascript/Document.cpp | 6 |
3 files changed, 9 insertions, 9 deletions
diff --git a/fpdfsdk/src/formfiller/FFL_Utils.cpp b/fpdfsdk/src/formfiller/FFL_Utils.cpp index a4463b7242..e3c8306a0a 100644 --- a/fpdfsdk/src/formfiller/FFL_Utils.cpp +++ b/fpdfsdk/src/formfiller/FFL_Utils.cpp @@ -81,7 +81,7 @@ FX_BOOL CFFL_Utils::TraceObject(CPDF_Object* pObj) { // TRACE("%d\n",(int32_t)pObj); break; case PDFOBJ_STRING: - // TRACE(((CPDF_String*)pObj)->GetString() + "\n"); + // TRACE(pObj->AsString()->GetString() + "\n"); break; case PDFOBJ_NAME: // TRACE(((CPDF_Name*)pObj)->GetString() + "\n"); diff --git a/fpdfsdk/src/fsdk_baseform.cpp b/fpdfsdk/src/fsdk_baseform.cpp index d7374a6f18..68c320b4af 100644 --- a/fpdfsdk/src/fsdk_baseform.cpp +++ b/fpdfsdk/src/fsdk_baseform.cpp @@ -2747,10 +2747,9 @@ void CPDFSDK_InterForm::DoFDFBuffer(CFX_ByteString sBuffer) { CPDF_Object* pJS = pJSDict->GetElementValue("Before"); if (pJS != NULL) { - int iType = pJS->GetType(); - if (iType == PDFOBJ_STRING) + if (pJS->IsString()) csJS = pJSDict->GetUnicodeText("Before"); - else if (iType == PDFOBJ_STREAM) + else if (pJS->GetType() == PDFOBJ_STREAM) csJS = pJS->GetUnicodeText(); } } @@ -2939,13 +2938,12 @@ void CPDFSDK_InterForm::GetFieldFromObjects(const CFX_PtrArray& objects, if (pObject == NULL) continue; - int iType = pObject->GetType(); - if (iType == PDFOBJ_STRING) { + if (pObject->IsString()) { CFX_WideString csName = pObject->GetUnicodeText(); CPDF_FormField* pField = m_pInterForm->GetField(0, csName); if (pField != NULL) fields.Add(pField); - } else if (iType == PDFOBJ_DICTIONARY) { + } else if (pObject->IsDictionary()) { if (m_pInterForm->IsValidFormField(pObject)) fields.Add(pObject); } diff --git a/fpdfsdk/src/javascript/Document.cpp b/fpdfsdk/src/javascript/Document.cpp index 939b74e9db..f69a39816f 100644 --- a/fpdfsdk/src/javascript/Document.cpp +++ b/fpdfsdk/src/javascript/Document.cpp @@ -850,14 +850,16 @@ FX_BOOL Document::info(IJS_Context* cc, CFX_ByteString bsKey; CPDF_Object* pValueObj = pDictionary->GetNextElement(pos, bsKey); CFX_WideString wsKey = CFX_WideString::FromUTF8(bsKey, bsKey.GetLength()); - if ((pValueObj->GetType() == PDFOBJ_STRING) || - (pValueObj->GetType() == PDFOBJ_NAME)) + if (pValueObj->IsString() || (pValueObj->GetType() == PDFOBJ_NAME)) { FXJS_PutObjectString(isolate, pObj, wsKey.c_str(), pValueObj->GetUnicodeText().c_str()); + } + if (pValueObj->IsNumber()) { FXJS_PutObjectNumber(isolate, pObj, wsKey.c_str(), (float)pValueObj->GetNumber()); } + if (pValueObj->IsBoolean()) { FXJS_PutObjectBoolean(isolate, pObj, wsKey.c_str(), (bool)pValueObj->GetInteger()); |