| 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 "../../include/javascript/IJavaScript.h" | 7 #include "../../include/javascript/IJavaScript.h" |
| 8 #include "../../include/javascript/JS_Context.h" | 8 #include "../../include/javascript/JS_Context.h" |
| 9 #include "../../include/javascript/JS_Define.h" | 9 #include "../../include/javascript/JS_Define.h" |
| 10 #include "../../include/javascript/JS_EventHandler.h" | 10 #include "../../include/javascript/JS_EventHandler.h" |
| (...skipping 157 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 168 case VT_number: | 168 case VT_number: |
| 169 { | 169 { |
| 170 double dData; | 170 double dData; |
| 171 vp >> dData; | 171 vp >> dData; |
| 172 return SetGlobalVariables(sPropName, JS_GLOBALDA
TA_TYPE_NUMBER, dData, false, "", v8::Handle<v8::Object>(), FALSE); | 172 return SetGlobalVariables(sPropName, JS_GLOBALDA
TA_TYPE_NUMBER, dData, false, "", v8::Handle<v8::Object>(), FALSE); |
| 173 } | 173 } |
| 174 case VT_boolean: | 174 case VT_boolean: |
| 175 { | 175 { |
| 176 bool bData; | 176 bool bData; |
| 177 vp >> bData; | 177 vp >> bData; |
| 178 » » » » return SetGlobalVariables(sPropName, JS_GLOBALDA
TA_TYPE_BOOLEAN, 0, (bool)vp, "", v8::Handle<v8::Object>(), FALSE); | 178 » » » » return SetGlobalVariables(sPropName, JS_GLOBALDA
TA_TYPE_BOOLEAN, 0, bData, "", v8::Handle<v8::Object>(), FALSE); |
| 179 } | 179 } |
| 180 case VT_string: | 180 case VT_string: |
| 181 { | 181 { |
| 182 CFX_ByteString sData; | 182 CFX_ByteString sData; |
| 183 vp >> sData; | 183 vp >> sData; |
| 184 return SetGlobalVariables(sPropName, JS_GLOBALDA
TA_TYPE_STRING, 0, false, sData, v8::Handle<v8::Object>(), FALSE); | 184 return SetGlobalVariables(sPropName, JS_GLOBALDA
TA_TYPE_STRING, 0, false, sData, v8::Handle<v8::Object>(), FALSE); |
| 185 } | 185 } |
| 186 case VT_object: | 186 case VT_object: |
| 187 { | 187 { |
| 188 » » » » JSObject pData = (JSObject)vp; | 188 » » » » JSObject pData; |
| 189 » » » » vp >> pData; |
| 189 return SetGlobalVariables(sPropName, JS_GLOBALDA
TA_TYPE_OBJECT, 0, false, "", pData, FALSE); | 190 return SetGlobalVariables(sPropName, JS_GLOBALDA
TA_TYPE_OBJECT, 0, false, "", pData, FALSE); |
| 190 // else | |
| 191 // { | |
| 192 // if (vp.IsArrayObject()) | |
| 193 // { | |
| 194 // CJS_Array array; | |
| 195 // vp.ConvertToArray(array); | |
| 196 // return SetGlobalVariables(sPropN
ame, JS_GLOBALDATA_TYPE_OBJECT, 0, false, "", | |
| 197 // (Dobject*)(Darray*)array
, FALSE); | |
| 198 // } | |
| 199 // else | |
| 200 // return FALSE; | |
| 201 // } | |
| 202 } | 191 } |
| 203 case VT_null: | 192 case VT_null: |
| 204 { | 193 { |
| 205 return SetGlobalVariables(sPropName, JS_GLOBALDA
TA_TYPE_NULL, 0, false, "", v8::Handle<v8::Object>(), FALSE); | 194 return SetGlobalVariables(sPropName, JS_GLOBALDA
TA_TYPE_NULL, 0, false, "", v8::Handle<v8::Object>(), FALSE); |
| 206 } | 195 } |
| 207 case VT_undefined: | 196 case VT_undefined: |
| 208 { | 197 { |
| 209 DelProperty(cc, propname, sError); | 198 DelProperty(cc, propname, sError); |
| 210 return TRUE; | 199 return TRUE; |
| 211 } | 200 } |
| (...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 272 | 261 |
| 273 FX_BOOL global_alternate::setPersistent(IFXJS_Context* cc, const CJS_Parameters&
params, CJS_Value& vRet, CFX_WideString& sError) | 262 FX_BOOL global_alternate::setPersistent(IFXJS_Context* cc, const CJS_Parameters&
params, CJS_Value& vRet, CFX_WideString& sError) |
| 274 { | 263 { |
| 275 CJS_Context* pContext = static_cast<CJS_Context*>(cc); | 264 CJS_Context* pContext = static_cast<CJS_Context*>(cc); |
| 276 if (params.size() != 2) | 265 if (params.size() != 2) |
| 277 { | 266 { |
| 278 sError = JSGetStringFromID(pContext, IDS_STRING_JSPARAMERROR); | 267 sError = JSGetStringFromID(pContext, IDS_STRING_JSPARAMERROR); |
| 279 return FALSE; | 268 return FALSE; |
| 280 } | 269 } |
| 281 | 270 |
| 282 » CFX_ByteString sName = params[0]; | 271 » CFX_ByteString sName = params[0].ToCFXByteString(); |
| 283 | 272 |
| 284 js_global_data* pData = NULL; | 273 js_global_data* pData = NULL; |
| 285 if (m_mapGlobal.Lookup(sName, (FX_LPVOID&)pData)) | 274 if (m_mapGlobal.Lookup(sName, (FX_LPVOID&)pData)) |
| 286 { | 275 { |
| 287 if (pData && !pData->bDeleted) | 276 if (pData && !pData->bDeleted) |
| 288 { | 277 { |
| 289 » » » pData->bPersistent = (bool)params[1]; | 278 » » » pData->bPersistent = params[1].ToBool(); |
| 290 return TRUE; | 279 return TRUE; |
| 291 } | 280 } |
| 292 } | 281 } |
| 293 | 282 |
| 294 sError = JSGetStringFromID(pContext, IDS_STRING_JSNOGLOBAL); | 283 sError = JSGetStringFromID(pContext, IDS_STRING_JSNOGLOBAL); |
| 295 return FALSE; | 284 return FALSE; |
| 296 } | 285 } |
| 297 | 286 |
| 298 void global_alternate::UpdateGlobalPersistentVariables() | 287 void global_alternate::UpdateGlobalPersistentVariables() |
| 299 { | 288 { |
| (...skipping 128 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 428 { | 417 { |
| 429 CJS_KeyValue* pObjElement = new CJS_KeyValue; | 418 CJS_KeyValue* pObjElement = new CJS_KeyValue; |
| 430 pObjElement->nType = JS_GLOBALDATA_TYPE_BOOLEAN; | 419 pObjElement->nType = JS_GLOBALDATA_TYPE_BOOLEAN; |
| 431 pObjElement->sKey = sKey; | 420 pObjElement->sKey = sKey; |
| 432 pObjElement->dData = JS_ToBoolean(v); | 421 pObjElement->dData = JS_ToBoolean(v); |
| 433 array.Add(pObjElement); | 422 array.Add(pObjElement); |
| 434 } | 423 } |
| 435 break; | 424 break; |
| 436 case VT_string: | 425 case VT_string: |
| 437 { | 426 { |
| 438 » » » » CFX_ByteString sValue = CJS_Value(isolate, v, VT
_string); | 427 » » » » CFX_ByteString sValue = CJS_Value(isolate, v, VT
_string).ToCFXByteString(); |
| 439 CJS_KeyValue* pObjElement = new CJS_KeyValue; | 428 CJS_KeyValue* pObjElement = new CJS_KeyValue; |
| 440 pObjElement->nType = JS_GLOBALDATA_TYPE_STRING; | 429 pObjElement->nType = JS_GLOBALDATA_TYPE_STRING; |
| 441 pObjElement->sKey = sKey; | 430 pObjElement->sKey = sKey; |
| 442 pObjElement->sData = sValue; | 431 pObjElement->sData = sValue; |
| 443 array.Add(pObjElement); | 432 array.Add(pObjElement); |
| 444 } | 433 } |
| 445 break; | 434 break; |
| 446 case VT_object: | 435 case VT_object: |
| 447 { | 436 { |
| 448 CJS_KeyValue* pObjElement = new CJS_KeyValue; | 437 CJS_KeyValue* pObjElement = new CJS_KeyValue; |
| (...skipping 187 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 636 if (nHash == JSCONST_nDateHash) | 625 if (nHash == JSCONST_nDateHash) |
| 637 return VT_date; | 626 return VT_date; |
| 638 if (nHash == JSCONST_nObjectHash) | 627 if (nHash == JSCONST_nObjectHash) |
| 639 return VT_object; | 628 return VT_object; |
| 640 if (nHash == JSCONST_nFXobjHash) | 629 if (nHash == JSCONST_nFXobjHash) |
| 641 return VT_fxobject; | 630 return VT_fxobject; |
| 642 | 631 |
| 643 return VT_unknown; | 632 return VT_unknown; |
| 644 } | 633 } |
| 645 | 634 |
| OLD | NEW |