diff options
| author | Adrian Boguszewski <adrbogus1@student.pg.gda.pl> | 2016-03-11 01:06:39 +0000 |
|---|---|---|
| committer | Marc Jeanmougin <marcjeanmougin@free.fr> | 2016-03-11 01:06:39 +0000 |
| commit | 43884ced57f56cf41ad2d7fac3a8f5ba87f78276 (patch) | |
| tree | 0710dc639779467aa9140c6933846ba4da17a594 /src/ui/dialog/template-widget.cpp | |
| parent | Displays filename instead of blank string in unnamed palettes (diff) | |
| download | inkscape-43884ced57f56cf41ad2d7fac3a8f5ba87f78276.tar.gz inkscape-43884ced57f56cf41ad2d7fac3a8f5ba87f78276.zip | |
Improvements on the "new from template" dialog
-> greyed buttons when no dialogs selected (bug 1363450)
-> selected template deselects when filtered out
-> filtering down to 1 template selects it
-> selected template keeps looking selected when filtered
Fixed bugs:
- https://launchpad.net/bugs/1363450
(bzr r14698)
Diffstat (limited to 'src/ui/dialog/template-widget.cpp')
| -rw-r--r-- | src/ui/dialog/template-widget.cpp | 26 |
1 files changed, 17 insertions, 9 deletions
diff --git a/src/ui/dialog/template-widget.cpp b/src/ui/dialog/template-widget.cpp index eff75b311..0d110d853 100644 --- a/src/ui/dialog/template-widget.cpp +++ b/src/ui/dialog/template-widget.cpp @@ -56,6 +56,7 @@ TemplateWidget::TemplateWidget() _more_info_button.signal_clicked().connect( sigc::mem_fun(*this, &TemplateWidget::_displayTemplateDetails)); + _more_info_button.set_sensitive(false); } @@ -85,14 +86,12 @@ void TemplateWidget::create() void TemplateWidget::display(TemplateLoadTab::TemplateData data) { + clear(); _current_template = data; _template_name_label.set_text(_current_template.display_name); _short_description_label.set_text(_current_template.short_description); - - _preview_render.hide(); - _preview_image.hide(); - + std::string imagePath = Glib::build_filename(Glib::path_get_dirname(_current_template.path), _current_template.preview_name); if (data.preview_name != ""){ _preview_image.set(imagePath); @@ -103,17 +102,26 @@ void TemplateWidget::display(TemplateLoadTab::TemplateData data) _preview_render.showImage(gPath); _preview_render.show(); } - - if (_effect_prefs != NULL){ - remove (*_effect_prefs); - _effect_prefs = NULL; - } + if (data.is_procedural){ _effect_prefs = data.tpl_effect->get_imp()->prefs_effect(data.tpl_effect, SP_ACTIVE_DESKTOP, NULL, NULL); pack_start(*_effect_prefs); } + _more_info_button.set_sensitive(true); } +void TemplateWidget::clear() +{ + _template_name_label.set_text(""); + _short_description_label.set_text(""); + _preview_render.hide(); + _preview_image.hide(); + if (_effect_prefs != NULL){ + remove (*_effect_prefs); + _effect_prefs = NULL; + } + _more_info_button.set_sensitive(false); +} void TemplateWidget::_displayTemplateDetails() { |
