// 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 #include "fpdfsdk/cpdfsdk_xfawidget.h" #include "fpdfsdk/ipdfsdk_annothandler.h" #include "xfa/fxfa/cxfa_ffwidget.h" CPDFSDK_XFAWidget::CPDFSDK_XFAWidget(CXFA_FFWidget* pAnnot, CPDFSDK_PageView* pPageView, CPDFSDK_InteractiveForm* pInteractiveForm) : CPDFSDK_Annot(pPageView), m_pInteractiveForm(pInteractiveForm), m_hXFAWidget(pAnnot) {} CPDFSDK_XFAWidget::~CPDFSDK_XFAWidget() = default; bool CPDFSDK_XFAWidget::IsXFAField() const { return true; } CXFA_FFWidget* CPDFSDK_XFAWidget::GetXFAWidget() const { return m_hXFAWidget.Get(); } CPDF_Annot::Subtype CPDFSDK_XFAWidget::GetAnnotSubtype() const { return CPDF_Annot::Subtype::XFAWIDGET; } CFX_FloatRect CPDFSDK_XFAWidget::GetRect() const { CFX_RectF rcBBox = GetXFAWidget()->GetRect(false); return CFX_FloatRect(rcBBox.left, rcBBox.top, rcBBox.left + rcBBox.width, rcBBox.top + rcBBox.height); }