Index: fpdfsdk/src/fsdk_mgr.cpp |
diff --git a/fpdfsdk/src/fsdk_mgr.cpp b/fpdfsdk/src/fsdk_mgr.cpp |
index 0b6770174bdafc9d6f7022fd328d0425d943e925..79b915f52a03a67078bb1984f60dba010f13a648 100644 |
--- a/fpdfsdk/src/fsdk_mgr.cpp |
+++ b/fpdfsdk/src/fsdk_mgr.cpp |
@@ -662,11 +662,9 @@ void CPDFSDK_PageView::PageView_OnDraw(CFX_RenderDevice* pDevice, |
} |
} |
-CPDF_Annot* CPDFSDK_PageView::GetPDFAnnotAtPoint(FX_FLOAT pageX, |
- FX_FLOAT pageY) { |
- const int nCount = m_pAnnotList->Count(); |
- for (int i = 0; i < nCount; ++i) { |
- CPDF_Annot* pAnnot = m_pAnnotList->GetAt(i); |
+const CPDF_Annot* CPDFSDK_PageView::GetPDFAnnotAtPoint(FX_FLOAT pageX, |
+ FX_FLOAT pageY) { |
+ for (const CPDF_Annot* pAnnot : m_pAnnotList->All()) { |
CFX_FloatRect annotRect; |
pAnnot->GetRect(annotRect); |
if (annotRect.Contains(pageX, pageY)) |
@@ -675,11 +673,9 @@ CPDF_Annot* CPDFSDK_PageView::GetPDFAnnotAtPoint(FX_FLOAT pageX, |
return nullptr; |
} |
-CPDF_Annot* CPDFSDK_PageView::GetPDFWidgetAtPoint(FX_FLOAT pageX, |
- FX_FLOAT pageY) { |
- const int nCount = m_pAnnotList->Count(); |
- for (int i = 0; i < nCount; ++i) { |
- CPDF_Annot* pAnnot = m_pAnnotList->GetAt(i); |
+const CPDF_Annot* CPDFSDK_PageView::GetPDFWidgetAtPoint(FX_FLOAT pageX, |
+ FX_FLOAT pageY) { |
+ for (const CPDF_Annot* pAnnot : m_pAnnotList->All()) { |
if (pAnnot->GetSubType() == "Widget") { |
CFX_FloatRect annotRect; |
pAnnot->GetRect(annotRect); |
@@ -899,9 +895,9 @@ void CPDFSDK_PageView::LoadFXAnnots() { |
CPDF_InterForm::EnableUpdateAP(FALSE); |
m_pAnnotList.reset(new CPDF_AnnotList(m_page)); |
CPDF_InterForm::EnableUpdateAP(enableAPUpdate); |
- const int nCount = m_pAnnotList->Count(); |
+ const size_t nCount = m_pAnnotList->Count(); |
SetLock(TRUE); |
- for (int i = 0; i < nCount; ++i) { |
+ for (size_t i = 0; i < nCount; ++i) { |
CPDF_Annot* pPDFAnnot = m_pAnnotList->GetAt(i); |
CPDF_Document* pDoc = GetPDFDocument(); |
@@ -944,16 +940,12 @@ int CPDFSDK_PageView::GetPageIndex() { |
return -1; |
} |
-FX_BOOL CPDFSDK_PageView::IsValidAnnot(CPDF_Annot* p) const { |
+bool CPDFSDK_PageView::IsValidAnnot(const CPDF_Annot* p) const { |
if (!p) |
- return FALSE; |
+ return false; |
- const int nCount = m_pAnnotList->Count(); |
- for (int i = 0; i < nCount; ++i) { |
- if (m_pAnnotList->GetAt(i) == p) |
- return TRUE; |
- } |
- return FALSE; |
+ const auto& annots = m_pAnnotList->All(); |
+ return std::find(annots.begin(), annots.end(), p) != annots.end(); |
} |
CPDFSDK_Annot* CPDFSDK_PageView::GetFocusAnnot() { |