summaryrefslogtreecommitdiffstats
path: root/src/document.cpp
diff options
context:
space:
mode:
authorMichael Soegtrop <MSoegtrop@yahoo.de>2017-06-05 13:13:40 +0000
committerMichael Soegtrop <MSoegtrop@yahoo.de>2017-06-05 13:13:40 +0000
commitab8fc319f2c80aeea54eaab63ceec042a763fc94 (patch)
tree8eb2f8d265d3cdb61e81331833ec404f751571d0 /src/document.cpp
parentAdded emboidery and bool LPEs (diff)
parentFix regression: restore order in resources (e.g. pattern list) (diff)
downloadinkscape-ab8fc319f2c80aeea54eaab63ceec042a763fc94.tar.gz
inkscape-ab8fc319f2c80aeea54eaab63ceec042a763fc94.zip
updated to trunk
(bzr r14862.2.2)
Diffstat (limited to 'src/document.cpp')
-rw-r--r--src/document.cpp17
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);