diff options
| author | Marc Jeanmougin <marc@jeanmougin.fr> | 2015-12-07 23:34:32 +0000 |
|---|---|---|
| committer | Marc Jeanmougin <marcjeanmougin@free.fr> | 2015-12-07 23:34:32 +0000 |
| commit | 93650897c928bfa9ca9b737cfbff55c25271d5d3 (patch) | |
| tree | 140edc7a4fdb7f1bc5944842a154681964243494 /src/gradient-drag.cpp | |
| parent | update to trunk (no conflict) (diff) | |
| download | inkscape-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/gradient-drag.cpp')
| -rw-r--r-- | src/gradient-drag.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/gradient-drag.cpp b/src/gradient-drag.cpp index 3e5fcd0f4..8fd997121 100644 --- a/src/gradient-drag.cpp +++ b/src/gradient-drag.cpp @@ -208,9 +208,9 @@ Glib::ustring GrDrag::makeStopSafeColor( gchar const *str, bool &isNull ) Glib::ustring::size_type pos = colorStr.find("url(#"); if ( pos != Glib::ustring::npos ) { Glib::ustring targetName = colorStr.substr(pos + 5, colorStr.length() - 6); - const GSList *gradients = desktop->doc()->getResourceList("gradient"); - for (const GSList *item = gradients; item; item = item->next) { - SPGradient* grad = SP_GRADIENT(item->data); + std::set<SPObject *> gradients = desktop->doc()->getResourceList("gradient"); + for (std::set<SPObject *>::const_iterator it = gradients.begin(); it != gradients.end(); ++it) { + SPGradient* grad = SP_GRADIENT(*it); if ( targetName == grad->getId() ) { SPGradient *vect = grad->getVector(); SPStop *firstStop = (vect) ? vect->getFirstStop() : grad->getFirstStop(); |
