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 CORE_FPDFDOC_IPDF_FORMNOTIFY_H_
8#define CORE_FPDFDOC_IPDF_FORMNOTIFY_H_
9
10#include "core/fxcrt/fx_string.h"
11
12class CPDF_FormField;
13class CPDF_InterForm;
14
15class IPDF_FormNotify {
16 public:
17  virtual ~IPDF_FormNotify() {}
18
19  virtual int BeforeValueChange(CPDF_FormField* pField,
20                                const WideString& csValue) = 0;
21  virtual void AfterValueChange(CPDF_FormField* pField) = 0;
22  virtual int BeforeSelectionChange(CPDF_FormField* pField,
23                                    const WideString& csValue) = 0;
24  virtual void AfterSelectionChange(CPDF_FormField* pField) = 0;
25  virtual void AfterCheckedStatusChange(CPDF_FormField* pField) = 0;
26  virtual int BeforeFormReset(CPDF_InterForm* pForm) = 0;
27  virtual void AfterFormReset(CPDF_InterForm* pForm) = 0;
28  virtual int BeforeFormImportData(CPDF_InterForm* pForm) = 0;
29  virtual void AfterFormImportData(CPDF_InterForm* pForm) = 0;
30};
31
32#endif  // CORE_FPDFDOC_IPDF_FORMNOTIFY_H_
33