1 // Copyright 2016 PDFium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com 6 7 #include "fpdfsdk/cpdfsdk_annot.h" 8 9 #include <algorithm> 10 11 #include "fpdfsdk/cpdfsdk_pageview.h" 12 #include "third_party/base/stl_util.h" 13 14 #ifdef PDF_ENABLE_XFA 15 #include "fpdfsdk/fpdfxfa/cpdfxfa_context.h" 16 #endif // PDF_ENABLE_XFA 17 18 namespace { 19 20 const float kMinWidth = 1.0f; 21 const float kMinHeight = 1.0f; 22 23 } // namespace 24 CPDFSDK_Annot(CPDFSDK_PageView * pPageView)25CPDFSDK_Annot::CPDFSDK_Annot(CPDFSDK_PageView* pPageView) 26 : m_pPageView(pPageView) {} 27 ~CPDFSDK_Annot()28CPDFSDK_Annot::~CPDFSDK_Annot() {} 29 30 #ifdef PDF_ENABLE_XFA 31 IsXFAField()32bool CPDFSDK_Annot::IsXFAField() { 33 return false; 34 } 35 GetXFAWidget() const36CXFA_FFWidget* CPDFSDK_Annot::GetXFAWidget() const { 37 return nullptr; 38 } 39 GetPDFXFAPage()40CPDFXFA_Page* CPDFSDK_Annot::GetPDFXFAPage() { 41 return m_pPageView ? m_pPageView->GetPDFXFAPage() : nullptr; 42 } 43 44 #endif // PDF_ENABLE_XFA 45 GetMinWidth() const46float CPDFSDK_Annot::GetMinWidth() const { 47 return kMinWidth; 48 } 49 GetMinHeight() const50float CPDFSDK_Annot::GetMinHeight() const { 51 return kMinHeight; 52 } 53 GetLayoutOrder() const54int CPDFSDK_Annot::GetLayoutOrder() const { 55 return 5; 56 } 57 GetPDFAnnot() const58CPDF_Annot* CPDFSDK_Annot::GetPDFAnnot() const { 59 return nullptr; 60 } 61 GetAnnotSubtype() const62CPDF_Annot::Subtype CPDFSDK_Annot::GetAnnotSubtype() const { 63 return CPDF_Annot::Subtype::UNKNOWN; 64 } 65 IsSignatureWidget() const66bool CPDFSDK_Annot::IsSignatureWidget() const { 67 return false; 68 } 69 SetRect(const CFX_FloatRect & rect)70void CPDFSDK_Annot::SetRect(const CFX_FloatRect& rect) {} 71 GetRect() const72CFX_FloatRect CPDFSDK_Annot::GetRect() const { 73 return CFX_FloatRect(); 74 } 75 GetUnderlyingPage()76UnderlyingPageType* CPDFSDK_Annot::GetUnderlyingPage() { 77 #ifdef PDF_ENABLE_XFA 78 return GetPDFXFAPage(); 79 #else // PDF_ENABLE_XFA 80 return GetPDFPage(); 81 #endif // PDF_ENABLE_XFA 82 } 83 GetPDFPage()84CPDF_Page* CPDFSDK_Annot::GetPDFPage() { 85 return m_pPageView ? m_pPageView->GetPDFPage() : nullptr; 86 } 87