diff options
| author | Jabier Arraiza <jabier.arraiza@marker.es> | 2019-06-04 21:30:01 +0000 |
|---|---|---|
| committer | Jabier Arraiza <jabier.arraiza@marker.es> | 2019-06-04 21:30:01 +0000 |
| commit | 2c75064427bcd2d1e358bb492114d466b580de0c (patch) | |
| tree | e64759201224d9214e5cfaf79927fa34d09f1b0b /src | |
| parent | remove clang diff file (diff) | |
| download | inkscape-2c75064427bcd2d1e358bb492114d466b580de0c.tar.gz inkscape-2c75064427bcd2d1e358bb492114d466b580de0c.zip | |
Fix a bug adding selectors
Diffstat (limited to 'src')
| -rw-r--r-- | src/ui/dialog/styledialog.cpp | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/src/ui/dialog/styledialog.cpp b/src/ui/dialog/styledialog.cpp index e14490f47..d0c4c5612 100644 --- a/src/ui/dialog/styledialog.cpp +++ b/src/ui/dialog/styledialog.cpp @@ -751,9 +751,16 @@ void StyleDialog::_readStyleElement() for (auto selector : _styleBox.get_children()) { Gtk::Box *box = dynamic_cast<Gtk::Box *>(&selector[0]); if (box) { - Gtk::TreeView *css_tree = dynamic_cast<Gtk::TreeView *>(box->get_children()[1]); - Glib::RefPtr<Gtk::TreeModel> model = css_tree->get_model(); - model->foreach_iter(sigc::mem_fun(*this, &StyleDialog::_on_foreach_iter)); + std::vector<Gtk::Widget*> childs = box->get_children(); + if (childs.size() > 1) { + Gtk::TreeView *css_tree = dynamic_cast<Gtk::TreeView *>(childs[1]); + if (css_tree) { + Glib::RefPtr<Gtk::TreeModel> model = css_tree->get_model(); + if (model) { + model->foreach_iter(sigc::mem_fun(*this, &StyleDialog::_on_foreach_iter)); + } + } + } } } } @@ -838,6 +845,7 @@ void StyleDialog::_writeStyleElement(Glib::RefPtr<Gtk::TreeStore> store, Glib::u return; } Inkscape::Selection *selection = getDesktop()->getSelection(); + SP_ACTIVE_DOCUMENT->fixCSSSelectors(selector); SPObject *obj = nullptr; if (selection->objects().size() == 1) { obj = selection->objects().back(); @@ -854,6 +862,8 @@ void StyleDialog::_writeStyleElement(Glib::RefPtr<Gtk::TreeStore> store, Glib::u } for (auto &row : store->children()) { selector = row[_mColumns._colSelector]; + SP_ACTIVE_DOCUMENT->fixCSSSelectors(selector); + row[_mColumns._colSelector] = selector; selectorpos = row[_mColumns._colSelectorPos]; Glib::ustring opencomment = ""; Glib::ustring closecomment = ""; |
