index 04b3d9b0629cdc22965e88bb1cc0ef185b121b1e..e71b9bad5bd6af2919f10d936106b419a1cb4f19 100644 (file)
--- a/src/document-subset.cpp
+++ b/src/document-subset.cpp
* of nodes
*
* Copyright 2006 MenTaLguY <mental@rydia.net>
+ * Abhishek Sharma
*
* Released under GNU GPL, read the file 'COPYING' for more information
*/
for ( Map::iterator iter=records.begin()
; iter != records.end() ; ++iter )
{
- if ((*iter).first)
+ if ((*iter).first) {
sp_object_unref((*iter).first);
+ Record &record=(*iter).second;
+ record.release_connection.disconnect();
+ record.position_changed_connection.disconnect();
+ }
}
}
void _doRemove(SPObject *obj) {
Record &record=records[obj];
- record.release_connection.disconnect();
- record.position_changed_connection.disconnect();
- records.erase(obj);
if ( record.parent == NULL ) {
Record &root = records[NULL];
}
}
+ record.release_connection.disconnect();
+ record.position_changed_connection.disconnect();
+ records.erase(obj);
removed_signal.emit(obj);
sp_object_unref(obj);
}
/* remove obj's record */
_doRemove(obj);
}
-
+
changed_signal.emit();
}
fill-column:99
End:
*/
-// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:encoding=utf-8:textwidth=99 :
+// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 :