| Index: fpdfsdk/include/fsdk_annothandler.h
|
| diff --git a/fpdfsdk/include/fsdk_annothandler.h b/fpdfsdk/include/fsdk_annothandler.h
|
| index b36fe372b2653dac9f64c60faec70808c9d12ebb..179843da8a6f9557e0d4e3b3522812416668f4e5 100644
|
| --- a/fpdfsdk/include/fsdk_annothandler.h
|
| +++ b/fpdfsdk/include/fsdk_annothandler.h
|
| @@ -14,11 +14,6 @@
|
| #include "core/fxcrt/include/fx_coordinates.h"
|
|
|
| #ifdef PDF_ENABLE_XFA
|
| -#include "xfa/fxfa/include/fxfa.h"
|
| -#include "xfa/fxfa/include/xfa_ffdocview.h"
|
| -#include "xfa/fxfa/include/xfa_ffpageview.h"
|
| -#include "xfa/fxfa/include/xfa_ffwidgethandler.h"
|
| -
|
| #define FSDK_XFAWIDGET_TYPENAME "XFAWidget"
|
| #endif // PDF_ENABLE_XFA
|
|
|
| @@ -30,17 +25,18 @@ class CPDFSDK_PageView;
|
| class CPDF_Annot;
|
| class CFX_Matrix;
|
| class CFX_FloatPoint;
|
| +#ifdef PDF_ENABLE_XFA
|
| +class CXFA_FFWidget;
|
| +class CXFA_FFWidgetHandler;
|
| +#endif // PDF_ENABLE_XFA
|
|
|
| class IPDFSDK_AnnotHandler {
|
| public:
|
| virtual ~IPDFSDK_AnnotHandler() {}
|
|
|
| virtual CFX_ByteString GetType() = 0;
|
| -
|
| virtual CFX_ByteString GetName() = 0;
|
| -
|
| virtual FX_BOOL CanAnswer(CPDFSDK_Annot* pAnnot) = 0;
|
| -
|
| virtual CPDFSDK_Annot* NewAnnot(CPDF_Annot* pAnnot,
|
| CPDFSDK_PageView* pPage) = 0;
|
|
|
| @@ -50,22 +46,17 @@ class IPDFSDK_AnnotHandler {
|
| #endif // PDF_ENABLE_XFA
|
|
|
| virtual void ReleaseAnnot(CPDFSDK_Annot* pAnnot) = 0;
|
| -
|
| virtual void DeleteAnnot(CPDFSDK_Annot* pAnnot) = 0;
|
| -
|
| virtual CFX_FloatRect GetViewBBox(CPDFSDK_PageView* pPageView,
|
| CPDFSDK_Annot* pAnnot) = 0;
|
| -
|
| virtual FX_BOOL HitTest(CPDFSDK_PageView* pPageView,
|
| CPDFSDK_Annot* pAnnot,
|
| const CFX_FloatPoint& point) = 0;
|
| -
|
| virtual void OnDraw(CPDFSDK_PageView* pPageView,
|
| CPDFSDK_Annot* pAnnot,
|
| CFX_RenderDevice* pDevice,
|
| CFX_Matrix* pUser2Device,
|
| uint32_t dwFlags) = 0;
|
| -
|
| virtual void OnDrawSleep(CPDFSDK_PageView* pPageView,
|
| CPDFSDK_Annot* pAnnot,
|
| CFX_RenderDevice* pDevice,
|
| @@ -74,20 +65,15 @@ class IPDFSDK_AnnotHandler {
|
| uint32_t dwFlags) = 0;
|
|
|
| virtual void OnCreate(CPDFSDK_Annot* pAnnot) = 0;
|
| -
|
| virtual void OnLoad(CPDFSDK_Annot* pAnnot) = 0;
|
| -
|
| virtual void OnDelete(CPDFSDK_Annot* pAnnot) = 0;
|
| -
|
| virtual void OnRelease(CPDFSDK_Annot* pAnnot) = 0;
|
| -
|
| virtual void OnMouseEnter(CPDFSDK_PageView* pPageView,
|
| CPDFSDK_Annot* pAnnot,
|
| uint32_t nFlag) = 0;
|
| virtual void OnMouseExit(CPDFSDK_PageView* pPageView,
|
| CPDFSDK_Annot* pAnnot,
|
| uint32_t nFlag) = 0;
|
| -
|
| virtual FX_BOOL OnLButtonDown(CPDFSDK_PageView* pPageView,
|
| CPDFSDK_Annot* pAnnot,
|
| uint32_t nFlags,
|
| @@ -121,16 +107,13 @@ class IPDFSDK_AnnotHandler {
|
| CPDFSDK_Annot* pAnnot,
|
| uint32_t nFlags,
|
| const CFX_FloatPoint& point) = 0;
|
| - // by wjm.
|
| virtual FX_BOOL OnChar(CPDFSDK_Annot* pAnnot,
|
| uint32_t nChar,
|
| uint32_t nFlags) = 0;
|
| virtual FX_BOOL OnKeyDown(CPDFSDK_Annot* pAnnot, int nKeyCode, int nFlag) = 0;
|
| virtual FX_BOOL OnKeyUp(CPDFSDK_Annot* pAnnot, int nKeyCode, int nFlag) = 0;
|
| -
|
| virtual void OnDeSelected(CPDFSDK_Annot* pAnnot) = 0;
|
| virtual void OnSelected(CPDFSDK_Annot* pAnnot) = 0;
|
| -
|
| virtual FX_BOOL OnSetFocus(CPDFSDK_Annot* pAnnot, uint32_t nFlag) = 0;
|
| virtual FX_BOOL OnKillFocus(CPDFSDK_Annot* pAnnot, uint32_t nFlag) = 0;
|
| #ifdef PDF_ENABLE_XFA
|
| @@ -141,13 +124,12 @@ class IPDFSDK_AnnotHandler {
|
|
|
| class CPDFSDK_BFAnnotHandler : public IPDFSDK_AnnotHandler {
|
| public:
|
| - explicit CPDFSDK_BFAnnotHandler(CPDFDoc_Environment* pApp)
|
| - : m_pApp(pApp), m_pFormFiller(nullptr) {}
|
| - ~CPDFSDK_BFAnnotHandler() override {}
|
| + explicit CPDFSDK_BFAnnotHandler(CPDFDoc_Environment* pApp);
|
| + ~CPDFSDK_BFAnnotHandler() override;
|
|
|
| // IPDFSDK_AnnotHandler
|
| - CFX_ByteString GetType() override { return CFX_ByteString("Widget"); }
|
| - CFX_ByteString GetName() override { return CFX_ByteString("WidgetHandler"); }
|
| + CFX_ByteString GetType() override;
|
| + CFX_ByteString GetName() override;
|
| FX_BOOL CanAnswer(CPDFSDK_Annot* pAnnot) override;
|
| CPDFSDK_Annot* NewAnnot(CPDF_Annot* pAnnot, CPDFSDK_PageView* pPage) override;
|
| #ifdef PDF_ENABLE_XFA
|
| @@ -155,7 +137,7 @@ class CPDFSDK_BFAnnotHandler : public IPDFSDK_AnnotHandler {
|
| CPDFSDK_PageView* pPage) override;
|
| #endif // PDF_ENABLE_XFA
|
| void ReleaseAnnot(CPDFSDK_Annot* pAnnot) override;
|
| - void DeleteAnnot(CPDFSDK_Annot* pAnnot) override {}
|
| + void DeleteAnnot(CPDFSDK_Annot* pAnnot) override;
|
| CFX_FloatRect GetViewBBox(CPDFSDK_PageView* pPageView,
|
| CPDFSDK_Annot* pAnnot) override;
|
| FX_BOOL HitTest(CPDFSDK_PageView* pPageView,
|
| @@ -171,11 +153,11 @@ class CPDFSDK_BFAnnotHandler : public IPDFSDK_AnnotHandler {
|
| CFX_RenderDevice* pDevice,
|
| CFX_Matrix* pUser2Device,
|
| const CFX_FloatRect& rcWindow,
|
| - uint32_t dwFlags) override {}
|
| + uint32_t dwFlags) override;
|
| void OnCreate(CPDFSDK_Annot* pAnnot) override;
|
| void OnLoad(CPDFSDK_Annot* pAnnot) override;
|
| - void OnDelete(CPDFSDK_Annot* pAnnot) override {}
|
| - void OnRelease(CPDFSDK_Annot* pAnnot) override {}
|
| + void OnDelete(CPDFSDK_Annot* pAnnot) override;
|
| + void OnRelease(CPDFSDK_Annot* pAnnot) override;
|
| void OnMouseEnter(CPDFSDK_PageView* pPageView,
|
| CPDFSDK_Annot* pAnnot,
|
| uint32_t nFlag) override;
|
| @@ -214,9 +196,7 @@ class CPDFSDK_BFAnnotHandler : public IPDFSDK_AnnotHandler {
|
| FX_BOOL OnRButtonDblClk(CPDFSDK_PageView* pPageView,
|
| CPDFSDK_Annot* pAnnot,
|
| uint32_t nFlags,
|
| - const CFX_FloatPoint& point) override {
|
| - return FALSE;
|
| - }
|
| + const CFX_FloatPoint& point) override;
|
| FX_BOOL OnChar(CPDFSDK_Annot* pAnnot,
|
| uint32_t nChar,
|
| uint32_t nFlags) override;
|
| @@ -228,9 +208,7 @@ class CPDFSDK_BFAnnotHandler : public IPDFSDK_AnnotHandler {
|
| FX_BOOL OnKillFocus(CPDFSDK_Annot* pAnnot, uint32_t nFlag) override;
|
| #ifdef PDF_ENABLE_XFA
|
| FX_BOOL OnXFAChangedFocus(CPDFSDK_Annot* pOldAnnot,
|
| - CPDFSDK_Annot* pNewAnnot) override {
|
| - return TRUE;
|
| - }
|
| + CPDFSDK_Annot* pNewAnnot) override;
|
| #endif // PDF_ENABLE_XFA
|
|
|
| void SetFormFiller(CFFL_IFormFiller* pFiller) { m_pFormFiller = pFiller; }
|
| @@ -245,108 +223,87 @@ class CPDFSDK_BFAnnotHandler : public IPDFSDK_AnnotHandler {
|
| class CPDFSDK_XFAAnnotHandler : public IPDFSDK_AnnotHandler {
|
| public:
|
| explicit CPDFSDK_XFAAnnotHandler(CPDFDoc_Environment* pApp);
|
| - ~CPDFSDK_XFAAnnotHandler() {}
|
| + ~CPDFSDK_XFAAnnotHandler() override;
|
|
|
| - public:
|
| - virtual CFX_ByteString GetType() { return FSDK_XFAWIDGET_TYPENAME; }
|
| -
|
| - virtual CFX_ByteString GetName() { return "XFAWidgetHandler"; }
|
| -
|
| - virtual FX_BOOL CanAnswer(CPDFSDK_Annot* pAnnot);
|
| -
|
| - virtual CPDFSDK_Annot* NewAnnot(CPDF_Annot* pAnnot, CPDFSDK_PageView* pPage) {
|
| - return nullptr;
|
| - }
|
| -
|
| - virtual CPDFSDK_Annot* NewAnnot(CXFA_FFWidget* pAnnot,
|
| - CPDFSDK_PageView* pPage);
|
| -
|
| - virtual void ReleaseAnnot(CPDFSDK_Annot* pAnnot);
|
| -
|
| - virtual void DeleteAnnot(CPDFSDK_Annot* pAnnot) {}
|
| -
|
| - virtual CFX_FloatRect GetViewBBox(CPDFSDK_PageView* pPageView,
|
| - CPDFSDK_Annot* pAnnot);
|
| -
|
| - virtual FX_BOOL HitTest(CPDFSDK_PageView* pPageView,
|
| + // IPDFSDK_AnnotHandler
|
| + CFX_ByteString GetType() override;
|
| + CFX_ByteString GetName() override;
|
| + FX_BOOL CanAnswer(CPDFSDK_Annot* pAnnot) override;
|
| + CPDFSDK_Annot* NewAnnot(CPDF_Annot* pAnnot, CPDFSDK_PageView* pPage) override;
|
| + CPDFSDK_Annot* NewAnnot(CXFA_FFWidget* pAnnot,
|
| + CPDFSDK_PageView* pPage) override;
|
| + void ReleaseAnnot(CPDFSDK_Annot* pAnnot) override;
|
| + void DeleteAnnot(CPDFSDK_Annot* pAnnot) override;
|
| + CFX_FloatRect GetViewBBox(CPDFSDK_PageView* pPageView,
|
| + CPDFSDK_Annot* pAnnot) override;
|
| + FX_BOOL HitTest(CPDFSDK_PageView* pPageView,
|
| + CPDFSDK_Annot* pAnnot,
|
| + const CFX_FloatPoint& point) override;
|
| + void OnDraw(CPDFSDK_PageView* pPageView,
|
| + CPDFSDK_Annot* pAnnot,
|
| + CFX_RenderDevice* pDevice,
|
| + CFX_Matrix* pUser2Device,
|
| + uint32_t dwFlags) override;
|
| + void OnDrawSleep(CPDFSDK_PageView* pPageView,
|
| + CPDFSDK_Annot* pAnnot,
|
| + CFX_RenderDevice* pDevice,
|
| + CFX_Matrix* pUser2Device,
|
| + const CFX_FloatRect& rcWindow,
|
| + uint32_t dwFlags) override;
|
| + void OnCreate(CPDFSDK_Annot* pAnnot) override;
|
| + void OnLoad(CPDFSDK_Annot* pAnnot) override;
|
| + void OnDelete(CPDFSDK_Annot* pAnnot) override;
|
| + void OnRelease(CPDFSDK_Annot* pAnnot) override;
|
| + void OnMouseEnter(CPDFSDK_PageView* pPageView,
|
| + CPDFSDK_Annot* pAnnot,
|
| + uint32_t nFlag) override;
|
| + void OnMouseExit(CPDFSDK_PageView* pPageView,
|
| + CPDFSDK_Annot* pAnnot,
|
| + uint32_t nFlag) override;
|
| + FX_BOOL OnLButtonDown(CPDFSDK_PageView* pPageView,
|
| + CPDFSDK_Annot* pAnnot,
|
| + uint32_t nFlags,
|
| + const CFX_FloatPoint& point) override;
|
| + FX_BOOL OnLButtonUp(CPDFSDK_PageView* pPageView,
|
| + CPDFSDK_Annot* pAnnot,
|
| + uint32_t nFlags,
|
| + const CFX_FloatPoint& point) override;
|
| + FX_BOOL OnLButtonDblClk(CPDFSDK_PageView* pPageView,
|
| CPDFSDK_Annot* pAnnot,
|
| - const CFX_FloatPoint& point);
|
| -
|
| - virtual void OnDraw(CPDFSDK_PageView* pPageView,
|
| + uint32_t nFlags,
|
| + const CFX_FloatPoint& point) override;
|
| + FX_BOOL OnMouseMove(CPDFSDK_PageView* pPageView,
|
| CPDFSDK_Annot* pAnnot,
|
| - CFX_RenderDevice* pDevice,
|
| - CFX_Matrix* pUser2Device,
|
| - uint32_t dwFlags);
|
| -
|
| - virtual void OnDrawSleep(CPDFSDK_PageView* pPageView,
|
| - CPDFSDK_Annot* pAnnot,
|
| - CFX_RenderDevice* pDevice,
|
| - CFX_Matrix* pUser2Device,
|
| - const CFX_FloatRect& rcWindow,
|
| - uint32_t dwFlags) {}
|
| -
|
| - virtual void OnCreate(CPDFSDK_Annot* pAnnot) {}
|
| -
|
| - virtual void OnLoad(CPDFSDK_Annot* pAnnot) {}
|
| -
|
| - virtual void OnDelete(CPDFSDK_Annot* pAnnot) {}
|
| -
|
| - virtual void OnRelease(CPDFSDK_Annot* pAnnot) {}
|
| -
|
| - virtual void OnMouseEnter(CPDFSDK_PageView* pPageView,
|
| - CPDFSDK_Annot* pAnnot,
|
| - uint32_t nFlag);
|
| - virtual void OnMouseExit(CPDFSDK_PageView* pPageView,
|
| - CPDFSDK_Annot* pAnnot,
|
| - uint32_t nFlag);
|
| -
|
| - virtual FX_BOOL OnLButtonDown(CPDFSDK_PageView* pPageView,
|
| - CPDFSDK_Annot* pAnnot,
|
| - uint32_t nFlags,
|
| - const CFX_FloatPoint& point);
|
| - virtual FX_BOOL OnLButtonUp(CPDFSDK_PageView* pPageView,
|
| - CPDFSDK_Annot* pAnnot,
|
| - uint32_t nFlags,
|
| - const CFX_FloatPoint& point);
|
| - virtual FX_BOOL OnLButtonDblClk(CPDFSDK_PageView* pPageView,
|
| - CPDFSDK_Annot* pAnnot,
|
| - uint32_t nFlags,
|
| - const CFX_FloatPoint& point);
|
| - virtual FX_BOOL OnMouseMove(CPDFSDK_PageView* pPageView,
|
| - CPDFSDK_Annot* pAnnot,
|
| - uint32_t nFlags,
|
| - const CFX_FloatPoint& point);
|
| - virtual FX_BOOL OnMouseWheel(CPDFSDK_PageView* pPageView,
|
| - CPDFSDK_Annot* pAnnot,
|
| - uint32_t nFlags,
|
| - short zDelta,
|
| - const CFX_FloatPoint& point);
|
| - virtual FX_BOOL OnRButtonDown(CPDFSDK_PageView* pPageView,
|
| - CPDFSDK_Annot* pAnnot,
|
| - uint32_t nFlags,
|
| - const CFX_FloatPoint& point);
|
| - virtual FX_BOOL OnRButtonUp(CPDFSDK_PageView* pPageView,
|
| - CPDFSDK_Annot* pAnnot,
|
| - uint32_t nFlags,
|
| - const CFX_FloatPoint& point);
|
| - virtual FX_BOOL OnRButtonDblClk(CPDFSDK_PageView* pPageView,
|
| - CPDFSDK_Annot* pAnnot,
|
| - uint32_t nFlags,
|
| - const CFX_FloatPoint& point);
|
| - // by wjm.
|
| - virtual FX_BOOL OnChar(CPDFSDK_Annot* pAnnot,
|
| - uint32_t nChar,
|
| - uint32_t nFlags);
|
| - virtual FX_BOOL OnKeyDown(CPDFSDK_Annot* pAnnot, int nKeyCode, int nFlag);
|
| - virtual FX_BOOL OnKeyUp(CPDFSDK_Annot* pAnnot, int nKeyCode, int nFlag);
|
| -
|
| - virtual void OnDeSelected(CPDFSDK_Annot* pAnnot) {}
|
| - virtual void OnSelected(CPDFSDK_Annot* pAnnot) {}
|
| -
|
| - virtual FX_BOOL OnSetFocus(CPDFSDK_Annot* pAnnot, uint32_t nFlag);
|
| - virtual FX_BOOL OnKillFocus(CPDFSDK_Annot* pAnnot, uint32_t nFlag);
|
| - virtual FX_BOOL OnXFAChangedFocus(CPDFSDK_Annot* pOldAnnot,
|
| - CPDFSDK_Annot* pNewAnnot);
|
| + uint32_t nFlags,
|
| + const CFX_FloatPoint& point) override;
|
| + FX_BOOL OnMouseWheel(CPDFSDK_PageView* pPageView,
|
| + CPDFSDK_Annot* pAnnot,
|
| + uint32_t nFlags,
|
| + short zDelta,
|
| + const CFX_FloatPoint& point) override;
|
| + FX_BOOL OnRButtonDown(CPDFSDK_PageView* pPageView,
|
| + CPDFSDK_Annot* pAnnot,
|
| + uint32_t nFlags,
|
| + const CFX_FloatPoint& point) override;
|
| + FX_BOOL OnRButtonUp(CPDFSDK_PageView* pPageView,
|
| + CPDFSDK_Annot* pAnnot,
|
| + uint32_t nFlags,
|
| + const CFX_FloatPoint& point) override;
|
| + FX_BOOL OnRButtonDblClk(CPDFSDK_PageView* pPageView,
|
| + CPDFSDK_Annot* pAnnot,
|
| + uint32_t nFlags,
|
| + const CFX_FloatPoint& point) override;
|
| + FX_BOOL OnChar(CPDFSDK_Annot* pAnnot,
|
| + uint32_t nChar,
|
| + uint32_t nFlags) override;
|
| + FX_BOOL OnKeyDown(CPDFSDK_Annot* pAnnot, int nKeyCode, int nFlag) override;
|
| + FX_BOOL OnKeyUp(CPDFSDK_Annot* pAnnot, int nKeyCode, int nFlag) override;
|
| + void OnDeSelected(CPDFSDK_Annot* pAnnot) override;
|
| + void OnSelected(CPDFSDK_Annot* pAnnot) override;
|
| + FX_BOOL OnSetFocus(CPDFSDK_Annot* pAnnot, uint32_t nFlag) override;
|
| + FX_BOOL OnKillFocus(CPDFSDK_Annot* pAnnot, uint32_t nFlag) override;
|
| + FX_BOOL OnXFAChangedFocus(CPDFSDK_Annot* pOldAnnot,
|
| + CPDFSDK_Annot* pNewAnnot) override;
|
|
|
| private:
|
| CXFA_FFWidgetHandler* GetXFAWidgetHandler(CPDFSDK_Annot* pAnnot);
|
|
|