From 73df05529ceeaa7672076a0ec10bfa79374bb9a0 Mon Sep 17 00:00:00 2001 From: jjjoness <82226755+jjjoness@users.noreply.github.com> Date: Mon, 26 Apr 2021 13:59:05 +0100 Subject: [PATCH] Completed new Play Console button. --- .../Editor/Core/LevelEditorMenuHandler.cpp | 2 +- Code/Sandbox/Editor/CryEdit.cpp | 2 +- Code/Sandbox/Editor/MainWindow.cpp | 26 +++++++++++++++++-- Code/Sandbox/Editor/MainWindow.h | 1 + Code/Sandbox/Editor/Resource.h | 2 +- Code/Sandbox/Editor/ToolbarManager.cpp | 2 +- 6 files changed, 29 insertions(+), 6 deletions(-) diff --git a/Code/Sandbox/Editor/Core/LevelEditorMenuHandler.cpp b/Code/Sandbox/Editor/Core/LevelEditorMenuHandler.cpp index aed53d6e8b..10d9928259 100644 --- a/Code/Sandbox/Editor/Core/LevelEditorMenuHandler.cpp +++ b/Code/Sandbox/Editor/Core/LevelEditorMenuHandler.cpp @@ -685,7 +685,7 @@ QMenu* LevelEditorMenuHandler::CreateGameMenu() auto gameMenu = m_actionManager->AddMenu(tr("&Game"), s_gameMenuId); // Play Game - gameMenu.AddAction(ID_VIEW_SWITCHTOGAME); + gameMenu.AddAction(ID_TOOLBAR_WIDGET_SWITCHTOGAME); // Enable Physics/AI gameMenu.AddAction(ID_SWITCH_PHYSICS); diff --git a/Code/Sandbox/Editor/CryEdit.cpp b/Code/Sandbox/Editor/CryEdit.cpp index a474706910..d27450fc88 100644 --- a/Code/Sandbox/Editor/CryEdit.cpp +++ b/Code/Sandbox/Editor/CryEdit.cpp @@ -384,7 +384,7 @@ void CCryEditApp::RegisterActionHandlers() ON_COMMAND(ID_EDIT_FETCH, OnEditFetch) ON_COMMAND(ID_GENERATORS_STATICOBJECTS, OnGeneratorsStaticobjects) ON_COMMAND(ID_FILE_EXPORTTOGAMENOSURFACETEXTURE, OnFileExportToGameNoSurfaceTexture) - ON_COMMAND(ID_VIEW_SWITCHTOGAME, OnViewSwitchToGame) + ON_COMMAND(ID_TOOLBAR_WIDGET_SWITCHTOGAME, OnViewSwitchToGame) ON_COMMAND(ID_EDIT_SELECTALL, OnEditSelectAll) ON_COMMAND(ID_EDIT_SELECTNONE, OnEditSelectNone) ON_COMMAND(ID_EDIT_DELETE, OnEditDelete) diff --git a/Code/Sandbox/Editor/MainWindow.cpp b/Code/Sandbox/Editor/MainWindow.cpp index 5411511eb8..5c710f318a 100644 --- a/Code/Sandbox/Editor/MainWindow.cpp +++ b/Code/Sandbox/Editor/MainWindow.cpp @@ -1172,7 +1172,8 @@ void MainWindow::InitActions() .Connect(&QAction::triggered, this, &MainWindow::OnRefreshAudioSystem); // Fame actions - am->AddAction(ID_VIEW_SWITCHTOGAME, tr("Play Console")) + am->AddAction(ID_TOOLBAR_WIDGET_SWITCHTOGAME, tr("Play Console")) + .SetIcon(QIcon(":/stylesheet/img/UI20/toolbar/Play.svg")) .SetShortcut(tr("Ctrl+G")) .SetToolTip(tr("Play Console (Ctrl+G)")) .SetStatusTip(tr("Activate the game input mode")) @@ -1498,6 +1499,24 @@ QWidget* MainWindow::CreateSpacerRightWidget() return spacer; } +QWidget* MainWindow::CreateSwitchToGameButton() +{ + QWidget* playConsole = new QWidget(); + QHBoxLayout* layout = new QHBoxLayout(); + playConsole->setLayout(layout); + + QLabel* label = new QLabel(); + label->setText(tr("Play Console")); + + QToolButton*play = new QToolButton(); + play->setAutoRaise(true); + play->setDefaultAction(m_actionManager->GetAction(ID_TOOLBAR_WIDGET_SWITCHTOGAME)); + layout->addWidget(label); + layout->addWidget(play); + return playConsole; +} + + void MainWindow::InitEnvironmentModeMenu(CVarMenu* environmentModeMenu) { environmentModeMenu->clear(); @@ -1705,7 +1724,7 @@ void MainWindow::OnGameModeChanged(bool inGameMode) { menuBar()->setDisabled(inGameMode); m_toolbarManager->SetEnabled(!inGameMode); - QAction* action = m_actionManager->GetAction(ID_VIEW_SWITCHTOGAME); + QAction* action = m_actionManager->GetAction(ID_TOOLBAR_WIDGET_SWITCHTOGAME); action->blockSignals(true); // avoid a loop action->setChecked(inGameMode); action->blockSignals(false); @@ -2406,6 +2425,9 @@ QWidget* MainWindow::CreateToolbarWidget(int actionId) break; case ID_TOOLBAR_WIDGET_SPACER_RIGHT: w = CreateSpacerRightWidget(); + break; + case ID_TOOLBAR_WIDGET_SWITCHTOGAME: + w = CreateSwitchToGameButton(); break; default: qWarning() << Q_FUNC_INFO << "Unknown id " << actionId; diff --git a/Code/Sandbox/Editor/MainWindow.h b/Code/Sandbox/Editor/MainWindow.h index cafa719589..05cc6e7640 100644 --- a/Code/Sandbox/Editor/MainWindow.h +++ b/Code/Sandbox/Editor/MainWindow.h @@ -216,6 +216,7 @@ private: QWidget* CreateSnapToGridWidget(); QWidget* CreateSnapToAngleWidget(); QWidget* CreateSpacerRightWidget(); + QWidget* CreateSwitchToGameButton(); QToolButton* CreateUndoRedoButton(int command); diff --git a/Code/Sandbox/Editor/Resource.h b/Code/Sandbox/Editor/Resource.h index 56f1fc86a1..e2944a3e14 100644 --- a/Code/Sandbox/Editor/Resource.h +++ b/Code/Sandbox/Editor/Resource.h @@ -132,7 +132,6 @@ #define ID_EDIT_HOLD 33464 #define ID_EDIT_FETCH 33465 #define ID_FILE_EXPORTTOGAMENOSURFACETEXTURE 33473 -#define ID_VIEW_SWITCHTOGAME 33477 #define ID_EDIT_DELETE 33480 #define ID_MOVE_OBJECT 33481 #define ID_RENAME_OBJ 33483 @@ -398,4 +397,5 @@ #define ID_TOOLBAR_WIDGET_ENVIRONMENT_MODE 50011 #define ID_TOOLBAR_WIDGET_DEBUG_MODE 50012 #define ID_TOOLBAR_WIDGET_SPACER_RIGHT 50013 +#define ID_TOOLBAR_WIDGET_SWITCHTOGAME 50014 #define ID_TOOLBAR_WIDGET_LAST 50020 diff --git a/Code/Sandbox/Editor/ToolbarManager.cpp b/Code/Sandbox/Editor/ToolbarManager.cpp index 9d2f57f44b..cdeee570ca 100644 --- a/Code/Sandbox/Editor/ToolbarManager.cpp +++ b/Code/Sandbox/Editor/ToolbarManager.cpp @@ -629,7 +629,7 @@ AmazonToolbar ToolbarManager::GetPlayConsoleToolbar() const t.AddAction(ID_TOOLBAR_WIDGET_SPACER_RIGHT, ORIGINAL_TOOLBAR_VERSION); t.AddAction(ID_TOOLBAR_SEPARATOR, ORIGINAL_TOOLBAR_VERSION); - t.AddAction(ID_VIEW_SWITCHTOGAME, TOOLBARS_WITH_PLAY_GAME); + t.AddAction(ID_TOOLBAR_WIDGET_SWITCHTOGAME, TOOLBARS_WITH_PLAY_GAME); return t; }