Index: fpdfsdk/include/fsdk_actionhandler.h |
diff --git a/fpdfsdk/include/fsdk_actionhandler.h b/fpdfsdk/include/fsdk_actionhandler.h |
index 65d38d71fe752dc02e1ad5d6e495a202ccb3bde6..700eb6ca945803330f76ffafd4cf32bb9b53125c 100644 |
--- a/fpdfsdk/include/fsdk_actionhandler.h |
+++ b/fpdfsdk/include/fsdk_actionhandler.h |
@@ -1,81 +1,153 @@ |
// Copyright 2014 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 _FSDK_ACTIONHANDLER_H_ |
#define _FSDK_ACTIONHANDLER_H_ |
- |
class CPDFDoc_Environment; |
class IFXJS_Runtime; |
-class CPDFSDK_FormActionHandler |
-{ |
-public: |
- FX_BOOL DoAction_Hide(const CPDF_Action& action, CPDFSDK_Document* pDocument); |
- FX_BOOL DoAction_SubmitForm(const CPDF_Action& action, CPDFSDK_Document* pDocument); |
- FX_BOOL DoAction_ResetForm(const CPDF_Action& action, CPDFSDK_Document* pDocument); |
- FX_BOOL DoAction_ImportData(const CPDF_Action& action, CPDFSDK_Document* pDocument); |
+class CPDFSDK_FormActionHandler { |
+ public: |
+ FX_BOOL DoAction_Hide(const CPDF_Action& action, CPDFSDK_Document* pDocument); |
+ FX_BOOL DoAction_SubmitForm(const CPDF_Action& action, |
+ CPDFSDK_Document* pDocument); |
+ FX_BOOL DoAction_ResetForm(const CPDF_Action& action, |
+ CPDFSDK_Document* pDocument); |
+ FX_BOOL DoAction_ImportData(const CPDF_Action& action, |
+ CPDFSDK_Document* pDocument); |
}; |
-class CPDFSDK_MediaActionHandler |
-{ |
-public: |
- FX_BOOL DoAction_Rendition(const CPDF_Action& action, CPDFSDK_Document* pDocument); |
- FX_BOOL DoAction_Sound(const CPDF_Action& action, CPDFSDK_Document* pDocument); |
- FX_BOOL DoAction_Movie(const CPDF_Action& action, CPDFSDK_Document* pDocument); |
+class CPDFSDK_MediaActionHandler { |
+ public: |
+ FX_BOOL DoAction_Rendition(const CPDF_Action& action, |
+ CPDFSDK_Document* pDocument); |
+ FX_BOOL DoAction_Sound(const CPDF_Action& action, |
+ CPDFSDK_Document* pDocument); |
+ FX_BOOL DoAction_Movie(const CPDF_Action& action, |
+ CPDFSDK_Document* pDocument); |
}; |
-class CPDFSDK_ActionHandler /*: public CReader_ActionHandler*/ |
-{ |
-public: |
- CPDFSDK_ActionHandler(CPDFDoc_Environment* pEvi); |
- virtual ~CPDFSDK_ActionHandler(); |
- |
- virtual void Destroy(); |
- virtual FX_BOOL DoAction_DocOpen(const CPDF_Action& action, CPDFSDK_Document* pDocument/*, CPDFSDK_DocView *pDocView*/); |
- virtual FX_BOOL DoAction_JavaScript(const CPDF_Action& JsAction,CFX_WideString csJSName, CPDFSDK_Document* pDocument/*, CReader_DocView *pDocView*/); |
- virtual FX_BOOL DoAction_Page(const CPDF_Action& action, enum CPDF_AAction::AActionType eType, CPDFSDK_Document* pDocument/*, CReader_DocView *pDocView*/); |
- virtual FX_BOOL DoAction_Document(const CPDF_Action& action, enum CPDF_AAction::AActionType eType, CPDFSDK_Document* pDocument/*, CReader_DocView *pDocView*/); |
- virtual FX_BOOL DoAction_BookMark(CPDF_Bookmark *pBookMark, const CPDF_Action& action, CPDF_AAction::AActionType type, CPDFSDK_Document* pDocument/*, CReader_DocView *pDocView*/); |
- virtual FX_BOOL DoAction_Screen(const CPDF_Action& action, CPDF_AAction::AActionType type, CPDFSDK_Document* pDocument,/* CReader_DocView *pDocView,*/ CPDFSDK_Annot* pScreen); |
- virtual FX_BOOL DoAction_Link(const CPDF_Action& action, CPDFSDK_Document* pDocument/*, CReader_DocView *pDocView*/); |
- virtual FX_BOOL DoAction_Field(const CPDF_Action& action, CPDF_AAction::AActionType type, CPDFSDK_Document* pDocument, /*CReader_DocView *pDocView,*/ CPDF_FormField* pFormField, PDFSDK_FieldAction& data); |
- virtual FX_BOOL DoAction_FieldJavaScript(const CPDF_Action& JsAction, CPDF_AAction::AActionType type, CPDFSDK_Document* pDocument, CPDF_FormField* pFormField, PDFSDK_FieldAction& data); |
-public: |
- void SetFormActionHandler(CPDFSDK_FormActionHandler* pHandler); |
- void SetMediaActionHandler(CPDFSDK_MediaActionHandler* pHandler); |
- |
-private: |
- FX_BOOL ExecuteDocumentOpenAction(const CPDF_Action& action, CPDFSDK_Document* pDocument, /*CReader_DocView *pDocView,*/ CFX_PtrList& list); |
- FX_BOOL ExecuteDocumentPageAction(const CPDF_Action& action, CPDF_AAction::AActionType type, CPDFSDK_Document* pDocument, /*CReader_DocView *pDocView,*/ CFX_PtrList& list); |
- FX_BOOL ExecuteFieldAction(const CPDF_Action& action, CPDF_AAction::AActionType type, CPDFSDK_Document* pDocument, /*CReader_DocView* pDocView,*/ CPDF_FormField* pFormField, PDFSDK_FieldAction& data, CFX_PtrList& list); |
- FX_BOOL ExecuteScreenAction(const CPDF_Action& action, CPDF_AAction::AActionType type, CPDFSDK_Document* pDocument, /*CReader_DocView* pDocView,*/ CPDFSDK_Annot* pScreen, CFX_PtrList& list); |
- FX_BOOL ExecuteBookMark(const CPDF_Action& action, CPDFSDK_Document* pDocument, /*CReader_DocView* pDocView,*/ CPDF_Bookmark* pBookmark, CFX_PtrList& list); |
- FX_BOOL ExecuteLinkAction(const CPDF_Action& action, CPDFSDK_Document* pDocument, /*CReader_DocView* pDocView,*/ CFX_PtrList& list); |
- |
- void DoAction_NoJs(const CPDF_Action& action, CPDFSDK_Document* pDocument/*, CReader_DocView* pDocView*/); |
- void RunDocumentPageJavaScript(CPDFSDK_Document* pDocument, CPDF_AAction::AActionType type, const CFX_WideString& script); |
- void RunDocumentOpenJavaScript(CPDFSDK_Document* pDocument, const CFX_WideString& sScriptName, const CFX_WideString& script); |
- void RunFieldJavaScript(CPDFSDK_Document* pDocument, CPDF_FormField* pFormField, CPDF_AAction::AActionType type, PDFSDK_FieldAction& data, const CFX_WideString& script); |
- |
-private: |
- FX_BOOL IsValidField(CPDFSDK_Document* pDocument, CPDF_Dictionary* pFieldDict); |
- FX_BOOL IsValidDocView(CPDFSDK_Document* pDocument/*, CReader_DocView* pDocView*/); |
- |
- void DoAction_GoTo(CPDFSDK_Document* pDocument, /*CReader_DocView *pDocView,*/ const CPDF_Action& action); |
- void DoAction_GoToR(CPDFSDK_Document* pDocument, const CPDF_Action& action); |
- void DoAction_Launch(CPDFSDK_Document* pDocument, const CPDF_Action& action); |
- void DoAction_URI(CPDFSDK_Document* pDocument, const CPDF_Action& action); |
- void DoAction_Named(CPDFSDK_Document* pDocument, const CPDF_Action& action); |
- void DoAction_SetOCGState(CPDFSDK_Document* pDocument, /*CReader_DocView* pDocView,*/ const CPDF_Action& action); |
- |
-private: |
- CPDFSDK_FormActionHandler* m_pFormActionHandler; |
- CPDFSDK_MediaActionHandler* m_pMediaActionHandler; |
-}; |
+class CPDFSDK_ActionHandler /*: public CReader_ActionHandler*/ |
+ { |
+ public: |
+ CPDFSDK_ActionHandler(CPDFDoc_Environment* pEvi); |
+ virtual ~CPDFSDK_ActionHandler(); |
+ |
+ virtual void Destroy(); |
+ virtual FX_BOOL DoAction_DocOpen( |
+ const CPDF_Action& action, |
+ CPDFSDK_Document* pDocument /*, CPDFSDK_DocView *pDocView*/); |
+ virtual FX_BOOL DoAction_JavaScript( |
+ const CPDF_Action& JsAction, |
+ CFX_WideString csJSName, |
+ CPDFSDK_Document* pDocument /*, CReader_DocView *pDocView*/); |
+ virtual FX_BOOL DoAction_Page( |
+ const CPDF_Action& action, |
+ enum CPDF_AAction::AActionType eType, |
+ CPDFSDK_Document* pDocument /*, CReader_DocView *pDocView*/); |
+ virtual FX_BOOL DoAction_Document( |
+ const CPDF_Action& action, |
+ enum CPDF_AAction::AActionType eType, |
+ CPDFSDK_Document* pDocument /*, CReader_DocView *pDocView*/); |
+ virtual FX_BOOL DoAction_BookMark( |
+ CPDF_Bookmark* pBookMark, |
+ const CPDF_Action& action, |
+ CPDF_AAction::AActionType type, |
+ CPDFSDK_Document* pDocument /*, CReader_DocView *pDocView*/); |
+ virtual FX_BOOL DoAction_Screen( |
+ const CPDF_Action& action, |
+ CPDF_AAction::AActionType type, |
+ CPDFSDK_Document* pDocument, |
+ /* CReader_DocView *pDocView,*/ CPDFSDK_Annot* pScreen); |
+ virtual FX_BOOL DoAction_Link( |
+ const CPDF_Action& action, |
+ CPDFSDK_Document* pDocument /*, CReader_DocView *pDocView*/); |
+ virtual FX_BOOL DoAction_Field( |
+ const CPDF_Action& action, |
+ CPDF_AAction::AActionType type, |
+ CPDFSDK_Document* pDocument, |
+ /*CReader_DocView *pDocView,*/ CPDF_FormField* pFormField, |
+ PDFSDK_FieldAction& data); |
+ virtual FX_BOOL DoAction_FieldJavaScript(const CPDF_Action& JsAction, |
+ CPDF_AAction::AActionType type, |
+ CPDFSDK_Document* pDocument, |
+ CPDF_FormField* pFormField, |
+ PDFSDK_FieldAction& data); |
+ |
+ public: |
+ void SetFormActionHandler(CPDFSDK_FormActionHandler* pHandler); |
+ void SetMediaActionHandler(CPDFSDK_MediaActionHandler* pHandler); |
-#endif //_BA_ACTIONHANDLER_H_ |
+ private: |
+ FX_BOOL ExecuteDocumentOpenAction( |
+ const CPDF_Action& action, |
+ CPDFSDK_Document* pDocument, |
+ /*CReader_DocView *pDocView,*/ CFX_PtrList& list); |
+ FX_BOOL ExecuteDocumentPageAction( |
+ const CPDF_Action& action, |
+ CPDF_AAction::AActionType type, |
+ CPDFSDK_Document* pDocument, |
+ /*CReader_DocView *pDocView,*/ CFX_PtrList& list); |
+ FX_BOOL ExecuteFieldAction( |
+ const CPDF_Action& action, |
+ CPDF_AAction::AActionType type, |
+ CPDFSDK_Document* pDocument, |
+ /*CReader_DocView* pDocView,*/ CPDF_FormField* pFormField, |
+ PDFSDK_FieldAction& data, |
+ CFX_PtrList& list); |
+ FX_BOOL ExecuteScreenAction( |
+ const CPDF_Action& action, |
+ CPDF_AAction::AActionType type, |
+ CPDFSDK_Document* pDocument, |
+ /*CReader_DocView* pDocView,*/ CPDFSDK_Annot* pScreen, |
+ CFX_PtrList& list); |
+ FX_BOOL ExecuteBookMark( |
+ const CPDF_Action& action, |
+ CPDFSDK_Document* pDocument, |
+ /*CReader_DocView* pDocView,*/ CPDF_Bookmark* pBookmark, |
+ CFX_PtrList& list); |
+ FX_BOOL ExecuteLinkAction(const CPDF_Action& action, |
+ CPDFSDK_Document* pDocument, |
+ /*CReader_DocView* pDocView,*/ CFX_PtrList& list); |
+ |
+ void DoAction_NoJs( |
+ const CPDF_Action& action, |
+ CPDFSDK_Document* pDocument /*, CReader_DocView* pDocView*/); |
+ void RunDocumentPageJavaScript(CPDFSDK_Document* pDocument, |
+ CPDF_AAction::AActionType type, |
+ const CFX_WideString& script); |
+ void RunDocumentOpenJavaScript(CPDFSDK_Document* pDocument, |
+ const CFX_WideString& sScriptName, |
+ const CFX_WideString& script); |
+ void RunFieldJavaScript(CPDFSDK_Document* pDocument, |
+ CPDF_FormField* pFormField, |
+ CPDF_AAction::AActionType type, |
+ PDFSDK_FieldAction& data, |
+ const CFX_WideString& script); |
+ |
+ private: |
+ FX_BOOL IsValidField(CPDFSDK_Document* pDocument, |
+ CPDF_Dictionary* pFieldDict); |
+ FX_BOOL IsValidDocView( |
+ CPDFSDK_Document* pDocument /*, CReader_DocView* pDocView*/); |
+ |
+ void DoAction_GoTo(CPDFSDK_Document* pDocument, |
+ /*CReader_DocView *pDocView,*/ const CPDF_Action& action); |
+ void DoAction_GoToR(CPDFSDK_Document* pDocument, const CPDF_Action& action); |
+ void DoAction_Launch(CPDFSDK_Document* pDocument, const CPDF_Action& action); |
+ void DoAction_URI(CPDFSDK_Document* pDocument, const CPDF_Action& action); |
+ void DoAction_Named(CPDFSDK_Document* pDocument, const CPDF_Action& action); |
+ void DoAction_SetOCGState( |
+ CPDFSDK_Document* pDocument, |
+ /*CReader_DocView* pDocView,*/ const CPDF_Action& action); |
+ |
+ private: |
+ CPDFSDK_FormActionHandler* m_pFormActionHandler; |
+ CPDFSDK_MediaActionHandler* m_pMediaActionHandler; |
+}; |
+#endif //_BA_ACTIONHANDLER_H_ |