7#ifndef FPDFSDK_FPDFXFA_CPDFXFA_WIDGET_H_
8#define FPDFSDK_FPDFXFA_CPDFXFA_WIDGET_H_
10#include "core/fxcrt/fx_coordinates.h"
11#include "fpdfsdk/cpdfsdk_annot.h"
12#include "v8/include/cppgc/persistent.h"
13#include "xfa/fxfa/cxfa_ffwidget.h"
15class CPDFSDK_PageView;
17class CXFA_FFWidgetHandler;
32 bool bDrawAnnots)
override;
33 bool DoHitTest(
const CFX_PointF& point)
override;
56 const CFX_PointF& point)
override;
58 const CFX_PointF& point)
override;
60 const CFX_PointF& point)
override;
62 const CFX_PointF& point)
override;
64 const CFX_PointF& point,
65 const CFX_Vector& delta)
override;
67 const CFX_PointF& point)
override;
69 const CFX_PointF& point)
override;
70 bool OnChar(uint32_t nChar,
Mask<FWL_EVENTFLAG> nFlags)
override;
71 bool OnKeyDown(FWL_VKEYCODE nKeyCode,
Mask<FWL_EVENTFLAG> nFlags)
override;
76 CXFA_FFWidgetHandler* GetWidgetHandler();
78 cppgc::Persistent<CXFA_FFWidget>
const m_pXFAFFWidget;
CFGAS_GEGraphics(CFX_RenderDevice *renderDevice)
void SetClipRect(const CFX_RectF &rect)
bool Contains(const CFX_PointF &point) const
void Inflate(float x, float y)
CFX_PointF Transform(const CFX_PointF &point) const
CFX_Matrix GetInverse() const
CFX_FloatRect ToFloatRect() const
bool IntersectWith(const CFX_RectF &rt) const
CFX_RectF(const FX_RECT &that)
CPDFSDK_PageView * GetPageView() const
absl::optional< CFX_PointF > PageToDevice(const FX_RECT &rect, int rotate, const CFX_PointF &page_point) const override
CXFA_FFPageView * GetXFAPageView() const
CPDF_Document * GetDocument() const override
CFX_Matrix GetDisplayMatrix(const FX_RECT &rect, int iRotate) const override
CPDFXFA_Page * AsXFAPage() override
CPDF_Page * AsPDFPage() override
float GetPageWidth() const override
CPDFSDK_Annot * GetLastXFAAnnot(CPDFSDK_PageView *page_view) const
CPDFSDK_Annot * GetPrevXFAAnnot(CPDFSDK_Annot *pSDKAnnot) const
CPDFSDK_Annot * GetFirstXFAAnnot(CPDFSDK_PageView *page_view) const
CPDFSDK_Annot * GetNextXFAAnnot(CPDFSDK_Annot *pSDKAnnot) const
absl::optional< CFX_PointF > DeviceToPage(const FX_RECT &rect, int rotate, const CFX_PointF &device_point) const override
void DrawFocusAnnot(CFX_RenderDevice *pDevice, CPDFSDK_Annot *pAnnot, const CFX_Matrix &mtUser2Device, const FX_RECT &rtClip)
int HasFormFieldAtPoint(const CFX_PointF &point) const
float GetPageHeight() const override
void LoadPDFPageFromDict(RetainPtr< CPDF_Dictionary > pPageDict)
CXFA_FFWidgetHandler * GetWidgetHandler()
CXFA_FFPageView * GetPageView(int32_t nIndex) const
CXFA_FFDocView * GetDocView() const
CFX_Matrix GetDisplayMatrix(const FX_RECT &rtDisp, int32_t iRotate) const
CXFA_FFWidget::IteratorIface * CreateGCedTraverseWidgetIterator(Mask< XFA_WidgetStatus > dwWidgetFilter)
CFX_RectF GetPageViewRect() const
CXFA_FFWidget * MoveToNext() override
CPDFXFA_Widget * ToXFAWidget(CPDFSDK_Annot *pAnnot)