summaryrefslogtreecommitdiffstats
path: root/src/sp-guide.cpp
diff options
context:
space:
mode:
authorMarc Jeanmougin <marc@jeanmougin.fr>2015-12-07 23:34:32 +0000
committerMarc Jeanmougin <marcjeanmougin@free.fr>2015-12-07 23:34:32 +0000
commit93650897c928bfa9ca9b737cfbff55c25271d5d3 (patch)
tree140edc7a4fdb7f1bc5944842a154681964243494 /src/sp-guide.cpp
parentupdate to trunk (no conflict) (diff)
downloadinkscape-93650897c928bfa9ca9b737cfbff55c25271d5d3.tar.gz
inkscape-93650897c928bfa9ca9b737cfbff55c25271d5d3.zip
cppification : GHashMaps replaced by stl maps. getResouceList now gives a std::set<SPObject *>.
Should give some performance improvements (quite a few linear lookups are now logarithmic) (bzr r14504.1.6)
Diffstat (limited to 'src/sp-guide.cpp')
-rw-r--r--src/sp-guide.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/sp-guide.cpp b/src/sp-guide.cpp
index 06eaee001..6038860f8 100644
--- a/src/sp-guide.cpp
+++ b/src/sp-guide.cpp
@@ -255,10 +255,11 @@ void sp_guide_create_guides_around_page(SPDesktop *dt)
void sp_guide_delete_all_guides(SPDesktop *dt)
{
SPDocument *doc=dt->getDocument();
- const GSList *current;
- while ( (current = doc->getResourceList("guide")) ) {
- SPGuide* guide = SP_GUIDE(current->data);
+ std::set<SPObject *> current = doc->getResourceList("guide");
+ while (!current.empty()){
+ SPGuide* guide = SP_GUIDE(*(current.begin()));
sp_guide_remove(guide);
+ current = doc->getResourceList("guide");
}
DocumentUndo::done(doc, SP_VERB_NONE, _("Delete All Guides"));