Showing the changes to interface/src/Menu.cpp (1 of 3 files). Show all
Unified · Split
| @@ -43,6 +43,7 @@ · 42 unmodified lines | ||
| 43 | 43 | #include "avatar/AvatarManager.h" |
| 44 | 44 | #include "avatar/AvatarPackager.h" |
| 45 | 45 | #include "AvatarBookmarks.h" |
| 46 | +#include "DomainAccountManager.h" | |
| 46 | 47 | #include "MainWindow.h" |
| 47 | 48 | #include "render/DrawStatus.h" |
| 48 | 49 | #include "scripting/MenuScriptingInterface.h" |
| @@ -73,6 +74,7 @@ const char* EXCLUSION_GROUP_KEY = "exclusionGroup"; · 24 unmodified lines | ||
| 73 | 74 | Menu::Menu() { |
| 74 | 75 | auto dialogsManager = DependencyManager::get<DialogsManager>(); |
| 75 | 76 | auto accountManager = DependencyManager::get<AccountManager>(); |
| 77 | + auto domainAccountManager = DependencyManager::get<DomainAccountManager>(); | |
| 76 | 78 | |
| 77 | 79 | // File/Application menu ---------------------------------- |
| 78 | 80 | MenuWrapper* fileMenu = addMenu("File"); |
| @@ -89,11 +91,15 @@ Menu::Menu() { · 10 unmodified lines | ||
| 89 | 91 | } |
| 90 | 92 | |
| 91 | 93 | auto domainLogin = addActionToQMenuAndActionHash(fileMenu, "Domain: Log In"); |
| 94 | + domainLogin->setVisible(false); | |
| 92 | 95 | connect(domainLogin, &QAction::triggered, [] { |
| 93 | 96 | auto dialogsManager = DependencyManager::get<DialogsManager>(); |
| 94 | 97 | dialogsManager->setDomainLoginState(); |
| 95 | 98 | dialogsManager->showDomainLoginDialog(); |
| 96 | 99 | }); |
| 100 | + connect(domainAccountManager.data(), &DomainAccountManager::hasLogInChanged, [domainLogin](bool hasLogIn) { | |
| 101 | + domainLogin->setVisible(hasLogIn); | |
| 102 | + }); | |
| 97 | 103 | |
| 98 | 104 | // File > Quit |
| 99 | 105 | addActionToQMenuAndActionHash(fileMenu, MenuOption::Quit, Qt::CTRL | Qt::Key_Q, qApp, SLOT(quit()), QAction::QuitRole); |