summaryrefslogtreecommitdiffstats
path: root/src
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
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')
-rw-r--r--src/ui/dialog/icon-preview.cpp8
-rw-r--r--src/ui/dialog/icon-preview.h1
2 files changed, 8 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);
diff --git a/src/ui/dialog/icon-preview.h b/src/ui/dialog/icon-preview.h
index a0f813b94..9de882569 100644
--- a/src/ui/dialog/icon-preview.h
+++ b/src/ui/dialog/icon-preview.h
@@ -84,6 +84,7 @@ private:
sigc::connection desktopChangeConn;
sigc::connection docReplacedConn;
sigc::connection docModConn;
+ sigc::connection selChangedConn;
void setDocument( SPDocument *document );