diff options
| author | Michael Soegtrop <MSoegtrop@yahoo.de> | 2017-06-05 13:13:40 +0000 |
|---|---|---|
| committer | Michael Soegtrop <MSoegtrop@yahoo.de> | 2017-06-05 13:13:40 +0000 |
| commit | ab8fc319f2c80aeea54eaab63ceec042a763fc94 (patch) | |
| tree | 8eb2f8d265d3cdb61e81331833ec404f751571d0 /src/document.cpp | |
| parent | Added emboidery and bool LPEs (diff) | |
| parent | Fix regression: restore order in resources (e.g. pattern list) (diff) | |
| download | inkscape-ab8fc319f2c80aeea54eaab63ceec042a763fc94.tar.gz inkscape-ab8fc319f2c80aeea54eaab63ceec042a763fc94.zip | |
updated to trunk
(bzr r14862.2.2)
Diffstat (limited to 'src/document.cpp')
| -rw-r--r-- | src/document.cpp | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/src/document.cpp b/src/document.cpp index 7086fc0be..2500a5cee 100644 --- a/src/document.cpp +++ b/src/document.cpp @@ -1541,9 +1541,9 @@ bool SPDocument::addResource(gchar const *key, SPObject *object) bool result = false; if ( !object->cloned ) { - std::set<SPObject *> rlist = priv->resources[key]; - g_return_val_if_fail(rlist.find(object) == rlist.end(), false); - priv->resources[key].insert(object); + std::vector<SPObject *> rlist = priv->resources[key]; + g_return_val_if_fail(std::find(rlist.begin(),rlist.end(),object) == rlist.end(), false); + priv->resources[key].insert(priv->resources[key].begin(),object); GQuark q = g_quark_from_string(key); @@ -1572,10 +1572,11 @@ bool SPDocument::removeResource(gchar const *key, SPObject *object) bool result = false; if ( !object->cloned ) { - std::set<SPObject *> rlist = priv->resources[key]; + std::vector<SPObject *> rlist = priv->resources[key]; g_return_val_if_fail(!rlist.empty(), false); - g_return_val_if_fail(rlist.find(object) != rlist.end(), false); - priv->resources[key].erase(object); + std::vector<SPObject*>::iterator it = std::find(priv->resources[key].begin(),priv->resources[key].end(),object); + g_return_val_if_fail(it != rlist.end(), false); + priv->resources[key].erase(it); GQuark q = g_quark_from_string(key); priv->resources_changed_signals[q].emit(); @@ -1586,9 +1587,9 @@ bool SPDocument::removeResource(gchar const *key, SPObject *object) return result; } -std::set<SPObject *> const SPDocument::getResourceList(gchar const *key) const +std::vector<SPObject *> const SPDocument::getResourceList(gchar const *key) const { - std::set<SPObject *> emptyset; + std::vector<SPObject *> emptyset; g_return_val_if_fail(key != NULL, emptyset); g_return_val_if_fail(*key != '\0', emptyset); |
