mirror of
https://github.com/citra-emu/citra.git
synced 2024-11-30 01:10:06 +00:00
citra-qt : Implementing toolbar events
This commit is contained in:
parent
aaff548ef2
commit
fe094cae28
@ -105,6 +105,7 @@ GMainWindow::GMainWindow() : config(new Config()), emu_thread(nullptr) {
|
||||
|
||||
ConnectMenuEvents();
|
||||
ConnectWidgetEvents();
|
||||
ConnectToolbarEvents();
|
||||
|
||||
setWindowTitle(QString("Citra %1| %2-%3")
|
||||
.arg(Common::g_build_name, Common::g_scm_branch, Common::g_scm_desc));
|
||||
@ -325,6 +326,37 @@ void GMainWindow::ConnectMenuEvents() {
|
||||
connect(ui.action_Show_Status_Bar, &QAction::triggered, statusBar(), &QStatusBar::setVisible);
|
||||
}
|
||||
|
||||
void GMainWindow::ConnectToolbarEvents(){
|
||||
// File
|
||||
connect(ui.action_Toolbar_Load_File, &QAction::triggered, this, &GMainWindow::OnMenuLoadFile);
|
||||
|
||||
// Toggle fullscreen
|
||||
connect(ui.action_Toolbar_Toggle_Fullscreen, &QAction::triggered, this, [this] {
|
||||
if (isFullScreen()) {
|
||||
showNormal();
|
||||
ui.action_Toolbar_Toggle_Fullscreen->setIcon(QIcon(":toolbar_icons/rc/fullscreen.png"));
|
||||
} else {
|
||||
showFullScreen();
|
||||
ui.action_Toolbar_Toggle_Fullscreen->setIcon(QIcon(":toolbar_icons/rc/fullscreen_exit.png"));
|
||||
}
|
||||
} );
|
||||
|
||||
// Emulation
|
||||
connect(ui.action_Toolbar_Stop, &QAction::triggered, this, &GMainWindow::OnStopGame);
|
||||
connect(ui.action_Toolbar_Start_Pause, &QAction::triggered, this, [this] {
|
||||
if (emulation_running) {
|
||||
OnPauseGame();
|
||||
emulation_running = false;
|
||||
} else {
|
||||
OnStartGame();
|
||||
emulation_running = true;
|
||||
}
|
||||
} );
|
||||
|
||||
// Configure
|
||||
connect(ui.action_Toolbar_Configure, &QAction::triggered, this, &GMainWindow::OnConfigure);
|
||||
}
|
||||
|
||||
void GMainWindow::OnDisplayTitleBars(bool show) {
|
||||
QList<QDockWidget*> widgets = findChildren<QDockWidget*>();
|
||||
|
||||
@ -483,6 +515,10 @@ void GMainWindow::ShutdownGame() {
|
||||
disconnect(render_window, SIGNAL(Closed()), this, SLOT(OnStopGame()));
|
||||
|
||||
// Update the GUI
|
||||
ui.action_Toolbar_Start_Pause->setEnabled(false);
|
||||
ui.action_Toolbar_Start_Pause->setIcon(QIcon(":toolbar_icons/rc/play.png"));
|
||||
ui.action_Toolbar_Start_Pause->setToolTip(tr("Start"));
|
||||
ui.action_Toolbar_Stop->setEnabled(false);
|
||||
ui.action_Start->setEnabled(false);
|
||||
ui.action_Start->setText(tr("Start"));
|
||||
ui.action_Pause->setEnabled(false);
|
||||
@ -610,6 +646,12 @@ void GMainWindow::OnStartGame() {
|
||||
|
||||
ui.action_Pause->setEnabled(true);
|
||||
ui.action_Stop->setEnabled(true);
|
||||
|
||||
ui.action_Toolbar_Start_Pause->setEnabled(true);
|
||||
ui.action_Toolbar_Start_Pause->setIcon(QIcon(":toolbar_icons/rc/pause.png"));
|
||||
ui.action_Toolbar_Start_Pause->setToolTip(tr("Pause"));
|
||||
|
||||
ui.action_Toolbar_Stop->setEnabled(true);
|
||||
}
|
||||
|
||||
void GMainWindow::OnPauseGame() {
|
||||
@ -618,6 +660,9 @@ void GMainWindow::OnPauseGame() {
|
||||
ui.action_Start->setEnabled(true);
|
||||
ui.action_Pause->setEnabled(false);
|
||||
ui.action_Stop->setEnabled(true);
|
||||
|
||||
ui.action_Toolbar_Start_Pause->setIcon(QIcon(":toolbar_icons/rc/play.png"));
|
||||
ui.action_Toolbar_Start_Pause->setToolTip(tr("Continue"));
|
||||
}
|
||||
|
||||
void GMainWindow::OnStopGame() {
|
||||
|
@ -75,6 +75,7 @@ private:
|
||||
|
||||
void ConnectWidgetEvents();
|
||||
void ConnectMenuEvents();
|
||||
void ConnectToolbarEvents();
|
||||
|
||||
bool LoadROM(const QString& filename);
|
||||
void BootGame(const QString& filename);
|
||||
|
@ -103,13 +103,16 @@
|
||||
<addaction name="menu_Help"/>
|
||||
</widget>
|
||||
<widget class="QToolBar" name="toolbar">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Toolbar</string>
|
||||
</property>
|
||||
<property name="iconSize">
|
||||
<size>
|
||||
<width>30</width>
|
||||
<height>28</height>
|
||||
<width>35</width>
|
||||
<height>30</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="floatable">
|
||||
@ -248,6 +251,9 @@
|
||||
</property>
|
||||
</action>
|
||||
<action name="action_Toolbar_Start_Pause">
|
||||
<property name="enabled">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="icon">
|
||||
<iconset resource="../../dist/toolbar_icons/toolbar_icons.qrc">
|
||||
<normaloff>:/toolbar_icons/rc/start.png</normaloff>:/toolbar_icons/rc/start.png</iconset>
|
||||
@ -276,7 +282,7 @@
|
||||
</action>
|
||||
<action name="action_Toolbar_Configure">
|
||||
<property name="enabled">
|
||||
<bool>false</bool>
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="icon">
|
||||
<iconset resource="../../dist/toolbar_icons/toolbar_icons.qrc">
|
||||
|
Loading…
Reference in New Issue
Block a user