summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJohn Smith <john.smith7545@yahoo.com>2012-10-30 02:59:53 +0000
committerJohn Smith <john.smith7545@yahoo.com>2012-10-30 02:59:53 +0000
commit1df38b62029b7ca6ad6a0861650bcbb5a463b5eb (patch)
tree345a7319050b5fc8758fa734d1635404fc9e81af /src
parentGerman translation update 100% (diff)
downloadinkscape-1df38b62029b7ca6ad6a0861650bcbb5a463b5eb.tar.gz
inkscape-1df38b62029b7ca6ad6a0861650bcbb5a463b5eb.zip
Fix for 1071426 : Swatches dialog doesn't update when swatch is renamed
(bzr r11852)
Diffstat (limited to 'src')
-rw-r--r--src/ui/dialog/color-item.cpp19
-rw-r--r--src/ui/dialog/color-item.h1
2 files changed, 20 insertions, 0 deletions
diff --git a/src/ui/dialog/color-item.cpp b/src/ui/dialog/color-item.cpp
index 969aac7ab..0c4fe3686 100644
--- a/src/ui/dialog/color-item.cpp
+++ b/src/ui/dialog/color-item.cpp
@@ -355,6 +355,24 @@ void ColorItem::setGradient(SPGradient *grad)
_grad = grad;
// TODO regen and push to listeners
}
+
+ setName( _grad->defaultLabel() );
+}
+
+void ColorItem::setName(const Glib::ustring name)
+{
+ def.descr = name;
+
+ for ( std::vector<Gtk::Widget*>::iterator it = _previews.begin(); it != _previews.end(); ++it ) {
+ Gtk::Widget* widget = *it;
+ if ( IS_EEK_PREVIEW(widget->gobj()) ) {
+ EekPreview * preview = EEK_PREVIEW(widget->gobj());
+ gtk_widget_set_tooltip_text(GTK_WIDGET(preview), def.descr.c_str());
+ }
+ else if ( GTK_IS_LABEL(widget->gobj()) ) {
+ gtk_label_set_text(GTK_LABEL(widget->gobj()), def.descr.c_str());
+ }
+ }
}
void ColorItem::setPattern(cairo_pattern_t *pattern)
@@ -366,6 +384,7 @@ void ColorItem::setPattern(cairo_pattern_t *pattern)
cairo_pattern_destroy(_pattern);
}
_pattern = pattern;
+
_updatePreviews();
}
diff --git a/src/ui/dialog/color-item.h b/src/ui/dialog/color-item.h
index f54586192..3a0b33193 100644
--- a/src/ui/dialog/color-item.h
+++ b/src/ui/dialog/color-item.h
@@ -60,6 +60,7 @@ public:
void setGradient(SPGradient *grad);
SPGradient * getGradient() const { return _grad; }
void setPattern(cairo_pattern_t *pattern);
+ void setName(const Glib::ustring name);
void setState( bool fill, bool stroke );
bool isFill() { return _isFill; }