summaryrefslogtreecommitdiffstats
path: root/src/desktop.h
diff options
context:
space:
mode:
authorJon A. Cruz <jon@joncruz.org>2012-01-01 11:45:32 +0000
committerJon A. Cruz <jon@joncruz.org>2012-01-01 11:45:32 +0000
commit8efbe2cbb9cda49278ec57c21551f943c7033fa4 (patch)
tree41e32ba9c6a874af9d6d4fc5b9b71948b91469d1 /src/desktop.h
parentFix for Bug #494722 (Docked dialogs in a floating window crashes on shutdown)... (diff)
downloadinkscape-8efbe2cbb9cda49278ec57c21551f943c7033fa4.tar.gz
inkscape-8efbe2cbb9cda49278ec57c21551f943c7033fa4.zip
Added signal for desktop destruction to allow for proper removal of tracked stale pointers. Fixes bug #869067.
Fixed bugs: - https://launchpad.net/bugs/869067 (bzr r10814)
Diffstat (limited to 'src/desktop.h')
-rw-r--r--src/desktop.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/desktop.h b/src/desktop.h
index b466fff15..f0fd5064c 100644
--- a/src/desktop.h
+++ b/src/desktop.h
@@ -173,6 +173,11 @@ public:
/// The parameter is the new zoom factor
sigc::signal<void, double> signal_zoom_changed;
+ sigc::connection connectDestroy(const sigc::slot<void, SPDesktop*> &slot)
+ {
+ return _destroy_signal.connect(slot);
+ }
+
sigc::connection connectDocumentReplaced (const sigc::slot<void,SPDesktop*,SPDocument*> & slot)
{
return _document_replaced_signal.connect (slot);
@@ -390,6 +395,7 @@ private:
void push_current_zoom(std::list<Geom::Rect> &);
+ sigc::signal<void, SPDesktop*> _destroy_signal;
sigc::signal<void,SPDesktop*,SPDocument*> _document_replaced_signal;
sigc::signal<void> _activate_signal;
sigc::signal<void> _deactivate_signal;