diff --git a/src/Mod/Spreadsheet/App/PropertySheet.cpp b/src/Mod/Spreadsheet/App/PropertySheet.cpp index 2b61971db..dc4f751b0 100644 --- a/src/Mod/Spreadsheet/App/PropertySheet.cpp +++ b/src/Mod/Spreadsheet/App/PropertySheet.cpp @@ -1089,6 +1089,11 @@ void PropertySheet::renamedDocument(const App::Document * doc) } } +void PropertySheet::deletedDocumentObject(const App::DocumentObject *docObj) +{ + docDeps.erase(const_cast(docObj)); +} + void PropertySheet::documentSet() { documentName[owner->getDocument()] = owner->getDocument()->Label.getValue(); diff --git a/src/Mod/Spreadsheet/App/PropertySheet.h b/src/Mod/Spreadsheet/App/PropertySheet.h index bc7d9ddc8..e7d07a64a 100644 --- a/src/Mod/Spreadsheet/App/PropertySheet.h +++ b/src/Mod/Spreadsheet/App/PropertySheet.h @@ -143,6 +143,8 @@ public: void renamedDocument(const App::Document *doc); + void deletedDocumentObject(const App::DocumentObject *docObj); + void documentSet(); private: diff --git a/src/Mod/Spreadsheet/App/SheetObserver.cpp b/src/Mod/Spreadsheet/App/SheetObserver.cpp index 311bdc321..b67064c55 100644 --- a/src/Mod/Spreadsheet/App/SheetObserver.cpp +++ b/src/Mod/Spreadsheet/App/SheetObserver.cpp @@ -60,6 +60,7 @@ void SheetObserver::slotCreatedObject(const DocumentObject &Obj) void SheetObserver::slotDeletedObject(const DocumentObject &Obj) { sheet->invalidateDependants(&Obj); + sheet->deletedDocumentObject(&Obj); } /**