Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1)

Unified Diff: fpdfsdk/cpdfsdk_annot.cpp

Issue 2311343003: Make Observers into a templated class (Closed)
Patch Set: Make Annot is-a CPDFSDK_Annot::Observer Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: fpdfsdk/cpdfsdk_annot.cpp
diff --git a/fpdfsdk/cpdfsdk_annot.cpp b/fpdfsdk/cpdfsdk_annot.cpp
index 353edaaaf97cc85bf1b08d5587013aa0a2af6527..738508f984bd7f685d9ec370a89660d33203a237 100644
--- a/fpdfsdk/cpdfsdk_annot.cpp
+++ b/fpdfsdk/cpdfsdk_annot.cpp
@@ -22,39 +22,10 @@ const float kMinHeight = 1.0f;
} // namespace
-CPDFSDK_Annot::Observer::Observer(CPDFSDK_Annot** pWatchedPtr)
- : m_pWatchedPtr(pWatchedPtr) {
- (*m_pWatchedPtr)->AddObserver(this);
-}
-
-CPDFSDK_Annot::Observer::~Observer() {
- if (m_pWatchedPtr)
- (*m_pWatchedPtr)->RemoveObserver(this);
-}
-
-void CPDFSDK_Annot::Observer::OnAnnotDestroyed() {
- ASSERT(m_pWatchedPtr);
- *m_pWatchedPtr = nullptr;
- m_pWatchedPtr = nullptr;
-}
-
CPDFSDK_Annot::CPDFSDK_Annot(CPDFSDK_PageView* pPageView)
: m_pPageView(pPageView), m_bSelected(FALSE) {}
-CPDFSDK_Annot::~CPDFSDK_Annot() {
- for (auto* pObserver : m_Observers)
- pObserver->OnAnnotDestroyed();
-}
-
-void CPDFSDK_Annot::AddObserver(Observer* pObserver) {
- ASSERT(!pdfium::ContainsKey(m_Observers, pObserver));
- m_Observers.insert(pObserver);
-}
-
-void CPDFSDK_Annot::RemoveObserver(Observer* pObserver) {
- ASSERT(pdfium::ContainsKey(m_Observers, pObserver));
- m_Observers.erase(pObserver);
-}
+CPDFSDK_Annot::~CPDFSDK_Annot() {}
#ifdef PDF_ENABLE_XFA

Powered by Google App Engine
This is Rietveld 408576698