• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright 2014 PDFium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
6 
7 #ifndef FXJS_CJS_EVENT_H_
8 #define FXJS_CJS_EVENT_H_
9 
10 #include "fxjs/JS_Define.h"
11 
12 class event : public CJS_EmbedObj {
13  public:
14   explicit event(CJS_Object* pJSObject);
15   ~event() override;
16 
17   CJS_Return get_change(CJS_Runtime* pRuntime);
18   CJS_Return set_change(CJS_Runtime* pRuntime, v8::Local<v8::Value> vp);
19 
20   CJS_Return get_change_ex(CJS_Runtime* pRuntime);
21   CJS_Return set_change_ex(CJS_Runtime* pRuntime, v8::Local<v8::Value> vp);
22 
23   CJS_Return get_commit_key(CJS_Runtime* pRuntime);
24   CJS_Return set_commit_key(CJS_Runtime* pRuntime, v8::Local<v8::Value> vp);
25 
26   CJS_Return get_field_full(CJS_Runtime* pRuntime);
27   CJS_Return set_field_full(CJS_Runtime* pRuntime, v8::Local<v8::Value> vp);
28 
29   CJS_Return get_key_down(CJS_Runtime* pRuntime);
30   CJS_Return set_key_down(CJS_Runtime* pRuntime, v8::Local<v8::Value> vp);
31 
32   CJS_Return get_modifier(CJS_Runtime* pRuntime);
33   CJS_Return set_modifier(CJS_Runtime* pRuntime, v8::Local<v8::Value> vp);
34 
35   CJS_Return get_name(CJS_Runtime* pRuntime);
36   CJS_Return set_name(CJS_Runtime* pRuntime, v8::Local<v8::Value> vp);
37 
38   CJS_Return get_rc(CJS_Runtime* pRuntime);
39   CJS_Return set_rc(CJS_Runtime* pRuntime, v8::Local<v8::Value> vp);
40 
41   CJS_Return get_rich_change(CJS_Runtime* pRuntime);
42   CJS_Return set_rich_change(CJS_Runtime* pRuntime, v8::Local<v8::Value> vp);
43 
44   CJS_Return get_rich_change_ex(CJS_Runtime* pRuntime);
45   CJS_Return set_rich_change_ex(CJS_Runtime* pRuntime, v8::Local<v8::Value> vp);
46 
47   CJS_Return get_rich_value(CJS_Runtime* pRuntime);
48   CJS_Return set_rich_value(CJS_Runtime* pRuntime, v8::Local<v8::Value> vp);
49 
50   CJS_Return get_sel_end(CJS_Runtime* pRuntime);
51   CJS_Return set_sel_end(CJS_Runtime* pRuntime, v8::Local<v8::Value> vp);
52 
53   CJS_Return get_sel_start(CJS_Runtime* pRuntime);
54   CJS_Return set_sel_start(CJS_Runtime* pRuntime, v8::Local<v8::Value> vp);
55 
56   CJS_Return get_shift(CJS_Runtime* pRuntime);
57   CJS_Return set_shift(CJS_Runtime* pRuntime, v8::Local<v8::Value> vp);
58 
59   CJS_Return get_source(CJS_Runtime* pRuntime);
60   CJS_Return set_source(CJS_Runtime* pRuntime, v8::Local<v8::Value> vp);
61 
62   CJS_Return get_target(CJS_Runtime* pRuntime);
63   CJS_Return set_target(CJS_Runtime* pRuntime, v8::Local<v8::Value> vp);
64 
65   CJS_Return get_target_name(CJS_Runtime* pRuntime);
66   CJS_Return set_target_name(CJS_Runtime* pRuntime, v8::Local<v8::Value> vp);
67 
68   CJS_Return get_type(CJS_Runtime* pRuntime);
69   CJS_Return set_type(CJS_Runtime* pRuntime, v8::Local<v8::Value> vp);
70 
71   CJS_Return get_value(CJS_Runtime* pRuntime);
72   CJS_Return set_value(CJS_Runtime* pRuntime, v8::Local<v8::Value> vp);
73 
74   CJS_Return get_will_commit(CJS_Runtime* pRuntime);
75   CJS_Return set_will_commit(CJS_Runtime* pRuntime, v8::Local<v8::Value> vp);
76 };
77 
78 class CJS_Event : public CJS_Object {
79  public:
80   static void DefineJSObjects(CFXJS_Engine* pEngine);
81 
CJS_Event(v8::Local<v8::Object> pObject)82   explicit CJS_Event(v8::Local<v8::Object> pObject) : CJS_Object(pObject) {}
~CJS_Event()83   ~CJS_Event() override {}
84 
85   JS_STATIC_PROP(change, change, event);
86   JS_STATIC_PROP(changeEx, change_ex, event);
87   JS_STATIC_PROP(commitKey, commit_key, event);
88   JS_STATIC_PROP(fieldFull, field_full, event);
89   JS_STATIC_PROP(keyDown, key_down, event);
90   JS_STATIC_PROP(modifier, modifier, event);
91   JS_STATIC_PROP(name, name, event);
92   JS_STATIC_PROP(rc, rc, event);
93   JS_STATIC_PROP(richChange, rich_change, event);
94   JS_STATIC_PROP(richChangeEx, rich_change_ex, event);
95   JS_STATIC_PROP(richValue, rich_value, event);
96   JS_STATIC_PROP(selEnd, sel_end, event);
97   JS_STATIC_PROP(selStart, sel_start, event);
98   JS_STATIC_PROP(shift, shift, event);
99   JS_STATIC_PROP(source, source, event);
100   JS_STATIC_PROP(target, target, event);
101   JS_STATIC_PROP(targetName, target_name, event);
102   JS_STATIC_PROP(type, type, event);
103   JS_STATIC_PROP(value, value, event);
104   JS_STATIC_PROP(willCommit, will_commit, event);
105 
106  private:
107   static int ObjDefnID;
108   static const JSPropertySpec PropertySpecs[];
109 };
110 
111 #endif  // FXJS_CJS_EVENT_H_
112