blob: 8efa2dfbb83fcc289809fdc67628d6ba280fc35b [file] [log] [blame]
John Abd-El-Malek3f3b45c2014-05-23 17:28:10 -07001// 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.
Lei Zhanga6d9f0e2015-06-13 00:48:38 -07004
John Abd-El-Malek3f3b45c2014-05-23 17:28:10 -07005// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
6
Tom Sepez37458412015-10-06 11:33:46 -07007#ifndef FPDFSDK_SRC_JAVASCRIPT_EVENT_H_
8#define FPDFSDK_SRC_JAVASCRIPT_EVENT_H_
John Abd-El-Malek3f3b45c2014-05-23 17:28:10 -07009
Tom Sepez9a3f8122015-04-07 15:35:48 -070010#include "JS_Define.h"
11
Nico Weber9d8ec5a2015-08-04 13:00:21 -070012class event : public CJS_EmbedObj {
13 public:
14 event(CJS_Object* pJSObject);
Lei Zhang2b1a2d52015-08-14 22:16:22 -070015 ~event() override;
John Abd-El-Malek3f3b45c2014-05-23 17:28:10 -070016
Nico Weber9d8ec5a2015-08-04 13:00:21 -070017 public:
18 FX_BOOL change(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError);
19 FX_BOOL changeEx(IFXJS_Context* cc,
20 CJS_PropValue& vp,
21 CFX_WideString& sError);
22 FX_BOOL commitKey(IFXJS_Context* cc,
23 CJS_PropValue& vp,
24 CFX_WideString& sError);
25 FX_BOOL fieldFull(IFXJS_Context* cc,
26 CJS_PropValue& vp,
27 CFX_WideString& sError);
28 FX_BOOL keyDown(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError);
29 FX_BOOL modifier(IFXJS_Context* cc,
30 CJS_PropValue& vp,
31 CFX_WideString& sError);
32 FX_BOOL name(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError);
33 FX_BOOL rc(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError);
34 FX_BOOL richChange(IFXJS_Context* cc,
35 CJS_PropValue& vp,
36 CFX_WideString& sError);
37 FX_BOOL richChangeEx(IFXJS_Context* cc,
38 CJS_PropValue& vp,
39 CFX_WideString& sError);
40 FX_BOOL richValue(IFXJS_Context* cc,
41 CJS_PropValue& vp,
42 CFX_WideString& sError);
43 FX_BOOL selEnd(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError);
44 FX_BOOL selStart(IFXJS_Context* cc,
45 CJS_PropValue& vp,
46 CFX_WideString& sError);
47 FX_BOOL shift(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError);
48 FX_BOOL source(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError);
49 FX_BOOL target(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError);
50 FX_BOOL targetName(IFXJS_Context* cc,
51 CJS_PropValue& vp,
52 CFX_WideString& sError);
53 FX_BOOL type(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError);
54 FX_BOOL value(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError);
55 FX_BOOL willCommit(IFXJS_Context* cc,
56 CJS_PropValue& vp,
57 CFX_WideString& sError);
John Abd-El-Malek3f3b45c2014-05-23 17:28:10 -070058};
59
Nico Weber9d8ec5a2015-08-04 13:00:21 -070060class CJS_Event : public CJS_Object {
61 public:
Tom Sepez808a99e2015-09-10 12:28:37 -070062 CJS_Event(v8::Local<v8::Object> pObject) : CJS_Object(pObject) {}
Lei Zhang2b1a2d52015-08-14 22:16:22 -070063 ~CJS_Event() override {}
John Abd-El-Malek3f3b45c2014-05-23 17:28:10 -070064
Tom Sepezcd56a7d2015-10-06 11:45:28 -070065 DECLARE_JS_CLASS();
Nico Weber9d8ec5a2015-08-04 13:00:21 -070066 JS_STATIC_PROP(change, event);
67 JS_STATIC_PROP(changeEx, event);
68 JS_STATIC_PROP(commitKey, event);
69 JS_STATIC_PROP(fieldFull, event);
70 JS_STATIC_PROP(keyDown, event);
71 JS_STATIC_PROP(modifier, event);
72 JS_STATIC_PROP(name, event);
73 JS_STATIC_PROP(rc, event);
74 JS_STATIC_PROP(richChange, event);
75 JS_STATIC_PROP(richChangeEx, event);
76 JS_STATIC_PROP(richValue, event);
77 JS_STATIC_PROP(selEnd, event);
78 JS_STATIC_PROP(selStart, event);
79 JS_STATIC_PROP(shift, event);
80 JS_STATIC_PROP(source, event);
81 JS_STATIC_PROP(target, event);
82 JS_STATIC_PROP(targetName, event);
83 JS_STATIC_PROP(type, event);
84 JS_STATIC_PROP(value, event);
85 JS_STATIC_PROP(willCommit, event);
John Abd-El-Malek3f3b45c2014-05-23 17:28:10 -070086};
87
Tom Sepez37458412015-10-06 11:33:46 -070088#endif // FPDFSDK_SRC_JAVASCRIPT_EVENT_H_