/* Clear internal data. Hopefully nothing relies on it at this point. */
_networkModel->clear();
- QHash<uint, Buffer *>::iterator bufferIter = _buffers.begin();
+ QHash<BufferId, Buffer *>::iterator bufferIter = _buffers.begin();
while(bufferIter != _buffers.end()) {
Buffer *buffer = bufferIter.value();
disconnect(buffer, SIGNAL(destroyed()), this, 0);
Q_ASSERT(_buffers.isEmpty());
- QHash<uint, NetworkInfo*>::iterator netIter = _networkInfo.begin();
+ QHash<NetworkId, NetworkInfo*>::iterator netIter = _networkInfo.begin();
while(netIter != _networkInfo.end()) {
NetworkInfo *net = netIter.value();
disconnect(net, SIGNAL(destroyed()), this, 0);
}
Q_ASSERT(_networkInfo.isEmpty());
+ QHash<IdentityId, Identity*>::iterator idIter = _identities.begin();
+ while(idIter != _identities.end()) {
+ Identity *id = idIter.value();
+ emit identityRemoved(id->id());
+ idIter = _identities.erase(idIter);
+ id->deleteLater();
+ }
+ Q_ASSERT(_identities.isEmpty());
+
coreConnectionInfo.clear();
sessionData.clear();
layoutQueue.clear();
// create identities
foreach(QVariant vid, sessionState["Identities"].toList()) {
- Identity *id = new Identity(vid.value<Identity>(), this);
- _identities[id->id()] = id;
- signalProxy()->synchronize(id);
- qDebug() << "received identity" << id->identityName();
+ coreIdentityCreated(vid.value<Identity>());
+ //Identity *id = new Identity(vid.value<Identity>(), this);
+ //_identities[id->id()] = id;
+ //signalProxy()->synchronize(id);
+ //qDebug() << "received identity" << id->identityName();
}
// store Buffer details