From 0b0d258afd4ef8c9b42d03d5e43291d7214eeed6 Mon Sep 17 00:00:00 2001 From: wmayer Date: Sat, 19 Dec 2015 11:31:59 +0100 Subject: [PATCH] + make method cancelObservation() not pure virtual --- src/App/DocumentObserver.cpp | 4 ++++ src/App/DocumentObserver.h | 6 +++++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/src/App/DocumentObserver.cpp b/src/App/DocumentObserver.cpp index 88a961c8d..25e2eb2f3 100644 --- a/src/App/DocumentObserver.cpp +++ b/src/App/DocumentObserver.cpp @@ -302,3 +302,7 @@ void DocumentObjectObserver::slotChangedObject(const App::DocumentObject&, const App::Property&) { } + +void DocumentObjectObserver::cancelObservation() +{ +} diff --git a/src/App/DocumentObserver.h b/src/App/DocumentObserver.h index 08cb7851d..804d91d9f 100644 --- a/src/App/DocumentObserver.h +++ b/src/App/DocumentObserver.h @@ -202,7 +202,11 @@ private: virtual void slotDeletedObject(const App::DocumentObject& Obj); /** The property of an observed object has changed */ virtual void slotChangedObject(const App::DocumentObject& Obj, const App::Property& Prop); - virtual void cancelObservation() = 0; + /** This method gets called when all observed objects are deleted or the whole document is deleted. + * This method can be re-implemented to perform an extra step like closing a dialog tht observes + * a document. + */ + virtual void cancelObservation(); private: std::set _objects;