summaryrefslogtreecommitdiff
path: root/Plugins/skins/SkinLib/V8Script.h
diff options
context:
space:
mode:
authorpescuma <pescuma@c086bb3d-8645-0410-b8da-73a8550f86e7>2009-01-20 23:24:30 +0000
committerpescuma <pescuma@c086bb3d-8645-0410-b8da-73a8550f86e7>2009-01-20 23:24:30 +0000
commit334bfbad3fda3860f51b74cd6370786ef253ad49 (patch)
tree2cc40bf67b0ad86fc1e8c2e5f0a2e2085498ae7b /Plugins/skins/SkinLib/V8Script.h
parentff634d35c1fbd2831be6c1206bb9298cd5a14eda (diff)
skins: templates are kept in memory
git-svn-id: http://pescuma.googlecode.com/svn/trunk/Miranda@128 c086bb3d-8645-0410-b8da-73a8550f86e7
Diffstat (limited to 'Plugins/skins/SkinLib/V8Script.h')
-rw-r--r--Plugins/skins/SkinLib/V8Script.h10
1 files changed, 7 insertions, 3 deletions
diff --git a/Plugins/skins/SkinLib/V8Script.h b/Plugins/skins/SkinLib/V8Script.h
index 8ff7cb5..45a9af7 100644
--- a/Plugins/skins/SkinLib/V8Script.h
+++ b/Plugins/skins/SkinLib/V8Script.h
@@ -5,12 +5,16 @@
#include <utility>
#include "V8Wrappers.h"
+
typedef void (*ExceptionCallback)(void *param, const TCHAR *err);
class V8Script
{
public:
+ static void initializeEngine();
+
+
V8Script();
~V8Script();
@@ -26,15 +30,15 @@ public:
void setExceptionCallback(ExceptionCallback cb, void *param = NULL);
private:
- V8Wrappers wrappers;
v8::Persistent<v8::Context> context;
- v8::Persistent<v8::Script> script;
+ v8::Persistent<v8::Function> configureFunction;
+ v8::Persistent<v8::Function> drawFunction;
ExceptionCallback exceptionCallback;
void *exceptionCallbackParam;
- v8::Handle<v8::Function> getConfigureFunction(Dialog *dlg);
void reportException(v8::TryCatch *try_catch);
+ void fillWrappers(DialogState *state, SkinOptions *opts, bool configure);
};