1*3ac0a46fSAndroid Build Coastguard Worker // Copyright 2017 The PDFium Authors 2*3ac0a46fSAndroid Build Coastguard Worker // Use of this source code is governed by a BSD-style license that can be 3*3ac0a46fSAndroid Build Coastguard Worker // found in the LICENSE file. 4*3ac0a46fSAndroid Build Coastguard Worker 5*3ac0a46fSAndroid Build Coastguard Worker // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com 6*3ac0a46fSAndroid Build Coastguard Worker 7*3ac0a46fSAndroid Build Coastguard Worker #ifndef FPDFSDK_CPDFSDK_ANNOTITERATION_H_ 8*3ac0a46fSAndroid Build Coastguard Worker #define FPDFSDK_CPDFSDK_ANNOTITERATION_H_ 9*3ac0a46fSAndroid Build Coastguard Worker 10*3ac0a46fSAndroid Build Coastguard Worker #include <vector> 11*3ac0a46fSAndroid Build Coastguard Worker 12*3ac0a46fSAndroid Build Coastguard Worker #include "fpdfsdk/cpdfsdk_annot.h" 13*3ac0a46fSAndroid Build Coastguard Worker 14*3ac0a46fSAndroid Build Coastguard Worker class CPDFSDK_PageView; 15*3ac0a46fSAndroid Build Coastguard Worker 16*3ac0a46fSAndroid Build Coastguard Worker class CPDFSDK_AnnotIteration { 17*3ac0a46fSAndroid Build Coastguard Worker public: 18*3ac0a46fSAndroid Build Coastguard Worker using const_iterator = 19*3ac0a46fSAndroid Build Coastguard Worker std::vector<ObservedPtr<CPDFSDK_Annot>>::const_iterator; 20*3ac0a46fSAndroid Build Coastguard Worker 21*3ac0a46fSAndroid Build Coastguard Worker static CPDFSDK_AnnotIteration CreateForDrawing(CPDFSDK_PageView* page_view); 22*3ac0a46fSAndroid Build Coastguard Worker 23*3ac0a46fSAndroid Build Coastguard Worker explicit CPDFSDK_AnnotIteration(CPDFSDK_PageView* page_view); 24*3ac0a46fSAndroid Build Coastguard Worker CPDFSDK_AnnotIteration(const CPDFSDK_AnnotIteration&) = delete; 25*3ac0a46fSAndroid Build Coastguard Worker CPDFSDK_AnnotIteration& operator=(const CPDFSDK_AnnotIteration&) = delete; 26*3ac0a46fSAndroid Build Coastguard Worker ~CPDFSDK_AnnotIteration(); 27*3ac0a46fSAndroid Build Coastguard Worker begin()28*3ac0a46fSAndroid Build Coastguard Worker const_iterator begin() const { return list_.begin(); } end()29*3ac0a46fSAndroid Build Coastguard Worker const_iterator end() const { return list_.end(); } 30*3ac0a46fSAndroid Build Coastguard Worker 31*3ac0a46fSAndroid Build Coastguard Worker private: 32*3ac0a46fSAndroid Build Coastguard Worker CPDFSDK_AnnotIteration(CPDFSDK_PageView* page_view, 33*3ac0a46fSAndroid Build Coastguard Worker bool put_focused_annot_at_end); 34*3ac0a46fSAndroid Build Coastguard Worker 35*3ac0a46fSAndroid Build Coastguard Worker std::vector<ObservedPtr<CPDFSDK_Annot>> list_; 36*3ac0a46fSAndroid Build Coastguard Worker }; 37*3ac0a46fSAndroid Build Coastguard Worker 38*3ac0a46fSAndroid Build Coastguard Worker #endif // FPDFSDK_CPDFSDK_ANNOTITERATION_H_ 39