Code Review for Job #19648
Showing the changes to interface/src/Menu.cpp (1 of 11 files). Show all
Unified · Split
| @@ -73,6 +73,11 @@ const int ONE_SECOND_OF_FRAMES = 60; · 72 unmodified lines | |||
| 73 | const int FIVE_SECONDS_OF_FRAMES = 5 * ONE_SECOND_OF_FRAMES; | 73 | const int FIVE_SECONDS_OF_FRAMES = 5 * ONE_SECOND_OF_FRAMES; |
| 74 | const float MUTE_RADIUS = 50; | 74 | const float MUTE_RADIUS = 50; |
| 75 | 75 | ||
| 76 | const QString CONSOLE_TITLE = "Scripting Console"; | ||
| 77 | const float CONSOLE_WINDOW_OPACITY = 0.95f; | ||
| 78 | const int CONSOLE_WIDTH = 800; | ||
| 79 | const int CONSOLE_HEIGHT = 200; | ||
| 80 | |||
| 76 | Menu::Menu() : | 81 | Menu::Menu() : |
| 77 | _actionHash(), | 82 | _actionHash(), |
| 78 | _audioJitterBufferSamples(0), | 83 | _audioJitterBufferSamples(0), |
| @@ -81,6 +86,7 @@ Menu::Menu() : · 2 unmodified lines | |||
| 81 | _faceshiftEyeDeflection(DEFAULT_FACESHIFT_EYE_DEFLECTION), | 86 | _faceshiftEyeDeflection(DEFAULT_FACESHIFT_EYE_DEFLECTION), |
| 82 | _frustumDrawMode(FRUSTUM_DRAW_MODE_ALL), | 87 | _frustumDrawMode(FRUSTUM_DRAW_MODE_ALL), |
| 83 | _viewFrustumOffset(DEFAULT_FRUSTUM_OFFSET), | 88 | _viewFrustumOffset(DEFAULT_FRUSTUM_OFFSET), |
| 89 | _jsConsole(NULL), | ||
| 84 | _octreeStatsDialog(NULL), | 90 | _octreeStatsDialog(NULL), |
| 85 | _lodToolsDialog(NULL), | 91 | _lodToolsDialog(NULL), |
| 86 | _maxVoxels(DEFAULT_MAX_VOXELS_PER_SYSTEM), | 92 | _maxVoxels(DEFAULT_MAX_VOXELS_PER_SYSTEM), |
| @@ -227,6 +233,12 @@ Menu::Menu() : · 140 unmodified lines | |||
| 227 | _chatWindow = new ChatWindow(Application::getInstance()->getWindow()); | 233 | _chatWindow = new ChatWindow(Application::getInstance()->getWindow()); |
| 228 | #endif | 234 | #endif |
| 229 | 235 | ||
| 236 | addActionToQMenuAndActionHash(toolsMenu, | ||
| 237 | MenuOption::Console, | ||
| 238 | Qt::CTRL | Qt::ALT | Qt::Key_J, | ||
| 239 | this, | ||
| 240 | SLOT(toggleConsole())); | ||
| 241 | |||
| 230 | QMenu* viewMenu = addMenu("View"); | 242 | QMenu* viewMenu = addMenu("View"); |
| 231 | 243 | ||
| 232 | addCheckableActionToQMenuAndActionHash(viewMenu, | 244 | addCheckableActionToQMenuAndActionHash(viewMenu, |
| @@ -1258,6 +1270,25 @@ void Menu::toggleChat() { · 1025 unmodified lines | |||
| 1258 | #endif | 1270 | #endif |
| 1259 | } | 1271 | } |
| 1260 | 1272 | ||
| 1273 | void Menu::toggleConsole() { | ||
| 1274 | QMainWindow* mainWindow = Application::getInstance()->getWindow(); | ||
| 1275 | if (!_jsConsole) { | ||
| 1276 | QDialog* dialog = new QDialog(mainWindow, Qt::WindowStaysOnTopHint); | ||
| 1277 | QVBoxLayout* layout = new QVBoxLayout(dialog); | ||
| 1278 | dialog->setLayout(new QVBoxLayout(dialog)); | ||
| 1279 | |||
| 1280 | dialog->resize(QSize(CONSOLE_WIDTH, CONSOLE_HEIGHT)); | ||
| 1281 | layout->setMargin(0); | ||
| 1282 | layout->setSpacing(0); | ||
| 1283 | layout->addWidget(new JSConsole(dialog)); | ||
| 1284 | dialog->setWindowOpacity(CONSOLE_WINDOW_OPACITY); | ||
| 1285 | dialog->setWindowTitle(CONSOLE_TITLE); | ||
| 1286 | |||
| 1287 | _jsConsole = dialog; | ||
| 1288 | } | ||
| 1289 | _jsConsole->setVisible(!_jsConsole->isVisible()); | ||
| 1290 | } | ||
| 1291 | |||
| 1261 | void Menu::audioMuteToggled() { | 1292 | void Menu::audioMuteToggled() { |
| 1262 | QAction *muteAction = _actionHash.value(MenuOption::MuteAudio); | 1293 | QAction *muteAction = _actionHash.value(MenuOption::MuteAudio); |
| 1263 | muteAction->setChecked(Application::getInstance()->getAudio()->getMuted()); | 1294 | muteAction->setChecked(Application::getInstance()->getAudio()->getMuted()); |