| // 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); | 
 | } |