--- src/ui/dialog/new-from-template.cpp Mon Jan 06 07:49:17 2014 +++ src/ui/dialog/new-from-template.cpp Mon Jan 13 13:58:22 2014 @@ -44,10 +44,13 @@ void NewFromTemplate::_createFromTemplate() { _main_widget.createTemplate(); - - response(0); + _onClose(); } +void NewFromTemplate::_onClose() +{ + response(0); +} void NewFromTemplate::load_new_from_template() { --- src/ui/dialog/new-from-template.h Mon Jan 06 07:49:17 2014 +++ src/ui/dialog/new-from-template.h Mon Jan 13 14:55:47 2014 @@ -23,6 +23,8 @@ class NewFromTemplate : public Gtk::Dialog { + +friend class TemplateLoadTab; public: static void load_new_from_template(); @@ -32,6 +34,7 @@ TemplateLoadTab _main_widget; void _createFromTemplate(); + void _onClose(); }; } --- src/ui/dialog/template-load-tab.cpp Mon Jan 06 07:49:17 2014 +++ src/ui/dialog/template-load-tab.cpp Mon Jan 13 14:55:23 2014 @@ -10,6 +10,7 @@ #include "template-widget.h" #include "template-load-tab.h" +#include "new-from-template.h" #include #include @@ -31,10 +32,8 @@ #include "xml/document.h" #include "xml/node.h" - namespace Inkscape { namespace UI { - TemplateLoadTab::TemplateLoadTab() : _current_keyword("") @@ -84,7 +83,9 @@ void TemplateLoadTab::_onRowActivated(const Gtk::TreeModel::Path &, Gtk::TreeViewColumn*) { - _info_widget->create(); + createTemplate(); + NewFromTemplate* parent = static_cast (this->get_toplevel()); + parent->_onClose(); } void TemplateLoadTab::_displayTemplateInfo()