summaryrefslogtreecommitdiff
path: root/src/citra_qt/main.cpp
diff options
context:
space:
mode:
authorGravatar Yuri Kunde Schlesner2017-02-18 02:16:24 -0800
committerGravatar Yuri Kunde Schlesner2017-02-18 02:16:24 -0800
commit4cb1f368967165f47490e7a8cd696a690d173604 (patch)
tree7223a92e4549690ff8e676cee3f917190929e3a1 /src/citra_qt/main.cpp
parentQt: Fix action name to match conventions (diff)
downloadyuzu-4cb1f368967165f47490e7a8cd696a690d173604.tar.gz
yuzu-4cb1f368967165f47490e7a8cd696a690d173604.tar.xz
yuzu-4cb1f368967165f47490e7a8cd696a690d173604.zip
Qt: Re-organize setup of debugging widgets
Diffstat (limited to 'src/citra_qt/main.cpp')
-rw-r--r--src/citra_qt/main.cpp69
1 files changed, 34 insertions, 35 deletions
diff --git a/src/citra_qt/main.cpp b/src/citra_qt/main.cpp
index 20eb1f8ca..96ec42214 100644
--- a/src/citra_qt/main.cpp
+++ b/src/citra_qt/main.cpp
@@ -59,7 +59,7 @@ GMainWindow::GMainWindow() : config(new Config()), emu_thread(nullptr) {
59 statusBar()->hide(); 59 statusBar()->hide();
60 60
61 InitializeWidgets(); 61 InitializeWidgets();
62 InitializeDebugMenuActions(); 62 InitializeDebugWidgets();
63 InitializeRecentFileMenuActions(); 63 InitializeRecentFileMenuActions();
64 InitializeHotkeys(); 64 InitializeHotkeys();
65 65
@@ -93,74 +93,85 @@ void GMainWindow::InitializeWidgets() {
93 93
94 game_list = new GameList(); 94 game_list = new GameList();
95 ui.horizontalLayout->addWidget(game_list); 95 ui.horizontalLayout->addWidget(game_list);
96}
97
98void GMainWindow::InitializeDebugWidgets() {
99 connect(ui.action_Create_Pica_Surface_Viewer, &QAction::triggered, this,
100 &GMainWindow::OnCreateGraphicsSurfaceViewer);
101
102 QMenu* debug_menu = ui.menu_View_Debugging;
96 103
97 profilerWidget = new ProfilerWidget(this); 104 profilerWidget = new ProfilerWidget(this);
98 addDockWidget(Qt::BottomDockWidgetArea, profilerWidget); 105 addDockWidget(Qt::BottomDockWidgetArea, profilerWidget);
99 profilerWidget->hide(); 106 profilerWidget->hide();
107 debug_menu->addAction(profilerWidget->toggleViewAction());
100 108
101#if MICROPROFILE_ENABLED 109#if MICROPROFILE_ENABLED
102 microProfileDialog = new MicroProfileDialog(this); 110 microProfileDialog = new MicroProfileDialog(this);
103 microProfileDialog->hide(); 111 microProfileDialog->hide();
112 debug_menu->addAction(microProfileDialog->toggleViewAction());
104#endif 113#endif
105 114
106 disasmWidget = new DisassemblerWidget(this, emu_thread.get()); 115 disasmWidget = new DisassemblerWidget(this, emu_thread.get());
107 addDockWidget(Qt::BottomDockWidgetArea, disasmWidget); 116 addDockWidget(Qt::BottomDockWidgetArea, disasmWidget);
108 disasmWidget->hide(); 117 disasmWidget->hide();
118 debug_menu->addAction(disasmWidget->toggleViewAction());
119 connect(this, &GMainWindow::EmulationStarting, disasmWidget,
120 &DisassemblerWidget::OnEmulationStarting);
121 connect(this, &GMainWindow::EmulationStopping, disasmWidget,
122 &DisassemblerWidget::OnEmulationStopping);
109 123
110 registersWidget = new RegistersWidget(this); 124 registersWidget = new RegistersWidget(this);
111 addDockWidget(Qt::RightDockWidgetArea, registersWidget); 125 addDockWidget(Qt::RightDockWidgetArea, registersWidget);
112 registersWidget->hide(); 126 registersWidget->hide();
127 debug_menu->addAction(registersWidget->toggleViewAction());
128 connect(this, &GMainWindow::EmulationStarting, registersWidget,
129 &RegistersWidget::OnEmulationStarting);
130 connect(this, &GMainWindow::EmulationStopping, registersWidget,
131 &RegistersWidget::OnEmulationStopping);
113 132
114 callstackWidget = new CallstackWidget(this); 133 callstackWidget = new CallstackWidget(this);
115 addDockWidget(Qt::RightDockWidgetArea, callstackWidget); 134 addDockWidget(Qt::RightDockWidgetArea, callstackWidget);
116 callstackWidget->hide(); 135 callstackWidget->hide();
136 debug_menu->addAction(callstackWidget->toggleViewAction());
117 137
118 graphicsWidget = new GPUCommandStreamWidget(this); 138 graphicsWidget = new GPUCommandStreamWidget(this);
119 addDockWidget(Qt::RightDockWidgetArea, graphicsWidget); 139 addDockWidget(Qt::RightDockWidgetArea, graphicsWidget);
120 graphicsWidget->hide(); 140 graphicsWidget->hide();
141 debug_menu->addAction(graphicsWidget->toggleViewAction());
121 142
122 graphicsCommandsWidget = new GPUCommandListWidget(this); 143 graphicsCommandsWidget = new GPUCommandListWidget(this);
123 addDockWidget(Qt::RightDockWidgetArea, graphicsCommandsWidget); 144 addDockWidget(Qt::RightDockWidgetArea, graphicsCommandsWidget);
124 graphicsCommandsWidget->hide(); 145 graphicsCommandsWidget->hide();
146 debug_menu->addAction(graphicsCommandsWidget->toggleViewAction());
125 147
126 graphicsBreakpointsWidget = new GraphicsBreakPointsWidget(Pica::g_debug_context, this); 148 graphicsBreakpointsWidget = new GraphicsBreakPointsWidget(Pica::g_debug_context, this);
127 addDockWidget(Qt::RightDockWidgetArea, graphicsBreakpointsWidget); 149 addDockWidget(Qt::RightDockWidgetArea, graphicsBreakpointsWidget);
128 graphicsBreakpointsWidget->hide(); 150 graphicsBreakpointsWidget->hide();
151 debug_menu->addAction(graphicsBreakpointsWidget->toggleViewAction());
129 152
130 graphicsVertexShaderWidget = new GraphicsVertexShaderWidget(Pica::g_debug_context, this); 153 graphicsVertexShaderWidget = new GraphicsVertexShaderWidget(Pica::g_debug_context, this);
131 addDockWidget(Qt::RightDockWidgetArea, graphicsVertexShaderWidget); 154 addDockWidget(Qt::RightDockWidgetArea, graphicsVertexShaderWidget);
132 graphicsVertexShaderWidget->hide(); 155 graphicsVertexShaderWidget->hide();
156 debug_menu->addAction(graphicsVertexShaderWidget->toggleViewAction());
133 157
134 graphicsTracingWidget = new GraphicsTracingWidget(Pica::g_debug_context, this); 158 graphicsTracingWidget = new GraphicsTracingWidget(Pica::g_debug_context, this);
135 addDockWidget(Qt::RightDockWidgetArea, graphicsTracingWidget); 159 addDockWidget(Qt::RightDockWidgetArea, graphicsTracingWidget);
136 graphicsTracingWidget->hide(); 160 graphicsTracingWidget->hide();
161 debug_menu->addAction(graphicsTracingWidget->toggleViewAction());
162 connect(this, &GMainWindow::EmulationStarting, graphicsTracingWidget,
163 &GraphicsTracingWidget::OnEmulationStarting);
164 connect(this, &GMainWindow::EmulationStopping, graphicsTracingWidget,
165 &GraphicsTracingWidget::OnEmulationStopping);
137 166
138 waitTreeWidget = new WaitTreeWidget(this); 167 waitTreeWidget = new WaitTreeWidget(this);
139 addDockWidget(Qt::LeftDockWidgetArea, waitTreeWidget); 168 addDockWidget(Qt::LeftDockWidgetArea, waitTreeWidget);
140 waitTreeWidget->hide(); 169 waitTreeWidget->hide();
141}
142
143void GMainWindow::InitializeDebugMenuActions() {
144 auto graphicsSurfaceViewerAction = new QAction(tr("Create Pica Surface Viewer"), this);
145 connect(graphicsSurfaceViewerAction, SIGNAL(triggered()), this,
146 SLOT(OnCreateGraphicsSurfaceViewer()));
147
148 QMenu* debug_menu = ui.menu_View->addMenu(tr("Debugging"));
149 debug_menu->addAction(graphicsSurfaceViewerAction);
150 debug_menu->addSeparator();
151 debug_menu->addAction(profilerWidget->toggleViewAction());
152#if MICROPROFILE_ENABLED
153 debug_menu->addAction(microProfileDialog->toggleViewAction());
154#endif
155 debug_menu->addAction(disasmWidget->toggleViewAction());
156 debug_menu->addAction(registersWidget->toggleViewAction());
157 debug_menu->addAction(callstackWidget->toggleViewAction());
158 debug_menu->addAction(graphicsWidget->toggleViewAction());
159 debug_menu->addAction(graphicsCommandsWidget->toggleViewAction());
160 debug_menu->addAction(graphicsBreakpointsWidget->toggleViewAction());
161 debug_menu->addAction(graphicsVertexShaderWidget->toggleViewAction());
162 debug_menu->addAction(graphicsTracingWidget->toggleViewAction());
163 debug_menu->addAction(waitTreeWidget->toggleViewAction()); 170 debug_menu->addAction(waitTreeWidget->toggleViewAction());
171 connect(this, &GMainWindow::EmulationStarting, waitTreeWidget,
172 &WaitTreeWidget::OnEmulationStarting);
173 connect(this, &GMainWindow::EmulationStopping, waitTreeWidget,
174 &WaitTreeWidget::OnEmulationStopping);
164} 175}
165 176
166void GMainWindow::InitializeRecentFileMenuActions() { 177void GMainWindow::InitializeRecentFileMenuActions() {
@@ -235,21 +246,9 @@ void GMainWindow::ConnectWidgetEvents() {
235 connect(ui.action_Stop, SIGNAL(triggered()), this, SLOT(OnStopGame())); 246 connect(ui.action_Stop, SIGNAL(triggered()), this, SLOT(OnStopGame()));
236 connect(ui.action_Single_Window_Mode, SIGNAL(triggered(bool)), this, SLOT(ToggleWindowMode())); 247 connect(ui.action_Single_Window_Mode, SIGNAL(triggered(bool)), this, SLOT(ToggleWindowMode()));
237 248
238 connect(this, SIGNAL(EmulationStarting(EmuThread*)), disasmWidget,
239 SLOT(OnEmulationStarting(EmuThread*)));
240 connect(this, SIGNAL(EmulationStopping()), disasmWidget, SLOT(OnEmulationStopping()));
241 connect(this, SIGNAL(EmulationStarting(EmuThread*)), registersWidget,
242 SLOT(OnEmulationStarting(EmuThread*)));
243 connect(this, SIGNAL(EmulationStopping()), registersWidget, SLOT(OnEmulationStopping()));
244 connect(this, SIGNAL(EmulationStarting(EmuThread*)), render_window, 249 connect(this, SIGNAL(EmulationStarting(EmuThread*)), render_window,
245 SLOT(OnEmulationStarting(EmuThread*))); 250 SLOT(OnEmulationStarting(EmuThread*)));
246 connect(this, SIGNAL(EmulationStopping()), render_window, SLOT(OnEmulationStopping())); 251 connect(this, SIGNAL(EmulationStopping()), render_window, SLOT(OnEmulationStopping()));
247 connect(this, SIGNAL(EmulationStarting(EmuThread*)), graphicsTracingWidget,
248 SLOT(OnEmulationStarting(EmuThread*)));
249 connect(this, SIGNAL(EmulationStopping()), graphicsTracingWidget, SLOT(OnEmulationStopping()));
250 connect(this, SIGNAL(EmulationStarting(EmuThread*)), waitTreeWidget,
251 SLOT(OnEmulationStarting(EmuThread*)));
252 connect(this, SIGNAL(EmulationStopping()), waitTreeWidget, SLOT(OnEmulationStopping()));
253} 252}
254 253
255void GMainWindow::OnDisplayTitleBars(bool show) { 254void GMainWindow::OnDisplayTitleBars(bool show) {