summaryrefslogtreecommitdiff
path: root/Source/Core/DolphinQt2/MenuBar.cpp
diff options
context:
space:
mode:
authorspycrab <spycrab@users.noreply.github.com>2017-05-04 23:01:12 +0200
committerspycrab <spycrab@users.noreply.github.com>2017-05-04 23:01:12 +0200
commit2f523afc41a57da38c365be5e1c99d5156579ffd (patch)
tree77517506355c7cc22bf6c2bd61a18c1baab28cce /Source/Core/DolphinQt2/MenuBar.cpp
parent54dcd3a89b1aeae18f23d35193662f3d8770f37f (diff)
Qt: Add missing gamelist contextmenu options
Diffstat (limited to 'Source/Core/DolphinQt2/MenuBar.cpp')
-rw-r--r--Source/Core/DolphinQt2/MenuBar.cpp35
1 files changed, 34 insertions, 1 deletions
diff --git a/Source/Core/DolphinQt2/MenuBar.cpp b/Source/Core/DolphinQt2/MenuBar.cpp
index 790afdf38d..417156552c 100644
--- a/Source/Core/DolphinQt2/MenuBar.cpp
+++ b/Source/Core/DolphinQt2/MenuBar.cpp
@@ -4,10 +4,13 @@
#include <QAction>
#include <QDesktopServices>
+#include <QFileDialog>
+#include <QMessageBox>
#include <QUrl>
#include "Core/State.h"
#include "DolphinQt2/AboutDialog.h"
+#include "DolphinQt2/GameList/GameFile.h"
#include "DolphinQt2/MenuBar.h"
#include "DolphinQt2/Settings.h"
@@ -17,7 +20,7 @@ MenuBar::MenuBar(QWidget* parent) : QMenuBar(parent)
AddEmulationMenu();
addMenu(tr("Movie"));
addMenu(tr("Options"));
- addMenu(tr("Tools"));
+ AddToolsMenu();
AddViewMenu();
AddHelpMenu();
@@ -71,6 +74,12 @@ void MenuBar::AddFileMenu()
m_exit_action = file_menu->addAction(tr("Exit"), this, SIGNAL(Exit()));
}
+void MenuBar::AddToolsMenu()
+{
+ QMenu* tools_menu = addMenu(tr("Tools"));
+ m_wad_install_action = tools_menu->addAction(tr("Install WAD..."), this, SLOT(InstallWAD()));
+}
+
void MenuBar::AddEmulationMenu()
{
QMenu* emu_menu = addMenu(tr("Emulation"));
@@ -206,3 +215,27 @@ void MenuBar::AddTableColumnsMenu(QMenu* view_menu)
action->setCheckable(true);
}
}
+
+void MenuBar::InstallWAD()
+{
+ QString wad_file = QFileDialog::getOpenFileName(this, tr("Select a title to install to NAND"),
+ QString(), tr("WAD files (*.wad)"));
+
+ if (wad_file.isEmpty())
+ return;
+
+ QMessageBox result_dialog(this);
+
+ if (GameFile(wad_file).Install())
+ {
+ result_dialog.setIcon(QMessageBox::Information);
+ result_dialog.setText(tr("Successfully installed title to the NAND"));
+ }
+ else
+ {
+ result_dialog.setIcon(QMessageBox::Critical);
+ result_dialog.setText(tr("Failed to install title to the NAND!"));
+ }
+
+ result_dialog.exec();
+}