Showing the changes to interface/src/Menu.cpp (1 of 4 files). Show all
Unified · Split
| @@ -56,6 +56,8 @@ Menu* Menu::getInstance() { · 55 unmodified lines | ||
| 56 | 56 | return dynamic_cast<Menu*>(qApp->getWindow()->menuBar()); |
| 57 | 57 | } |
| 58 | 58 | |
| 59 | +const char* exclusionGroupKey = "exclusionGroup"; | |
| 60 | + | |
| 59 | 61 | Menu::Menu() { |
| 60 | 62 | auto dialogsManager = DependencyManager::get<DialogsManager>(); |
| 61 | 63 | auto accountManager = DependencyManager::get<AccountManager>(); |
| @@ -222,32 +224,42 @@ Menu::Menu() { · 160 unmodified lines | ||
| 222 | 224 | cameraModeGroup->setExclusive(true); |
| 223 | 225 | |
| 224 | 226 | // View > First Person |
| 225 | − cameraModeGroup->addAction(addCheckableActionToQMenuAndActionHash( | |
| 227 | + auto firstPersonAction = cameraModeGroup->addAction(addCheckableActionToQMenuAndActionHash( | |
| 226 | 228 | viewMenu, MenuOption::FirstPerson, Qt::CTRL | Qt::Key_F, |
| 227 | 229 | true, qApp, SLOT(cameraMenuChanged()))); |
| 228 | 230 | |
| 231 | + firstPersonAction->setProperty(exclusionGroupKey, QVariant::fromValue(cameraModeGroup)); | |
| 232 | + | |
| 229 | 233 | // View > Third Person |
| 230 | − cameraModeGroup->addAction(addCheckableActionToQMenuAndActionHash( | |
| 234 | + auto thirdPersonAction = cameraModeGroup->addAction(addCheckableActionToQMenuAndActionHash( | |
| 231 | 235 | viewMenu, MenuOption::ThirdPerson, Qt::CTRL | Qt::Key_G, |
| 232 | 236 | false, qApp, SLOT(cameraMenuChanged()))); |
| 233 | 237 | |
| 238 | + thirdPersonAction->setProperty(exclusionGroupKey, QVariant::fromValue(cameraModeGroup)); | |
| 239 | + | |
| 234 | 240 | // View > Mirror |
| 235 | − cameraModeGroup->addAction(addCheckableActionToQMenuAndActionHash( | |
| 241 | + auto viewMirrorAction = cameraModeGroup->addAction(addCheckableActionToQMenuAndActionHash( | |
| 236 | 242 | viewMenu, MenuOption::FullscreenMirror, Qt::CTRL | Qt::Key_H, |
| 237 | 243 | false, qApp, SLOT(cameraMenuChanged()))); |
| 238 | 244 | |
| 245 | + viewMirrorAction->setProperty(exclusionGroupKey, QVariant::fromValue(cameraModeGroup)); | |
| 246 | + | |
| 239 | 247 | // View > Independent [advanced] |
| 240 | − cameraModeGroup->addAction(addCheckableActionToQMenuAndActionHash(viewMenu, | |
| 248 | + auto viewIndependentAction = cameraModeGroup->addAction(addCheckableActionToQMenuAndActionHash(viewMenu, | |
| 241 | 249 | MenuOption::IndependentMode, 0, |
| 242 | 250 | false, qApp, SLOT(cameraMenuChanged()), |
| 243 | 251 | UNSPECIFIED_POSITION, "Advanced")); |
| 244 | 252 | |
| 253 | + viewIndependentAction->setProperty(exclusionGroupKey, QVariant::fromValue(cameraModeGroup)); | |
| 254 | + | |
| 245 | 255 | // View > Entity Camera [advanced] |
| 246 | − cameraModeGroup->addAction(addCheckableActionToQMenuAndActionHash(viewMenu, | |
| 256 | + auto viewEntityCameraAction = cameraModeGroup->addAction(addCheckableActionToQMenuAndActionHash(viewMenu, | |
| 247 | 257 | MenuOption::CameraEntityMode, 0, |
| 248 | 258 | false, qApp, SLOT(cameraMenuChanged()), |
| 249 | 259 | UNSPECIFIED_POSITION, "Advanced")); |
| 250 | 260 | |
| 261 | + viewEntityCameraAction->setProperty(exclusionGroupKey, QVariant::fromValue(cameraModeGroup)); | |
| 262 | + | |
| 251 | 263 | viewMenu->addSeparator(); |
| 252 | 264 | |
| 253 | 265 | // View > Center Player In View |