From a80ccb945160526b97402dde3016741d2bafafc3 Mon Sep 17 00:00:00 2001 From: Eivind Kvedalen Date: Wed, 7 Oct 2015 22:01:37 +0200 Subject: [PATCH] Spreadsheet: Renaming an alias will now traverse the document and update expressions referencing it. --- src/Mod/Spreadsheet/App/PropertySheet.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/Mod/Spreadsheet/App/PropertySheet.cpp b/src/Mod/Spreadsheet/App/PropertySheet.cpp index 5056fa5f1..352ce8108 100644 --- a/src/Mod/Spreadsheet/App/PropertySheet.cpp +++ b/src/Mod/Spreadsheet/App/PropertySheet.cpp @@ -449,6 +449,15 @@ void PropertySheet::setAlias(CellAddress address, const std::string &alias) owner->aliasRemoved(address, oldAlias); cell->setAlias(alias); + + if (oldAlias.size() > 0) { + std::map m; + + m[App::ObjectIdentifier(owner, oldAlias)] = App::ObjectIdentifier(owner, alias); + + owner->getDocument()->renameObjectIdentifiers(m); + } + } void PropertySheet::setComputedUnit(CellAddress address, const Base::Unit &unit)