| 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 280 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 291 for (int i=0,sz=m_pGlobalData->GetSize(); i<sz; i++) | 291 for (int i=0,sz=m_pGlobalData->GetSize(); i<sz; i++) |
| 292 { | 292 { |
| 293 CJS_GlobalData_Element* pData = m_pGlobalData->GetAt(i); | 293 CJS_GlobalData_Element* pData = m_pGlobalData->GetAt(i); |
| 294 ASSERT(pData != NULL); | 294 ASSERT(pData != NULL); |
| 295 | 295 |
| 296 switch (pData->data.nType) | 296 switch (pData->data.nType) |
| 297 { | 297 { |
| 298 case JS_GLOBALDATA_TYPE_NUMBER: | 298 case JS_GLOBALDATA_TYPE_NUMBER: |
| 299 this->SetGlobalVariables(pData->data.sKey, JS_GLOBALDATA
_TYPE_NUMBER, pData->data.dData, false, "", v8::Handle<v8::Object>(), pData->bPe
rsistent == 1); | 299 this->SetGlobalVariables(pData->data.sKey, JS_GLOBALDATA
_TYPE_NUMBER, pData->data.dData, false, "", v8::Handle<v8::Object>(), pData->bPe
rsistent == 1); |
| 300 JS_PutObjectNumber(NULL,(JSFXObject)(*m_pJSObject), | 300 JS_PutObjectNumber(NULL,(JSFXObject)(*m_pJSObject), |
| 301 » » » » pData->data.sKey.UTF8Decode(), pData->data.dData
); | 301 » » » » » » » pData->data.sKey.UTF8
Decode().c_str(), pData->data.dData); |
| 302 break; | 302 break; |
| 303 case JS_GLOBALDATA_TYPE_BOOLEAN: | 303 case JS_GLOBALDATA_TYPE_BOOLEAN: |
| 304 this->SetGlobalVariables(pData->data.sKey, JS_GLOBALDATA
_TYPE_BOOLEAN, 0, (bool)(pData->data.bData == 1), "", v8::Handle<v8::Object>(),
pData->bPersistent == 1); | 304 this->SetGlobalVariables(pData->data.sKey, JS_GLOBALDATA
_TYPE_BOOLEAN, 0, (bool)(pData->data.bData == 1), "", v8::Handle<v8::Object>(),
pData->bPersistent == 1); |
| 305 JS_PutObjectBoolean(NULL,(JSFXObject)(*m_pJSObject), | 305 JS_PutObjectBoolean(NULL,(JSFXObject)(*m_pJSObject), |
| 306 » » » » pData->data.sKey.UTF8Decode(), (bool)(pData->dat
a.bData == 1)); | 306 » » » » » » » » pData->data.sKey
.UTF8Decode().c_str(), (bool)(pData->data.bData == 1)); |
| 307 break; | 307 break; |
| 308 case JS_GLOBALDATA_TYPE_STRING: | 308 case JS_GLOBALDATA_TYPE_STRING: |
| 309 this->SetGlobalVariables(pData->data.sKey, JS_GLOBALDATA
_TYPE_STRING, 0, false, pData->data.sData, v8::Handle<v8::Object>(), pData->bPer
sistent == 1); | 309 this->SetGlobalVariables(pData->data.sKey, JS_GLOBALDATA
_TYPE_STRING, 0, false, pData->data.sData, v8::Handle<v8::Object>(), pData->bPer
sistent == 1); |
| 310 » » » JS_PutObjectString(NULL,(JSFXObject)(*m_pJSObject), | 310 » » » JS_PutObjectString(NULL, (JSFXObject)(*m_pJSObject), |
| 311 » » » » pData->data.sKey.UTF8Decode(), | 311 » » » » » » » pData->data.sKey.UTF8
Decode().c_str(), |
| 312 » » » » pData->data.sData.UTF8Decode()); | 312 » » » » » » » pData->data.sData.UTF
8Decode().c_str()); |
| 313 break; | 313 break; |
| 314 case JS_GLOBALDATA_TYPE_OBJECT: | 314 case JS_GLOBALDATA_TYPE_OBJECT: |
| 315 { | 315 { |
| 316 IJS_Runtime* pRuntime = JS_GetRuntime((JSFXObjec
t)(*m_pJSObject)); | 316 IJS_Runtime* pRuntime = JS_GetRuntime((JSFXObjec
t)(*m_pJSObject)); |
| 317 v8::Handle<v8::Object> pObj = JS_NewFxDynamicObj
(pRuntime, NULL, -1); | 317 v8::Handle<v8::Object> pObj = JS_NewFxDynamicObj
(pRuntime, NULL, -1); |
| 318 | 318 |
| 319 PutObjectProperty(pObj, &pData->data); | 319 PutObjectProperty(pObj, &pData->data); |
| 320 | 320 |
| 321 this->SetGlobalVariables(pData->data.sKey, JS_GL
OBALDATA_TYPE_OBJECT, 0, false, "", | 321 this->SetGlobalVariables(pData->data.sKey, JS_GL
OBALDATA_TYPE_OBJECT, 0, false, "", |
| 322 (JSObject)pObj, pData->bPersistent == 1)
; | 322 (JSObject)pObj, pData->bPersistent == 1)
; |
| 323 JS_PutObjectObject(NULL,(JSFXObject)(*m_pJSObjec
t), | 323 JS_PutObjectObject(NULL,(JSFXObject)(*m_pJSObjec
t), |
| 324 » » » » » pData->data.sKey.UTF8Decode(), (JSObject
)pObj); | 324 » » » » » » » » pData->data.s
Key.UTF8Decode().c_str(), (JSObject)pObj); |
| 325 } | 325 } |
| 326 break; | 326 break; |
| 327 case JS_GLOBALDATA_TYPE_NULL: | 327 case JS_GLOBALDATA_TYPE_NULL: |
| 328 this->SetGlobalVariables(pData->data.sKey, JS_GLOBALDATA
_TYPE_NULL, 0, false, "", v8::Handle<v8::Object>(), pData->bPersistent == 1); | 328 this->SetGlobalVariables(pData->data.sKey, JS_GLOBALDATA
_TYPE_NULL, 0, false, "", v8::Handle<v8::Object>(), pData->bPersistent == 1); |
| 329 JS_PutObjectNull(NULL,(JSFXObject)(*m_pJSObject), | 329 JS_PutObjectNull(NULL,(JSFXObject)(*m_pJSObject), |
| 330 » » » » pData->data.sKey.UTF8Decode()); | 330 » » » » » » » pData->data.sKey.UTF8De
code().c_str()); |
| 331 break; | 331 break; |
| 332 } | 332 } |
| 333 } | 333 } |
| 334 } | 334 } |
| 335 | 335 |
| 336 void global_alternate::CommitGlobalPersisitentVariables() | 336 void global_alternate::CommitGlobalPersisitentVariables() |
| 337 { | 337 { |
| 338 ASSERT(m_pGlobalData != NULL); | 338 ASSERT(m_pGlobalData != NULL); |
| 339 | 339 |
| 340 FX_POSITION pos = m_mapGlobal.GetStartPosition(); | 340 FX_POSITION pos = m_mapGlobal.GetStartPosition(); |
| (...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 460 ASSERT(pData != NULL); | 460 ASSERT(pData != NULL); |
| 461 | 461 |
| 462 for (int i=0,sz=pData->objData.Count(); i<sz; i++) | 462 for (int i=0,sz=pData->objData.Count(); i<sz; i++) |
| 463 { | 463 { |
| 464 CJS_KeyValue* pObjData = pData->objData.GetAt(i); | 464 CJS_KeyValue* pObjData = pData->objData.GetAt(i); |
| 465 ASSERT(pObjData != NULL); | 465 ASSERT(pObjData != NULL); |
| 466 | 466 |
| 467 switch (pObjData->nType) | 467 switch (pObjData->nType) |
| 468 { | 468 { |
| 469 case JS_GLOBALDATA_TYPE_NUMBER: | 469 case JS_GLOBALDATA_TYPE_NUMBER: |
| 470 » » » JS_PutObjectNumber(NULL,(JSObject)pObj, pObjData->sKey.U
TF8Decode(), pObjData->dData); | 470 » » » JS_PutObjectNumber(NULL,(JSObject)pObj, pObjData->sKey.U
TF8Decode().c_str(), pObjData->dData); |
| 471 break; | 471 break; |
| 472 case JS_GLOBALDATA_TYPE_BOOLEAN: | 472 case JS_GLOBALDATA_TYPE_BOOLEAN: |
| 473 » » » JS_PutObjectBoolean(NULL,(JSObject)pObj, pObjData->sKey.
UTF8Decode(), (bool)(pObjData->bData == 1)); | 473 » » » JS_PutObjectBoolean(NULL,(JSObject)pObj, pObjData->sKey.
UTF8Decode().c_str(), (bool)(pObjData->bData == 1)); |
| 474 break; | 474 break; |
| 475 case JS_GLOBALDATA_TYPE_STRING: | 475 case JS_GLOBALDATA_TYPE_STRING: |
| 476 » » » JS_PutObjectString(NULL,(JSObject)pObj, pObjData->sKey.U
TF8Decode(), pObjData->sData.UTF8Decode()); | 476 » » » JS_PutObjectString(NULL,(JSObject)pObj, pObjData->sKey.U
TF8Decode().c_str(), pObjData->sData.UTF8Decode().c_str()); |
| 477 break; | 477 break; |
| 478 case JS_GLOBALDATA_TYPE_OBJECT: | 478 case JS_GLOBALDATA_TYPE_OBJECT: |
| 479 { | 479 { |
| 480 IJS_Runtime* pRuntime = JS_GetRuntime((JSFXObjec
t)(*m_pJSObject)); | 480 IJS_Runtime* pRuntime = JS_GetRuntime((JSFXObjec
t)(*m_pJSObject)); |
| 481 v8::Handle<v8::Object> pNewObj = JS_NewFxDynamic
Obj(pRuntime, NULL, -1); | 481 v8::Handle<v8::Object> pNewObj = JS_NewFxDynamic
Obj(pRuntime, NULL, -1); |
| 482 PutObjectProperty(pNewObj, pObjData); | 482 PutObjectProperty(pNewObj, pObjData); |
| 483 » » » » JS_PutObjectObject(NULL, (JSObject)pObj, pObjDat
a->sKey.UTF8Decode(), (JSObject)pNewObj); | 483 » » » » JS_PutObjectObject(NULL, (JSObject)pObj, pObjDat
a->sKey.UTF8Decode().c_str(), (JSObject)pNewObj); |
| 484 } | 484 } |
| 485 break; | 485 break; |
| 486 case JS_GLOBALDATA_TYPE_NULL: | 486 case JS_GLOBALDATA_TYPE_NULL: |
| 487 » » » JS_PutObjectNull(NULL,(JSObject)pObj, pObjData->sKey.UTF
8Decode()); | 487 » » » JS_PutObjectNull(NULL,(JSObject)pObj, pObjData->sKey.UTF
8Decode().c_str()); |
| 488 break; | 488 break; |
| 489 } | 489 } |
| 490 } | 490 } |
| 491 } | 491 } |
| 492 | 492 |
| 493 void global_alternate::DestroyGlobalPersisitentVariables() | 493 void global_alternate::DestroyGlobalPersisitentVariables() |
| 494 { | 494 { |
| 495 FX_POSITION pos = m_mapGlobal.GetStartPosition(); | 495 FX_POSITION pos = m_mapGlobal.GetStartPosition(); |
| 496 while (pos) | 496 while (pos) |
| 497 { | 497 { |
| (...skipping 127 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 625 if (nHash == JSCONST_nDateHash) | 625 if (nHash == JSCONST_nDateHash) |
| 626 return VT_date; | 626 return VT_date; |
| 627 if (nHash == JSCONST_nObjectHash) | 627 if (nHash == JSCONST_nObjectHash) |
| 628 return VT_object; | 628 return VT_object; |
| 629 if (nHash == JSCONST_nFXobjHash) | 629 if (nHash == JSCONST_nFXobjHash) |
| 630 return VT_fxobject; | 630 return VT_fxobject; |
| 631 | 631 |
| 632 return VT_unknown; | 632 return VT_unknown; |
| 633 } | 633 } |
| 634 | 634 |
| OLD | NEW |