diff options
author | Dan Sinclair <dsinclair@chromium.org> | 2017-10-30 20:20:42 +0000 |
---|---|---|
committer | Chromium commit bot <commit-bot@chromium.org> | 2017-10-30 20:20:42 +0000 |
commit | e0345a4aecfd16264d393234cf8fe22250d771fe (patch) | |
tree | 046f8e6c074b8525d6cf71daf4f2039582fb572a /fxjs/ijs_event_context.h | |
parent | 341ec6256457c53d50f2d0a0667e61041d4d89be (diff) | |
download | pdfium-e0345a4aecfd16264d393234cf8fe22250d771fe.tar.xz |
Move fpdfsdk/javascript to fxjs/
This CL moves all of the CJS files into fxjs. The :javascript build rule
is removed and :fxjs is used instead.
Change-Id: I1701b308f51317d0346c7401b43812c3f43a27bf
Reviewed-on: https://pdfium-review.googlesource.com/17047
Commit-Queue: dsinclair <dsinclair@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Diffstat (limited to 'fxjs/ijs_event_context.h')
-rw-r--r-- | fxjs/ijs_event_context.h | 133 |
1 files changed, 133 insertions, 0 deletions
diff --git a/fxjs/ijs_event_context.h b/fxjs/ijs_event_context.h new file mode 100644 index 0000000000..9b8dd8eabe --- /dev/null +++ b/fxjs/ijs_event_context.h @@ -0,0 +1,133 @@ +// Copyright 2016 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_IJS_EVENT_CONTEXT_H_ +#define FXJS_IJS_EVENT_CONTEXT_H_ + +#include "core/fxcrt/fx_string.h" +#include "core/fxcrt/fx_system.h" + +class CPDF_Bookmark; +class CPDF_FormField; +class CPDFSDK_Annot; +class CPDFSDK_FormFillEnvironment; + +// Records the details of an event and triggers JS execution for it. There +// can be more than one of these at any given time, as JS callbacks to C++ +// may trigger new events on top of one another. +class IJS_EventContext { + public: + virtual bool RunScript(const WideString& script, WideString* info) = 0; + + virtual void OnApp_Init() = 0; + + virtual void OnDoc_Open(CPDFSDK_FormFillEnvironment* pFormFillEnv, + const WideString& strTargetName) = 0; + virtual void OnDoc_WillPrint(CPDFSDK_FormFillEnvironment* pFormFillEnv) = 0; + virtual void OnDoc_DidPrint(CPDFSDK_FormFillEnvironment* pFormFillEnv) = 0; + virtual void OnDoc_WillSave(CPDFSDK_FormFillEnvironment* pFormFillEnv) = 0; + virtual void OnDoc_DidSave(CPDFSDK_FormFillEnvironment* pFormFillEnv) = 0; + virtual void OnDoc_WillClose(CPDFSDK_FormFillEnvironment* pFormFillEnv) = 0; + + virtual void OnPage_Open(CPDFSDK_FormFillEnvironment* pFormFillEnv) = 0; + virtual void OnPage_Close(CPDFSDK_FormFillEnvironment* pFormFillEnv) = 0; + virtual void OnPage_InView(CPDFSDK_FormFillEnvironment* pFormFillEnv) = 0; + virtual void OnPage_OutView(CPDFSDK_FormFillEnvironment* pFormFillEnv) = 0; + + virtual void OnField_MouseDown(bool bModifier, + bool bShift, + CPDF_FormField* pTarget) = 0; + virtual void OnField_MouseEnter(bool bModifier, + bool bShift, + CPDF_FormField* pTarget) = 0; + virtual void OnField_MouseExit(bool bModifier, + bool bShift, + CPDF_FormField* pTarget) = 0; + virtual void OnField_MouseUp(bool bModifier, + bool bShift, + CPDF_FormField* pTarget) = 0; + virtual void OnField_Focus(bool bModifier, + bool bShift, + CPDF_FormField* pTarget, + const WideString& Value) = 0; + virtual void OnField_Blur(bool bModifier, + bool bShift, + CPDF_FormField* pTarget, + const WideString& Value) = 0; + + virtual void OnField_Calculate(CPDF_FormField* pSource, + CPDF_FormField* pTarget, + WideString& Value, + bool& bRc) = 0; + virtual void OnField_Format(CPDF_FormField* pTarget, + WideString& Value, + bool bWillCommit) = 0; + virtual void OnField_Keystroke(WideString& strChange, + const WideString& strChangeEx, + bool KeyDown, + bool bModifier, + int& nSelEnd, + int& nSelStart, + bool bShift, + CPDF_FormField* pTarget, + WideString& Value, + bool bWillCommit, + bool bFieldFull, + bool& bRc) = 0; + virtual void OnField_Validate(WideString& strChange, + const WideString& strChangeEx, + bool bKeyDown, + bool bModifier, + bool bShift, + CPDF_FormField* pTarget, + WideString& Value, + bool& bRc) = 0; + + virtual void OnScreen_Focus(bool bModifier, + bool bShift, + CPDFSDK_Annot* pScreen) = 0; + virtual void OnScreen_Blur(bool bModifier, + bool bShift, + CPDFSDK_Annot* pScreen) = 0; + virtual void OnScreen_Open(bool bModifier, + bool bShift, + CPDFSDK_Annot* pScreen) = 0; + virtual void OnScreen_Close(bool bModifier, + bool bShift, + CPDFSDK_Annot* pScreen) = 0; + virtual void OnScreen_MouseDown(bool bModifier, + bool bShift, + CPDFSDK_Annot* pScreen) = 0; + virtual void OnScreen_MouseUp(bool bModifier, + bool bShift, + CPDFSDK_Annot* pScreen) = 0; + virtual void OnScreen_MouseEnter(bool bModifier, + bool bShift, + CPDFSDK_Annot* pScreen) = 0; + virtual void OnScreen_MouseExit(bool bModifier, + bool bShift, + CPDFSDK_Annot* pScreen) = 0; + virtual void OnScreen_InView(bool bModifier, + bool bShift, + CPDFSDK_Annot* pScreen) = 0; + virtual void OnScreen_OutView(bool bModifier, + bool bShift, + CPDFSDK_Annot* pScreen) = 0; + + virtual void OnBookmark_MouseUp(CPDF_Bookmark* pBookMark) = 0; + virtual void OnLink_MouseUp(CPDFSDK_FormFillEnvironment* pFormFillEnv) = 0; + + virtual void OnMenu_Exec(CPDFSDK_FormFillEnvironment* pFormFillEnv, + const WideString&) = 0; + virtual void OnBatchExec(CPDFSDK_FormFillEnvironment* pFormFillEnv) = 0; + virtual void OnConsole_Exec() = 0; + virtual void OnExternal_Exec() = 0; + + protected: + virtual ~IJS_EventContext() {} +}; + +#endif // FXJS_IJS_EVENT_CONTEXT_H_ |