summaryrefslogtreecommitdiffstats
path: root/src/ui/dialog/icon-preview.cpp
diff options
context:
space:
mode:
authorJon A. Cruz <jon@joncruz.org>2010-05-06 08:49:03 +0000
committerJon A. Cruz <jon@joncruz.org>2010-05-06 08:49:03 +0000
commit068f4be893b5e014f4ad39d1eb234e0286c71f93 (patch)
tree396a2d750ca48cee0fd7fcbed8b93b4f6df5f82a /src/ui/dialog/icon-preview.cpp
parentRemoved redundant refresh button, ui cleanup, added frames, etc. for bug #171... (diff)
downloadinkscape-068f4be893b5e014f4ad39d1eb234e0286c71f93.tar.gz
inkscape-068f4be893b5e014f4ad39d1eb234e0286c71f93.zip
Track selection changes for updating in icon preview.
(bzr r9400)
Diffstat (limited to 'src/ui/dialog/icon-preview.cpp')
-rw-r--r--src/ui/dialog/icon-preview.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/ui/dialog/icon-preview.cpp b/src/ui/dialog/icon-preview.cpp
index 946eed4ca..9a46254ab 100644
--- a/src/ui/dialog/icon-preview.cpp
+++ b/src/ui/dialog/icon-preview.cpp
@@ -90,7 +90,8 @@ IconPreviewPanel::IconPreviewPanel() :
selectionButton(0),
desktopChangeConn(),
docReplacedConn(),
- docModConn()
+ docModConn(),
+ selChangedConn()
{
Inkscape::Preferences *prefs = Inkscape::Preferences::get();
numEntries = 0;
@@ -242,6 +243,7 @@ IconPreviewPanel::~IconPreviewPanel()
timer = 0;
}
+ selChangedConn.disconnect();
docModConn.disconnect();
docReplacedConn.disconnect();
desktopChangeConn.disconnect();
@@ -261,10 +263,14 @@ void IconPreviewPanel::setDesktop( SPDesktop* desktop )
if ( desktop != this->desktop ) {
docReplacedConn.disconnect();
+ selChangedConn.disconnect();
this->desktop = Panel::getDesktop();
if ( this->desktop ) {
docReplacedConn = this->desktop->connectDocumentReplaced(sigc::hide<0>(sigc::mem_fun(this, &IconPreviewPanel::setDocument)));
+ if (this->desktop->selection) {
+ selChangedConn = desktop->selection->connectChanged(sigc::hide(sigc::mem_fun(this, &IconPreviewPanel::queueRefresh)));
+ }
}
}
setDocument(newDoc);