summaryrefslogtreecommitdiff
path: root/fxjs/xfa/cjx_eventpseudomodel.h
diff options
context:
space:
mode:
Diffstat (limited to 'fxjs/xfa/cjx_eventpseudomodel.h')
-rw-r--r--fxjs/xfa/cjx_eventpseudomodel.h75
1 files changed, 75 insertions, 0 deletions
diff --git a/fxjs/xfa/cjx_eventpseudomodel.h b/fxjs/xfa/cjx_eventpseudomodel.h
new file mode 100644
index 0000000000..d9615c3269
--- /dev/null
+++ b/fxjs/xfa/cjx_eventpseudomodel.h
@@ -0,0 +1,75 @@
+// Copyright 2017 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 FXJS_XFA_CJX_EVENTPSEUDOMODEL_H_
+#define FXJS_XFA_CJX_EVENTPSEUDOMODEL_H_
+
+#include "fxjs/CJX_Define.h"
+#include "fxjs/xfa/cjx_object.h"
+
+class CFXJSE_Value;
+class CScript_EventPseudoModel;
+
+enum class XFA_Event {
+ Change = 0,
+ CommitKey,
+ FullText,
+ Keydown,
+ Modifier,
+ NewContentType,
+ NewText,
+ PreviousContentType,
+ PreviousText,
+ Reenter,
+ SelectionEnd,
+ SelectionStart,
+ Shift,
+ SoapFaultCode,
+ SoapFaultString,
+ Target,
+ CancelAction
+};
+
+class CJX_EventPseudoModel : public CJX_Object {
+ public:
+ explicit CJX_EventPseudoModel(CScript_EventPseudoModel* model);
+ ~CJX_EventPseudoModel() override;
+
+ void Change(CFXJSE_Value* pValue, bool bSetting, XFA_Attribute eAttribute);
+ void CommitKey(CFXJSE_Value* pValue, bool bSetting, XFA_Attribute eAttribute);
+ void FullText(CFXJSE_Value* pValue, bool bSetting, XFA_Attribute eAttribute);
+ void KeyDown(CFXJSE_Value* pValue, bool bSetting, XFA_Attribute eAttribute);
+ void Modifier(CFXJSE_Value* pValue, bool bSetting, XFA_Attribute eAttribute);
+ void NewContentType(CFXJSE_Value* pValue,
+ bool bSetting,
+ XFA_Attribute eAttribute);
+ void NewText(CFXJSE_Value* pValue, bool bSetting, XFA_Attribute eAttribute);
+ void PrevContentType(CFXJSE_Value* pValue,
+ bool bSetting,
+ XFA_Attribute eAttribute);
+ void PrevText(CFXJSE_Value* pValue, bool bSetting, XFA_Attribute eAttribute);
+ void Reenter(CFXJSE_Value* pValue, bool bSetting, XFA_Attribute eAttribute);
+ void SelEnd(CFXJSE_Value* pValue, bool bSetting, XFA_Attribute eAttribute);
+ void SelStart(CFXJSE_Value* pValue, bool bSetting, XFA_Attribute eAttribute);
+ void Shift(CFXJSE_Value* pValue, bool bSetting, XFA_Attribute eAttribute);
+ void SoapFaultCode(CFXJSE_Value* pValue,
+ bool bSetting,
+ XFA_Attribute eAttribute);
+ void SoapFaultString(CFXJSE_Value* pValue,
+ bool bSetting,
+ XFA_Attribute eAttribute);
+ void Target(CFXJSE_Value* pValue, bool bSetting, XFA_Attribute eAttribute);
+
+ JS_METHOD(emit, CJX_EventPseudoModel);
+ JS_METHOD(reset, CJX_EventPseudoModel);
+
+ private:
+ void Property(CFXJSE_Value* pValue, XFA_Event dwFlag, bool bSetting);
+
+ static const CJX_MethodSpec MethodSpecs[];
+};
+
+#endif // FXJS_XFA_CJX_EVENTPSEUDOMODEL_H_