Index: fpdfsdk/include/jsapi/fxjs_v8.h |
diff --git a/fpdfsdk/include/jsapi/fxjs_v8.h b/fpdfsdk/include/jsapi/fxjs_v8.h |
index e291898701561c7a29cd5932b8cf2a07a0e98d7f..72f2a5de018c1aa261efa8deb1b605aa8a6e803b 100644 |
--- a/fpdfsdk/include/jsapi/fxjs_v8.h |
+++ b/fpdfsdk/include/jsapi/fxjs_v8.h |
@@ -13,127 +13,202 @@ |
#include <v8.h> |
#include "../../../core/include/fxcrt/fx_string.h" // For CFX_WideString |
-typedef v8::Value JSValue; |
-typedef v8::Local<v8::Object> JSObject; |
-typedef v8::Local<v8::Object> JSFXObject; |
- |
-enum FXJSOBJTYPE |
-{ |
- JS_DYNAMIC = 0, |
- JS_STATIC = 1, |
+typedef v8::Value JSValue; |
+typedef v8::Local<v8::Object> JSObject; |
+typedef v8::Local<v8::Object> JSFXObject; |
+ |
+enum FXJSOBJTYPE { |
+ JS_DYNAMIC = 0, |
+ JS_STATIC = 1, |
}; |
-enum FXJSVALUETYPE |
-{ |
- VT_unknown, |
- VT_string, |
- VT_number, |
- VT_boolean, |
- VT_date, |
- VT_object, |
- VT_fxobject, |
- VT_null, |
- VT_undefined |
+enum FXJSVALUETYPE { |
+ VT_unknown, |
+ VT_string, |
+ VT_number, |
+ VT_boolean, |
+ VT_date, |
+ VT_object, |
+ VT_fxobject, |
+ VT_null, |
+ VT_undefined |
}; |
-struct FXJSErr |
-{ |
- const wchar_t* message; |
- const wchar_t* srcline; |
- unsigned linnum; |
+struct FXJSErr { |
+ const wchar_t* message; |
+ const wchar_t* srcline; |
+ unsigned linnum; |
}; |
-/* --------------------------------------------- API --------------------------------------------- */ |
+/* --------------------------------------------- API |
+ * --------------------------------------------- */ |
typedef v8::Isolate IJS_Runtime; |
class IFXJS_Context; |
class IFXJS_Runtime; |
-typedef void (*LP_CONSTRUCTOR)(IFXJS_Context* cc, v8::Local<v8::Object> obj, v8::Local<v8::Object> global); |
+typedef void (*LP_CONSTRUCTOR)(IFXJS_Context* cc, |
+ v8::Local<v8::Object> obj, |
+ v8::Local<v8::Object> global); |
typedef void (*LP_DESTRUCTOR)(v8::Local<v8::Object> obj); |
- |
-int JS_DefineObj(IJS_Runtime* pJSRuntime, const wchar_t* sObjName, FXJSOBJTYPE eObjType, LP_CONSTRUCTOR pConstructor, LP_DESTRUCTOR pDestructor); |
-int JS_DefineObjMethod(IJS_Runtime* pJSRuntime, int nObjDefnID, const wchar_t* sMethodName, v8::FunctionCallback pMethodCall); |
-int JS_DefineObjProperty(IJS_Runtime* pJSRuntime, int nObjDefnID, const wchar_t* sPropName, v8::AccessorGetterCallback pPropGet, v8::AccessorSetterCallback pPropPut); |
-int JS_DefineObjAllProperties(IJS_Runtime* pJSRuntime, int nObjDefnID, v8::NamedPropertyQueryCallback pPropQurey, v8::NamedPropertyGetterCallback pPropGet, v8::NamedPropertySetterCallback pPropPut, v8::NamedPropertyDeleterCallback pPropDel); |
-int JS_DefineObjConst(IJS_Runtime* pJSRuntime, int nObjDefnID, const wchar_t* sConstName, v8::Local<v8::Value> pDefault); |
-int JS_DefineGlobalMethod(IJS_Runtime* pJSRuntime, const wchar_t* sMethodName, v8::FunctionCallback pMethodCall); |
-int JS_DefineGlobalConst(IJS_Runtime* pJSRuntime, const wchar_t* sConstName, v8::Local<v8::Value> pDefault); |
- |
-void JS_InitialRuntime(IJS_Runtime* pJSRuntime,IFXJS_Runtime* pFXRuntime, IFXJS_Context* context, v8::Global<v8::Context>& v8PersistentContext); |
-void JS_ReleaseRuntime(IJS_Runtime* pJSRuntime, v8::Global<v8::Context>& v8PersistentContext); |
-void JS_Initial(unsigned int embedderDataSlot); |
-void JS_Release(); |
-int JS_Parse(IJS_Runtime* pJSRuntime, IFXJS_Context* pJSContext, const wchar_t* script, long length, FXJSErr* perror); |
-int JS_Execute(IJS_Runtime* pJSRuntime, IFXJS_Context* pJSContext, const wchar_t* script, long length, FXJSErr* perror); |
-v8::Local<v8::Object> JS_NewFxDynamicObj(IJS_Runtime* pJSRuntime, IFXJS_Context* pJSContext, int nObjDefnID); |
-v8::Local<v8::Object> JS_GetStaticObj(IJS_Runtime* pJSRuntime, int nObjDefnID); |
-void JS_SetThisObj(IJS_Runtime* pJSRuntime, int nThisObjID); |
-v8::Local<v8::Object> JS_GetThisObj(IJS_Runtime * pJSRuntime); |
-int JS_GetObjDefnID(v8::Local<v8::Object> pObj); |
-IJS_Runtime* JS_GetRuntime(v8::Local<v8::Object> pObj); |
-int JS_GetObjDefnID(IJS_Runtime * pJSRuntime, const wchar_t* pObjName); |
-void JS_Error(v8::Isolate* isolate, const CFX_WideString& message); |
-unsigned JS_CalcHash(const wchar_t* main, unsigned nLen); |
-unsigned JS_CalcHash(const wchar_t* main); |
-const wchar_t* JS_GetTypeof(v8::Local<v8::Value> pObj); |
-void JS_SetPrivate(IJS_Runtime* pJSRuntime, v8::Local<v8::Object> pObj, void* p); |
-void* JS_GetPrivate(IJS_Runtime* pJSRuntime, v8::Local<v8::Object> pObj); |
-void JS_SetPrivate(v8::Local<v8::Object> pObj, void* p); |
-void* JS_GetPrivate(v8::Local<v8::Object> pObj); |
-void JS_FreePrivate(void* p); |
-void JS_FreePrivate(v8::Local<v8::Object> pObj); |
-v8::Local<v8::Value> JS_GetObjectValue(v8::Local<v8::Object> pObj); |
-v8::Local<v8::Value> JS_GetObjectElement(IJS_Runtime* pJSRuntime, v8::Local<v8::Object> pObj,const wchar_t* PropertyName); |
-v8::Local<v8::Array> JS_GetObjectElementNames(IJS_Runtime* pJSRuntime, v8::Local<v8::Object> pObj); |
-void JS_PutObjectString(IJS_Runtime* pJSRuntime,v8::Local<v8::Object> pObj, const wchar_t* PropertyName, const wchar_t* sValue); |
-void JS_PutObjectNumber(IJS_Runtime* pJSRuntime,v8::Local<v8::Object> pObj, const wchar_t* PropertyName, int nValue); |
-void JS_PutObjectNumber(IJS_Runtime* pJSRuntime,v8::Local<v8::Object> pObj, const wchar_t* PropertyName, float fValue); |
-void JS_PutObjectNumber(IJS_Runtime* pJSRuntime,v8::Local<v8::Object> pObj, const wchar_t* PropertyName, double dValue); |
-void JS_PutObjectBoolean(IJS_Runtime* pJSRuntime,v8::Local<v8::Object> pObj, const wchar_t* PropertyName, bool bValue); |
-void JS_PutObjectObject(IJS_Runtime* pJSRuntime,v8::Local<v8::Object> pObj, const wchar_t* PropertyName, v8::Local<v8::Object> pPut); |
-void JS_PutObjectNull(IJS_Runtime* pJSRuntime,v8::Local<v8::Object> pObj, const wchar_t* PropertyName); |
-unsigned JS_PutArrayElement(IJS_Runtime* pJSRuntime, v8::Local<v8::Array> pArray,unsigned index,v8::Local<v8::Value> pValue,FXJSVALUETYPE eType); |
-v8::Local<v8::Value> JS_GetArrayElement(IJS_Runtime* pJSRuntime, v8::Local<v8::Array> pArray,unsigned index); |
-unsigned JS_GetArrayLength(v8::Local<v8::Array> pArray); |
-v8::Local<v8::Value> JS_GetListValue(IJS_Runtime* pJSRuntime, v8::Local<v8::Value> pList, int index); |
- |
- |
-v8::Local<v8::Array> JS_NewArray(IJS_Runtime* pJSRuntime); |
-v8::Local<v8::Value> JS_NewNumber(IJS_Runtime* pJSRuntime,int number); |
-v8::Local<v8::Value> JS_NewNumber(IJS_Runtime* pJSRuntime,double number); |
-v8::Local<v8::Value> JS_NewNumber(IJS_Runtime* pJSRuntime,float number); |
-v8::Local<v8::Value> JS_NewBoolean(IJS_Runtime* pJSRuntime,bool b); |
-v8::Local<v8::Value> JS_NewObject(IJS_Runtime* pJSRuntime,v8::Local<v8::Object> pObj); |
-v8::Local<v8::Value> JS_NewObject2(IJS_Runtime* pJSRuntime,v8::Local<v8::Array> pObj); |
-v8::Local<v8::Value> JS_NewString(IJS_Runtime* pJSRuntime,const wchar_t* string); |
-v8::Local<v8::Value> JS_NewString(IJS_Runtime* pJSRuntime,const wchar_t* string, unsigned nLen); |
-v8::Local<v8::Value> JS_NewNull(); |
-v8::Local<v8::Value> JS_NewDate(IJS_Runtime* pJSRuntime,double d); |
-v8::Local<v8::Value> JS_NewValue(IJS_Runtime* pJSRuntime); |
- |
- |
-int JS_ToInt32(IJS_Runtime* pJSRuntime, v8::Local<v8::Value> pValue); |
-bool JS_ToBoolean(IJS_Runtime* pJSRuntime, v8::Local<v8::Value> pValue); |
-double JS_ToNumber(IJS_Runtime* pJSRuntime, v8::Local<v8::Value> pValue); |
-v8::Local<v8::Object> JS_ToObject(IJS_Runtime* pJSRuntime, v8::Local<v8::Value> pValue); |
-CFX_WideString JS_ToString(IJS_Runtime* pJSRuntime, v8::Local<v8::Value> pValue); |
-v8::Local<v8::Array> JS_ToArray(IJS_Runtime* pJSRuntime, v8::Local<v8::Value> pValue); |
-void JS_ValueCopy(v8::Local<v8::Value>& pTo, v8::Local<v8::Value> pFrom); |
- |
-double JS_GetDateTime(); |
-int JS_GetYearFromTime(double dt); |
-int JS_GetMonthFromTime(double dt); |
-int JS_GetDayFromTime(double dt); |
-int JS_GetHourFromTime(double dt); |
-int JS_GetMinFromTime(double dt); |
-int JS_GetSecFromTime(double dt); |
-double JS_DateParse(const wchar_t* string); |
-double JS_MakeDay(int nYear, int nMonth, int nDay); |
-double JS_MakeTime(int nHour, int nMin, int nSec, int nMs); |
-double JS_MakeDate(double day, double time); |
-bool JS_PortIsNan(double d); |
-double JS_LocalTime(double d); |
+int JS_DefineObj(IJS_Runtime* pJSRuntime, |
+ const wchar_t* sObjName, |
+ FXJSOBJTYPE eObjType, |
+ LP_CONSTRUCTOR pConstructor, |
+ LP_DESTRUCTOR pDestructor); |
+int JS_DefineObjMethod(IJS_Runtime* pJSRuntime, |
+ int nObjDefnID, |
+ const wchar_t* sMethodName, |
+ v8::FunctionCallback pMethodCall); |
+int JS_DefineObjProperty(IJS_Runtime* pJSRuntime, |
+ int nObjDefnID, |
+ const wchar_t* sPropName, |
+ v8::AccessorGetterCallback pPropGet, |
+ v8::AccessorSetterCallback pPropPut); |
+int JS_DefineObjAllProperties(IJS_Runtime* pJSRuntime, |
+ int nObjDefnID, |
+ v8::NamedPropertyQueryCallback pPropQurey, |
+ v8::NamedPropertyGetterCallback pPropGet, |
+ v8::NamedPropertySetterCallback pPropPut, |
+ v8::NamedPropertyDeleterCallback pPropDel); |
+int JS_DefineObjConst(IJS_Runtime* pJSRuntime, |
+ int nObjDefnID, |
+ const wchar_t* sConstName, |
+ v8::Local<v8::Value> pDefault); |
+int JS_DefineGlobalMethod(IJS_Runtime* pJSRuntime, |
+ const wchar_t* sMethodName, |
+ v8::FunctionCallback pMethodCall); |
+int JS_DefineGlobalConst(IJS_Runtime* pJSRuntime, |
+ const wchar_t* sConstName, |
+ v8::Local<v8::Value> pDefault); |
+ |
+void JS_InitialRuntime(IJS_Runtime* pJSRuntime, |
+ IFXJS_Runtime* pFXRuntime, |
+ IFXJS_Context* context, |
+ v8::Global<v8::Context>& v8PersistentContext); |
+void JS_ReleaseRuntime(IJS_Runtime* pJSRuntime, |
+ v8::Global<v8::Context>& v8PersistentContext); |
+void JS_Initial(unsigned int embedderDataSlot); |
+void JS_Release(); |
+int JS_Parse(IJS_Runtime* pJSRuntime, |
+ IFXJS_Context* pJSContext, |
+ const wchar_t* script, |
+ long length, |
+ FXJSErr* perror); |
+int JS_Execute(IJS_Runtime* pJSRuntime, |
+ IFXJS_Context* pJSContext, |
+ const wchar_t* script, |
+ long length, |
+ FXJSErr* perror); |
+v8::Local<v8::Object> JS_NewFxDynamicObj(IJS_Runtime* pJSRuntime, |
+ IFXJS_Context* pJSContext, |
+ int nObjDefnID); |
+v8::Local<v8::Object> JS_GetStaticObj(IJS_Runtime* pJSRuntime, int nObjDefnID); |
+void JS_SetThisObj(IJS_Runtime* pJSRuntime, int nThisObjID); |
+v8::Local<v8::Object> JS_GetThisObj(IJS_Runtime* pJSRuntime); |
+int JS_GetObjDefnID(v8::Local<v8::Object> pObj); |
+IJS_Runtime* JS_GetRuntime(v8::Local<v8::Object> pObj); |
+int JS_GetObjDefnID(IJS_Runtime* pJSRuntime, const wchar_t* pObjName); |
+void JS_Error(v8::Isolate* isolate, const CFX_WideString& message); |
+unsigned JS_CalcHash(const wchar_t* main, unsigned nLen); |
+unsigned JS_CalcHash(const wchar_t* main); |
+const wchar_t* JS_GetTypeof(v8::Local<v8::Value> pObj); |
+void JS_SetPrivate(IJS_Runtime* pJSRuntime, |
+ v8::Local<v8::Object> pObj, |
+ void* p); |
+void* JS_GetPrivate(IJS_Runtime* pJSRuntime, v8::Local<v8::Object> pObj); |
+void JS_SetPrivate(v8::Local<v8::Object> pObj, void* p); |
+void* JS_GetPrivate(v8::Local<v8::Object> pObj); |
+void JS_FreePrivate(void* p); |
+void JS_FreePrivate(v8::Local<v8::Object> pObj); |
+v8::Local<v8::Value> JS_GetObjectValue(v8::Local<v8::Object> pObj); |
+v8::Local<v8::Value> JS_GetObjectElement(IJS_Runtime* pJSRuntime, |
+ v8::Local<v8::Object> pObj, |
+ const wchar_t* PropertyName); |
+v8::Local<v8::Array> JS_GetObjectElementNames(IJS_Runtime* pJSRuntime, |
+ v8::Local<v8::Object> pObj); |
+void JS_PutObjectString(IJS_Runtime* pJSRuntime, |
+ v8::Local<v8::Object> pObj, |
+ const wchar_t* PropertyName, |
+ const wchar_t* sValue); |
+void JS_PutObjectNumber(IJS_Runtime* pJSRuntime, |
+ v8::Local<v8::Object> pObj, |
+ const wchar_t* PropertyName, |
+ int nValue); |
+void JS_PutObjectNumber(IJS_Runtime* pJSRuntime, |
+ v8::Local<v8::Object> pObj, |
+ const wchar_t* PropertyName, |
+ float fValue); |
+void JS_PutObjectNumber(IJS_Runtime* pJSRuntime, |
+ v8::Local<v8::Object> pObj, |
+ const wchar_t* PropertyName, |
+ double dValue); |
+void JS_PutObjectBoolean(IJS_Runtime* pJSRuntime, |
+ v8::Local<v8::Object> pObj, |
+ const wchar_t* PropertyName, |
+ bool bValue); |
+void JS_PutObjectObject(IJS_Runtime* pJSRuntime, |
+ v8::Local<v8::Object> pObj, |
+ const wchar_t* PropertyName, |
+ v8::Local<v8::Object> pPut); |
+void JS_PutObjectNull(IJS_Runtime* pJSRuntime, |
+ v8::Local<v8::Object> pObj, |
+ const wchar_t* PropertyName); |
+unsigned JS_PutArrayElement(IJS_Runtime* pJSRuntime, |
+ v8::Local<v8::Array> pArray, |
+ unsigned index, |
+ v8::Local<v8::Value> pValue, |
+ FXJSVALUETYPE eType); |
+v8::Local<v8::Value> JS_GetArrayElement(IJS_Runtime* pJSRuntime, |
+ v8::Local<v8::Array> pArray, |
+ unsigned index); |
+unsigned JS_GetArrayLength(v8::Local<v8::Array> pArray); |
+v8::Local<v8::Value> JS_GetListValue(IJS_Runtime* pJSRuntime, |
+ v8::Local<v8::Value> pList, |
+ int index); |
+ |
+v8::Local<v8::Array> JS_NewArray(IJS_Runtime* pJSRuntime); |
+v8::Local<v8::Value> JS_NewNumber(IJS_Runtime* pJSRuntime, int number); |
+v8::Local<v8::Value> JS_NewNumber(IJS_Runtime* pJSRuntime, double number); |
+v8::Local<v8::Value> JS_NewNumber(IJS_Runtime* pJSRuntime, float number); |
+v8::Local<v8::Value> JS_NewBoolean(IJS_Runtime* pJSRuntime, bool b); |
+v8::Local<v8::Value> JS_NewObject(IJS_Runtime* pJSRuntime, |
+ v8::Local<v8::Object> pObj); |
+v8::Local<v8::Value> JS_NewObject2(IJS_Runtime* pJSRuntime, |
+ v8::Local<v8::Array> pObj); |
+v8::Local<v8::Value> JS_NewString(IJS_Runtime* pJSRuntime, |
+ const wchar_t* string); |
+v8::Local<v8::Value> JS_NewString(IJS_Runtime* pJSRuntime, |
+ const wchar_t* string, |
+ unsigned nLen); |
+v8::Local<v8::Value> JS_NewNull(); |
+v8::Local<v8::Value> JS_NewDate(IJS_Runtime* pJSRuntime, double d); |
+v8::Local<v8::Value> JS_NewValue(IJS_Runtime* pJSRuntime); |
+ |
+int JS_ToInt32(IJS_Runtime* pJSRuntime, v8::Local<v8::Value> pValue); |
+bool JS_ToBoolean(IJS_Runtime* pJSRuntime, v8::Local<v8::Value> pValue); |
+double JS_ToNumber(IJS_Runtime* pJSRuntime, v8::Local<v8::Value> pValue); |
+v8::Local<v8::Object> JS_ToObject(IJS_Runtime* pJSRuntime, |
+ v8::Local<v8::Value> pValue); |
+CFX_WideString JS_ToString(IJS_Runtime* pJSRuntime, |
+ v8::Local<v8::Value> pValue); |
+v8::Local<v8::Array> JS_ToArray(IJS_Runtime* pJSRuntime, |
+ v8::Local<v8::Value> pValue); |
+void JS_ValueCopy(v8::Local<v8::Value>& pTo, v8::Local<v8::Value> pFrom); |
+ |
+double JS_GetDateTime(); |
+int JS_GetYearFromTime(double dt); |
+int JS_GetMonthFromTime(double dt); |
+int JS_GetDayFromTime(double dt); |
+int JS_GetHourFromTime(double dt); |
+int JS_GetMinFromTime(double dt); |
+int JS_GetSecFromTime(double dt); |
+double JS_DateParse(const wchar_t* string); |
+double JS_MakeDay(int nYear, int nMonth, int nDay); |
+double JS_MakeTime(int nHour, int nMin, int nSec, int nMs); |
+double JS_MakeDate(double day, double time); |
+bool JS_PortIsNan(double d); |
+double JS_LocalTime(double d); |
#endif // FPDFSDK_INCLUDE_JSAPI_FXJS_V8_H_ |