mirror of
https://github.com/overte-org/overte.git
synced 2025-08-06 17:00:13 +02:00
clear all octree related state when disconnecting from a domain
This commit is contained in:
parent
372d8946d0
commit
bceab4ead9
2 changed files with 15 additions and 3 deletions
|
@ -255,6 +255,7 @@ Application::Application(int& argc, char** argv, QElapsedTimer &startup_time) :
|
||||||
connect(&domainHandler, SIGNAL(connectedToDomain(const QString&)), SLOT(connectedToDomain(const QString&)));
|
connect(&domainHandler, SIGNAL(connectedToDomain(const QString&)), SLOT(connectedToDomain(const QString&)));
|
||||||
connect(&domainHandler, SIGNAL(connectedToDomain(const QString&)), SLOT(updateWindowTitle()));
|
connect(&domainHandler, SIGNAL(connectedToDomain(const QString&)), SLOT(updateWindowTitle()));
|
||||||
connect(&domainHandler, SIGNAL(disconnectedFromDomain()), SLOT(updateWindowTitle()));
|
connect(&domainHandler, SIGNAL(disconnectedFromDomain()), SLOT(updateWindowTitle()));
|
||||||
|
connect(&domainHandler, SIGNAL(disconnectedFromDomain()), SLOT(clearDomainOctreeDetails()));
|
||||||
connect(&domainHandler, &DomainHandler::settingsReceived, this, &Application::domainSettingsReceived);
|
connect(&domainHandler, &DomainHandler::settingsReceived, this, &Application::domainSettingsReceived);
|
||||||
connect(&domainHandler, &DomainHandler::hostnameChanged, Menu::getInstance(), &Menu::clearLoginDialogDisplayedFlag);
|
connect(&domainHandler, &DomainHandler::hostnameChanged, Menu::getInstance(), &Menu::clearLoginDialogDisplayedFlag);
|
||||||
|
|
||||||
|
@ -3565,9 +3566,8 @@ void Application::changeDomainHostname(const QString &newDomainHostname) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void Application::domainChanged(const QString& domainHostname) {
|
void Application::clearDomainOctreeDetails() {
|
||||||
updateWindowTitle();
|
qDebug() << "Clearing domain octree details...";
|
||||||
|
|
||||||
// reset the environment so that we don't erroneously end up with multiple
|
// reset the environment so that we don't erroneously end up with multiple
|
||||||
_environment.resetToDefault();
|
_environment.resetToDefault();
|
||||||
|
|
||||||
|
@ -3576,7 +3576,13 @@ void Application::domainChanged(const QString& domainHostname) {
|
||||||
_voxelServerJurisdictions.clear();
|
_voxelServerJurisdictions.clear();
|
||||||
_voxelServerJurisdictions.unlock();
|
_voxelServerJurisdictions.unlock();
|
||||||
|
|
||||||
|
_entityServerJurisdictions.lockForWrite();
|
||||||
|
_entityServerJurisdictions.clear();
|
||||||
|
_entityServerJurisdictions.unlock();
|
||||||
|
|
||||||
|
_octreeSceneStatsLock.lockForWrite();
|
||||||
_octreeServerSceneStats.clear();
|
_octreeServerSceneStats.clear();
|
||||||
|
_octreeSceneStatsLock.unlock();
|
||||||
|
|
||||||
// reset the model renderer
|
// reset the model renderer
|
||||||
_entities.clear();
|
_entities.clear();
|
||||||
|
@ -3585,6 +3591,11 @@ void Application::domainChanged(const QString& domainHostname) {
|
||||||
_voxels.killLocalVoxels();
|
_voxels.killLocalVoxels();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Application::domainChanged(const QString& domainHostname) {
|
||||||
|
updateWindowTitle();
|
||||||
|
clearDomainOctreeDetails();
|
||||||
|
}
|
||||||
|
|
||||||
void Application::connectedToDomain(const QString& hostname) {
|
void Application::connectedToDomain(const QString& hostname) {
|
||||||
AccountManager& accountManager = AccountManager::getInstance();
|
AccountManager& accountManager = AccountManager::getInstance();
|
||||||
const QUuid& domainID = NodeList::getInstance()->getDomainHandler().getUUID();
|
const QUuid& domainID = NodeList::getInstance()->getDomainHandler().getUUID();
|
||||||
|
|
|
@ -377,6 +377,7 @@ public slots:
|
||||||
void resetSensors();
|
void resetSensors();
|
||||||
|
|
||||||
private slots:
|
private slots:
|
||||||
|
void clearDomainOctreeDetails();
|
||||||
void timer();
|
void timer();
|
||||||
void idle();
|
void idle();
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue