1// Copyright 2016 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 XFA_FXFA_CXFA_EVENTPARAM_H_
8#define XFA_FXFA_CXFA_EVENTPARAM_H_
9
10#include "xfa/fxfa/fxfa_basic.h"
11
12class CXFA_WidgetAcc;
13
14enum XFA_EVENTTYPE {
15  XFA_EVENT_Click,
16  XFA_EVENT_Change,
17  XFA_EVENT_DocClose,
18  XFA_EVENT_DocReady,
19  XFA_EVENT_Enter,
20  XFA_EVENT_Exit,
21  XFA_EVENT_Full,
22  XFA_EVENT_IndexChange,
23  XFA_EVENT_Initialize,
24  XFA_EVENT_MouseDown,
25  XFA_EVENT_MouseEnter,
26  XFA_EVENT_MouseExit,
27  XFA_EVENT_MouseUp,
28  XFA_EVENT_PostExecute,
29  XFA_EVENT_PostOpen,
30  XFA_EVENT_PostPrint,
31  XFA_EVENT_PostSave,
32  XFA_EVENT_PostSign,
33  XFA_EVENT_PostSubmit,
34  XFA_EVENT_PreExecute,
35  XFA_EVENT_PreOpen,
36  XFA_EVENT_PrePrint,
37  XFA_EVENT_PreSave,
38  XFA_EVENT_PreSign,
39  XFA_EVENT_PreSubmit,
40  XFA_EVENT_Ready,
41  XFA_EVENT_InitCalculate,
42  XFA_EVENT_InitVariables,
43  XFA_EVENT_Calculate,
44  XFA_EVENT_Validate,
45  XFA_EVENT_Unknown,
46};
47
48class CXFA_EventParam {
49 public:
50  CXFA_EventParam();
51  ~CXFA_EventParam();
52  CXFA_EventParam(const CXFA_EventParam& other);
53
54  void Reset();
55
56  CXFA_WidgetAcc* m_pTarget;
57  XFA_EVENTTYPE m_eType;
58  CFX_WideString m_wsResult;
59  bool m_bCancelAction;
60  int32_t m_iCommitKey;
61  bool m_bKeyDown;
62  bool m_bModifier;
63  bool m_bReenter;
64  int32_t m_iSelEnd;
65  int32_t m_iSelStart;
66  bool m_bShift;
67  CFX_WideString m_wsChange;
68  CFX_WideString m_wsFullText;
69  CFX_WideString m_wsNewContentType;
70  CFX_WideString m_wsNewText;
71  CFX_WideString m_wsPrevContentType;
72  CFX_WideString m_wsPrevText;
73  CFX_WideString m_wsSoapFaultCode;
74  CFX_WideString m_wsSoapFaultString;
75  bool m_bIsFormReady;
76  int32_t m_iValidateActivities;
77};
78
79#endif  // XFA_FXFA_CXFA_EVENTPARAM_H_
80