Index: fpdfsdk/src/javascript/Document.cpp |
diff --git a/fpdfsdk/src/javascript/Document.cpp b/fpdfsdk/src/javascript/Document.cpp |
index f823d8084f7f5bfe1acf2b1d7c1df1eab86dcc7c..57ede3f3d30075d76d64b1eeb5fc6e910645f166 100644 |
--- a/fpdfsdk/src/javascript/Document.cpp |
+++ b/fpdfsdk/src/javascript/Document.cpp |
@@ -326,7 +326,7 @@ FX_BOOL Document::getField(IFXJS_Context* cc, const CJS_Parameters& params, CJS_ |
if (params.size() < 1) return FALSE; |
- CFX_WideString wideName = params[0].operator CFX_WideString(); |
+ CFX_WideString wideName = params[0].ToCFXWideString(); |
CPDFSDK_InterForm* pInterForm = m_pDocument->GetInterForm(); |
ASSERT(pInterForm != NULL); |
@@ -364,7 +364,7 @@ FX_BOOL Document::getNthFieldName(IFXJS_Context* cc, const CJS_Parameters& param |
{ |
ASSERT(m_pDocument != NULL); |
- int nIndex = params.size() > 0 ? (int)params[0] : -1; |
+ int nIndex = params.size() > 0 ? params[0].ToInt() : -1; |
if (nIndex == -1) return FALSE; |
CPDFSDK_InterForm* pInterForm = m_pDocument->GetInterForm(); |
@@ -412,12 +412,12 @@ FX_BOOL Document::mailForm(IFXJS_Context* cc, const CJS_Parameters& params, CJS_ |
int iLength = params.size(); |
- FX_BOOL bUI = iLength > 0 ? (FX_BOOL)params[0] : TRUE; |
- CFX_WideString cTo = iLength > 1 ? (FX_LPCWSTR)params[1].operator CFX_WideString() : L""; |
- CFX_WideString cCc = iLength > 2 ? (FX_LPCWSTR)params[2].operator CFX_WideString() : L""; |
- CFX_WideString cBcc = iLength > 3 ? (FX_LPCWSTR)params[3].operator CFX_WideString() : L""; |
- CFX_WideString cSubject = iLength > 4 ? (FX_LPCWSTR)params[4].operator CFX_WideString() : L""; |
- CFX_WideString cMsg = iLength > 5 ? (FX_LPCWSTR)params[5].operator CFX_WideString() : L""; |
+ FX_BOOL bUI = iLength > 0 ? params[0].ToBool() : TRUE; |
+ CFX_WideString cTo = iLength > 1 ? params[1].ToCFXWideString() : L""; |
+ CFX_WideString cCc = iLength > 2 ? params[2].ToCFXWideString() : L""; |
+ CFX_WideString cBcc = iLength > 3 ? params[3].ToCFXWideString() : L""; |
+ CFX_WideString cSubject = iLength > 4 ? params[4].ToCFXWideString() : L""; |
+ CFX_WideString cMsg = iLength > 5 ? params[5].ToCFXWideString() : L""; |
CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)m_pDocument->GetInterForm(); |
ASSERT(pInterForm != NULL); |
@@ -460,11 +460,11 @@ FX_BOOL Document::print(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Val |
{ |
if (params[8].GetType() == VT_fxobject) |
{ |
- JSFXObject pObj = (JSFXObject)params[8]; |
+ JSFXObject pObj = params[8].ToV8Object(); |
{ |
if (JS_GetObjDefnID(pObj) == JS_GetObjDefnID(*pRuntime, L"PrintParamsObj")) |
{ |
- if (CJS_Object* pJSObj = (CJS_Object*)params[8]) |
+ if (CJS_Object* pJSObj = params[8].ToCJSObject()) |
{ |
if (PrintParamsObj* pprintparamsObj = (PrintParamsObj*)pJSObj->GetEmbedObject()) |
{ |
@@ -485,21 +485,21 @@ FX_BOOL Document::print(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Val |
else |
{ |
if(nlength >= 1) |
- bUI = params[0]; |
+ bUI = params[0].ToBool(); |
if(nlength >= 2) |
- nStart = (int)params[1]; |
+ nStart = params[1].ToInt(); |
if(nlength >= 3) |
- nEnd = (int)params[2]; |
+ nEnd = params[2].ToInt(); |
if(nlength >= 4) |
- bSilent = params[3]; |
+ bSilent = params[3].ToBool(); |
if(nlength >= 5) |
- bShrinkToFit = params[4]; |
+ bShrinkToFit = params[4].ToBool(); |
if(nlength >= 6) |
- bPrintAsImage = params[5]; |
+ bPrintAsImage = params[5].ToBool(); |
if(nlength >= 7) |
- bReverse = params[6]; |
+ bReverse = params[6].ToBool(); |
if(nlength >= 8) |
- bAnnotations = params[7]; |
+ bAnnotations = params[7].ToBool(); |
} |
ASSERT(m_pDocument != NULL); |
@@ -526,7 +526,7 @@ FX_BOOL Document::removeField(IFXJS_Context* cc, const CJS_Parameters& params, C |
if (params.size() < 1) |
return TRUE; |
- CFX_WideString sFieldName = params[0].operator CFX_WideString(); |
+ CFX_WideString sFieldName = params[0].ToCFXWideString(); |
CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)m_pDocument->GetInterForm(); |
ASSERT(pInterForm != NULL); |
@@ -592,7 +592,7 @@ FX_BOOL Document::resetForm(IFXJS_Context* cc, const CJS_Parameters& params, CJS |
switch (params[0].GetType()) |
{ |
default: |
- aName.Attach(params[0]); |
+ aName.Attach(params[0].ToV8Array()); |
break; |
case VT_string: |
aName.SetElement(0,params[0]); |
@@ -605,7 +605,7 @@ FX_BOOL Document::resetForm(IFXJS_Context* cc, const CJS_Parameters& params, CJS |
{ |
CJS_Value valElement(isolate); |
aName.GetElement(i,valElement); |
- CFX_WideString swVal = valElement.operator CFX_WideString(); |
+ CFX_WideString swVal = valElement.ToCFXWideString(); |
for (int j=0,jsz=pPDFForm->CountFields(swVal); j<jsz; j++) |
{ |
@@ -656,26 +656,26 @@ FX_BOOL Document::submitForm(IFXJS_Context* cc, const CJS_Parameters& params, CJ |
CJS_Value v = params[0]; |
if (v.GetType() == VT_string) |
{ |
- strURL = params[0].operator CFX_WideString(); |
+ strURL = params[0].ToCFXWideString(); |
if (nSize > 1) |
- bFDF = params[1]; |
+ bFDF = params[1].ToBool(); |
if (nSize > 2) |
- bEmpty = params[2]; |
+ bEmpty = params[2].ToBool(); |
if (nSize > 3) |
- aFields.Attach(params[3]); |
+ aFields.Attach(params[3].ToV8Array()); |
} |
else if (v.GetType() == VT_object) |
{ |
- JSObject pObj = (JSObject)params[0]; |
- v8::Handle<v8::Value> pValue = JS_GetObjectElement(isolate,pObj, L"cURL"); |
+ JSObject pObj = params[0].ToV8Object(); |
+ v8::Handle<v8::Value> pValue = JS_GetObjectElement(isolate, pObj, L"cURL"); |
if (!pValue.IsEmpty()) |
- strURL = CJS_Value(isolate,pValue,GET_VALUE_TYPE(pValue)); |
- pValue = JS_GetObjectElement(isolate,pObj, L"bFDF"); |
- bFDF = CJS_Value(isolate,pValue, GET_VALUE_TYPE(pValue)); |
- pValue = JS_GetObjectElement(isolate,pObj, L"bEmpty"); |
- bEmpty = CJS_Value(isolate,pValue, GET_VALUE_TYPE(pValue)); |
- pValue = JS_GetObjectElement(isolate,pObj,L"aFields"); |
- aFields.Attach(CJS_Value(isolate,pValue, GET_VALUE_TYPE(pValue))); |
+ strURL = CJS_Value(isolate, pValue, GET_VALUE_TYPE(pValue)).ToCFXWideString(); |
+ pValue = JS_GetObjectElement(isolate, pObj, L"bFDF"); |
+ bFDF = CJS_Value(isolate, pValue, GET_VALUE_TYPE(pValue)).ToBool(); |
+ pValue = JS_GetObjectElement(isolate, pObj, L"bEmpty"); |
+ bEmpty = CJS_Value(isolate, pValue, GET_VALUE_TYPE(pValue)).ToBool(); |
+ pValue = JS_GetObjectElement(isolate, pObj,L"aFields"); |
+ aFields.Attach(CJS_Value(isolate, pValue, GET_VALUE_TYPE(pValue)).ToV8Array()); |
} |
CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)m_pDocument->GetInterForm(); |
@@ -710,7 +710,7 @@ FX_BOOL Document::submitForm(IFXJS_Context* cc, const CJS_Parameters& params, CJ |
{ |
CJS_Value valName(isolate); |
aFields.GetElement(i, valName); |
- CFX_WideString sName = valName.operator CFX_WideString(); |
+ CFX_WideString sName = valName.ToCFXWideString(); |
CPDF_InterForm* pPDFForm = pInterForm->GetInterForm(); |
ASSERT(pPDFForm != NULL); |
@@ -773,6 +773,7 @@ FX_BOOL Document::bookmarkRoot(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideStr |
FX_BOOL Document::mailDoc(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Value& vRet, CFX_WideString& sError) |
{ |
ASSERT(m_pDocument != NULL); |
+ v8::Isolate* isolate = GetIsolate(cc); |
Lei Zhang
2015/04/22 22:53:42
nit: what was wrong with having this in the previo
Tom Sepez
2015/04/23 16:10:22
Artifact of a larger re-org that I started here bu
|
FX_BOOL bUI = TRUE; |
CFX_WideString cTo = L""; |
@@ -781,37 +782,41 @@ FX_BOOL Document::mailDoc(IFXJS_Context* cc, const CJS_Parameters& params, CJS_V |
CFX_WideString cSubject = L""; |
CFX_WideString cMsg = L""; |
+ if (params.size() >= 1) |
+ bUI = params[0].ToBool(); |
+ if (params.size() >= 2) |
+ cTo = params[1].ToCFXWideString(); |
+ if (params.size() >= 3) |
+ cCc = params[2].ToCFXWideString(); |
+ if (params.size() >= 4) |
+ cBcc = params[3].ToCFXWideString(); |
+ if (params.size() >= 5) |
+ cSubject = params[4].ToCFXWideString(); |
+ if (params.size() >= 6) |
+ cMsg = params[5].ToCFXWideString(); |
- bUI = params.size()>=1?static_cast<FX_BOOL>(params[0]):TRUE; |
- cTo = params.size()>=2?(const wchar_t*)params[1].operator CFX_WideString():L""; |
- cCc = params.size()>=3?(const wchar_t*)params[2].operator CFX_WideString():L""; |
- cBcc = params.size()>=4?(const wchar_t*)params[3].operator CFX_WideString():L""; |
- cSubject = params.size()>=5?(const wchar_t*)params[4].operator CFX_WideString():L""; |
- cMsg = params.size()>=6?(const wchar_t*)params[5].operator CFX_WideString():L""; |
- |
- v8::Isolate* isolate = GetIsolate(cc); |
- if(params.size()>=1 && params[0].GetType() == VT_object) |
+ if(params.size() >= 1 && params[0].GetType() == VT_object) |
{ |
- JSObject pObj = (JSObject )params[0]; |
+ JSObject pObj = params[0].ToV8Object(); |
v8::Handle<v8::Value> pValue = JS_GetObjectElement(isolate,pObj, L"bUI"); |
- bUI = (int)CJS_Value(isolate,pValue,GET_VALUE_TYPE(pValue)); |
+ bUI = CJS_Value(isolate,pValue,GET_VALUE_TYPE(pValue)).ToInt(); |
pValue = JS_GetObjectElement(isolate,pObj, L"cTo"); |
- cTo = CJS_Value(isolate,pValue,GET_VALUE_TYPE(pValue)).operator CFX_WideString(); |
+ cTo = CJS_Value(isolate,pValue,GET_VALUE_TYPE(pValue)).ToCFXWideString(); |
pValue = JS_GetObjectElement(isolate,pObj, L"cCc"); |
- cCc = CJS_Value(isolate,pValue,GET_VALUE_TYPE(pValue)).operator CFX_WideString(); |
+ cCc = CJS_Value(isolate,pValue,GET_VALUE_TYPE(pValue)).ToCFXWideString(); |
pValue = JS_GetObjectElement(isolate,pObj, L"cBcc"); |
- cBcc = CJS_Value(isolate,pValue,GET_VALUE_TYPE(pValue)).operator CFX_WideString(); |
+ cBcc = CJS_Value(isolate,pValue,GET_VALUE_TYPE(pValue)).ToCFXWideString(); |
pValue = JS_GetObjectElement(isolate,pObj, L"cSubject"); |
- cSubject = CJS_Value(isolate,pValue,GET_VALUE_TYPE(pValue)).operator CFX_WideString(); |
+ cSubject = CJS_Value(isolate,pValue,GET_VALUE_TYPE(pValue)).ToCFXWideString(); |
pValue = JS_GetObjectElement(isolate,pObj, L"cMsg"); |
- cMsg = CJS_Value(isolate,pValue,GET_VALUE_TYPE(pValue)).operator CFX_WideString(); |
+ cMsg = CJS_Value(isolate,pValue,GET_VALUE_TYPE(pValue)).ToCFXWideString(); |
} |
@@ -1459,12 +1464,12 @@ FX_BOOL Document::addIcon(IFXJS_Context* cc, const CJS_Parameters& params, CJS_V |
CJS_Runtime* pRuntime = pContext->GetJSRuntime(); |
ASSERT(pRuntime != NULL); |
- CFX_WideString swIconName = params[0].operator CFX_WideString(); |
+ CFX_WideString swIconName = params[0].ToCFXWideString(); |
- JSFXObject pJSIcon = (JSFXObject)params[1]; |
+ JSFXObject pJSIcon = params[1].ToV8Object(); |
if (JS_GetObjDefnID(pJSIcon) != JS_GetObjDefnID(*pRuntime, L"Icon")) return FALSE; |
- CJS_EmbedObj* pEmbedObj = ((CJS_Object*)params[1])->GetEmbedObject(); |
+ CJS_EmbedObj* pEmbedObj = params[1].ToCJSObject()->GetEmbedObject(); |
if (!pEmbedObj)return FALSE; |
Icon* pIcon = (Icon*)pEmbedObj; |
@@ -1527,7 +1532,7 @@ FX_BOOL Document::getIcon(IFXJS_Context* cc, const CJS_Parameters& params, CJS_V |
if (params.size() != 1)return FALSE; |
if(!m_pIconTree) |
return FALSE; |
- CFX_WideString swIconName = params[0].operator CFX_WideString(); |
+ CFX_WideString swIconName = params[0].ToCFXWideString(); |
int iIconCounts = m_pIconTree->GetLength(); |
CJS_Context* pContext = (CJS_Context *)cc; |
@@ -1563,7 +1568,7 @@ FX_BOOL Document::removeIcon(IFXJS_Context* cc, const CJS_Parameters& params, CJ |
if (params.size() != 1)return FALSE; |
if(!m_pIconTree) |
return FALSE; |
- CFX_WideString swIconName = params[0].operator CFX_WideString(); |
+ CFX_WideString swIconName = params[0].ToCFXWideString(); |
return TRUE; |
} |
@@ -1603,9 +1608,9 @@ FX_BOOL Document::getPageNthWord(IFXJS_Context* cc, const CJS_Parameters& params |
if (!m_pDocument->GetPermissions(FPDFPERM_EXTRACT_ACCESS)) return FALSE; |
- int nPageNo = params.GetSize() > 0 ? (int)params[0] : 0; |
- int nWordNo = params.GetSize() > 1 ? (int)params[1] : 0; |
- bool bStrip = params.GetSize() > 2 ? (bool)params[2] : true; |
+ int nPageNo = params.GetSize() > 0 ? params[0].ToInt() : 0; |
+ int nWordNo = params.GetSize() > 1 ? params[1].ToInt() : 0; |
+ bool bStrip = params.GetSize() > 2 ? params[2].ToBool() : true; |
CPDF_Document* pDocument = m_pDocument->GetDocument(); |
if (!pDocument) return FALSE; |
@@ -1675,7 +1680,7 @@ FX_BOOL Document::getPageNumWords(IFXJS_Context* cc, const CJS_Parameters& param |
if (!m_pDocument->GetPermissions(FPDFPERM_EXTRACT_ACCESS)) return FALSE; |
- int nPageNo = params.GetSize() > 0 ? (int)params[0] : 0; |
+ int nPageNo = params.GetSize() > 0 ? params[0].ToInt() : 0; |
CPDF_Document* pDocument = m_pDocument->GetDocument(); |
ASSERT(pDocument != NULL); |
@@ -1847,22 +1852,22 @@ FX_BOOL Document::deletePages(IFXJS_Context* cc, const CJS_Parameters& params, C |
{ |
if (params[0].GetType() == VT_object) |
{ |
- JSObject pObj = (JSObject )params[0]; |
- v8::Handle<v8::Value> pValue = JS_GetObjectElement(isolate,pObj, L"nStart"); |
- nStart = (int)CJS_Value(m_isolate,pValue,GET_VALUE_TYPE(pValue)); |
+ JSObject pObj = params[0].ToV8Object(); |
+ v8::Handle<v8::Value> pValue = JS_GetObjectElement(isolate, pObj, L"nStart"); |
+ nStart = CJS_Value(m_isolate, pValue, GET_VALUE_TYPE(pValue)).ToInt(); |
- pValue = JS_GetObjectElement(isolate,pObj, L"nEnd"); |
- nEnd = (int)CJS_Value(m_isolate,pValue,GET_VALUE_TYPE(pValue)); |
+ pValue = JS_GetObjectElement(isolate, pObj, L"nEnd"); |
+ nEnd = CJS_Value(m_isolate, pValue, GET_VALUE_TYPE(pValue)).ToInt(); |
} |
else |
{ |
- nStart = (int)params[0]; |
+ nStart = params[0].ToInt(); |
} |
} |
else |
{ |
- nStart = (int)params[0]; |
- nEnd = (int)params[1]; |
+ nStart = params[0].ToInt(); |
+ nEnd = params[1].ToInt(); |
} |
int nTotal = m_pDocument->GetPageCount(); |