From ef299534cce8cc42f1bd13665a75947c88195ce0 Mon Sep 17 00:00:00 2001 From: Dan Sinclair Date: Thu, 26 Oct 2017 16:48:30 -0400 Subject: Cleanup statics in JS classes This CL removes the static object IDs from each of the CJS_Object subclasses and moves them to anonymous namespaces. The Spec arrays are moved to private members of the object classes. Change-Id: I5dcdb87ef57e4b374b5431580fb55cb75023f8fb Reviewed-on: https://pdfium-review.googlesource.com/16950 Reviewed-by: Tom Sepez Commit-Queue: dsinclair --- fpdfsdk/javascript/app.h | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) (limited to 'fpdfsdk/javascript/app.h') diff --git a/fpdfsdk/javascript/app.h b/fpdfsdk/javascript/app.h index a0344306d9..53794736f2 100644 --- a/fpdfsdk/javascript/app.h +++ b/fpdfsdk/javascript/app.h @@ -30,12 +30,14 @@ class TimerObj : public CJS_EmbedObj { class CJS_TimerObj : public CJS_Object { public: + static int GetObjDefnID(); + static void DefineJSObjects(CFXJS_Engine* pEngine, FXJSOBJTYPE eObjType); + explicit CJS_TimerObj(v8::Local pObject) : CJS_Object(pObject) {} ~CJS_TimerObj() override {} - static int g_nObjDefnID; - - static void DefineJSObjects(CFXJS_Engine* pEngine, FXJSOBJTYPE eObjType); + private: + static int ObjDefnID; }; class app : public CJS_EmbedObj { @@ -142,15 +144,11 @@ class app : public CJS_EmbedObj { class CJS_App : public CJS_Object { public: + static void DefineJSObjects(CFXJS_Engine* pEngine, FXJSOBJTYPE eObjType); + explicit CJS_App(v8::Local pObject) : CJS_Object(pObject) {} ~CJS_App() override {} - static int g_nObjDefnID; - static JSPropertySpec PropertySpecs[]; - static JSMethodSpec MethodSpecs[]; - - static void DefineJSObjects(CFXJS_Engine* pEngine, FXJSOBJTYPE eObjType); - JS_STATIC_PROP(activeDocs, active_docs, app); JS_STATIC_PROP(calculate, calculate, app); JS_STATIC_PROP(formsVersion, forms_version, app); @@ -185,6 +183,11 @@ class CJS_App : public CJS_Object { JS_STATIC_METHOD(response, app); JS_STATIC_METHOD(setInterval, app); JS_STATIC_METHOD(setTimeOut, app); + + private: + static int ObjDefnID; + static JSPropertySpec PropertySpecs[]; + static JSMethodSpec MethodSpecs[]; }; #endif // FPDFSDK_JAVASCRIPT_APP_H_ -- cgit v1.2.3