diff options
author | dsinclair <dsinclair@chromium.org> | 2016-03-31 20:03:24 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-03-31 20:03:24 -0700 |
commit | 64376be4aac4710848b36b823fd98aae75095336 (patch) | |
tree | b616a397d96e05b9e30ccc7de2e4e6a4334a6a59 /fpdfsdk/javascript/JS_Runtime.h | |
parent | 777b333109db7fceb5f2ca1fc521ced7f863fa18 (diff) | |
download | pdfium-64376be4aac4710848b36b823fd98aae75095336.tar.xz |
Move the fpdfsdk/include/javascript folder
This CL splits the IJavaScript.h file into the two inner classes and puts them
in the fpdfsdk/javascript folder.
Review URL: https://codereview.chromium.org/1847583004
Diffstat (limited to 'fpdfsdk/javascript/JS_Runtime.h')
-rw-r--r-- | fpdfsdk/javascript/JS_Runtime.h | 92 |
1 files changed, 0 insertions, 92 deletions
diff --git a/fpdfsdk/javascript/JS_Runtime.h b/fpdfsdk/javascript/JS_Runtime.h deleted file mode 100644 index 68dfb5b973..0000000000 --- a/fpdfsdk/javascript/JS_Runtime.h +++ /dev/null @@ -1,92 +0,0 @@ -// Copyright 2014 PDFium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com - -#ifndef FPDFSDK_JAVASCRIPT_JS_RUNTIME_H_ -#define FPDFSDK_JAVASCRIPT_JS_RUNTIME_H_ - -#include <map> -#include <memory> -#include <set> -#include <utility> -#include <vector> - -#include "core/fxcrt/include/fx_basic.h" -#include "fpdfsdk/include/javascript/IJavaScript.h" -#include "fpdfsdk/include/jsapi/fxjs_v8.h" -#include "fpdfsdk/javascript/JS_EventHandler.h" - -class CJS_Context; - -class CJS_Runtime : public IJS_Runtime { - public: - class Observer { - public: - virtual void OnDestroyed() = 0; - - protected: - virtual ~Observer() {} - }; - - using FieldEvent = std::pair<CFX_WideString, JS_EVENT_T>; - - static CJS_Runtime* FromContext(const IJS_Context* cc); - - explicit CJS_Runtime(CPDFDoc_Environment* pApp); - ~CJS_Runtime() override; - - // IJS_Runtime - IJS_Context* NewContext() override; - void ReleaseContext(IJS_Context* pContext) override; - IJS_Context* GetCurrentContext() override; - void SetReaderDocument(CPDFSDK_Document* pReaderDoc) override; - CPDFSDK_Document* GetReaderDocument() override { return m_pDocument; } - int Execute(IJS_Context* cc, - const wchar_t* script, - CFX_WideString* info) override; - - CPDFDoc_Environment* GetReaderApp() const { return m_pApp; } - - // Returns true if the event isn't already found in the set. - bool AddEventToSet(const FieldEvent& event); - void RemoveEventFromSet(const FieldEvent& event); - - void BeginBlock() { m_bBlocking = TRUE; } - void EndBlock() { m_bBlocking = FALSE; } - FX_BOOL IsBlocking() const { return m_bBlocking; } - - v8::Isolate* GetIsolate() const { return m_isolate; } - v8::Local<v8::Context> NewJSContext(); - - void SetConstArray(const CFX_WideString& name, v8::Local<v8::Array> array); - v8::Local<v8::Array> GetConstArray(const CFX_WideString& name); - -#ifdef PDF_ENABLE_XFA - FX_BOOL GetHValueByName(const CFX_ByteStringC& utf8Name, - FXJSE_HVALUE hValue) override; - FX_BOOL SetHValueByName(const CFX_ByteStringC& utf8Name, - FXJSE_HVALUE hValue) override; -#endif // PDF_ENABLE_XFA - - void AddObserver(Observer* observer); - void RemoveObserver(Observer* observer); - - private: - void DefineJSObjects(); - - std::vector<std::unique_ptr<CJS_Context>> m_ContextArray; - CPDFDoc_Environment* const m_pApp; - CPDFSDK_Document* m_pDocument; - FX_BOOL m_bBlocking; - std::set<FieldEvent> m_FieldEventSet; - v8::Isolate* m_isolate; - bool m_isolateManaged; - v8::Global<v8::Context> m_context; - std::vector<v8::Global<v8::Object>*> m_StaticObjects; - std::map<CFX_WideString, v8::Global<v8::Array>> m_ConstArrays; - std::set<Observer*> m_observers; -}; - -#endif // FPDFSDK_JAVASCRIPT_JS_RUNTIME_H_ |