summaryrefslogtreecommitdiff
path: root/Source/Core/DolphinQt2/MenuBar.cpp
diff options
context:
space:
mode:
authorJosJuice <josjuice@gmail.com>2017-12-31 20:33:36 +0100
committerJosJuice <josjuice@gmail.com>2018-03-09 13:08:38 +0100
commit1f1dae367d8aeb525df5558ce648d6f287983008 (patch)
tree7933d673aad8869eef5fb3e74e1260274323e673 /Source/Core/DolphinQt2/MenuBar.cpp
parent1add238a284ab4baf5d5550d5f1af525226172c7 (diff)
Unify ISOFile (wx) with GameFile (Qt) and put it in UICommon
The original reason I wanted to do this was so that we can replace the Android-specific code with this in the future, but of course, just deduplicating between DolphinWX and DolphinQt2 is nice too. Fixes: - DolphinQt2 showing the wrong size for split WBFS disc images. - DolphinQt2 being case sensitive when checking if a file is a DOL/ELF. - DolphinQt2 not detecting when a Wii banner has become available after the game list cache was created. Removes: - DolphinWX's ability to load PNGs as custom banners. But it was already rather broken (see https://bugs.dolphin-emu.org/issues/10365 and https://bugs.dolphin-emu.org/issues/10366). The reason I removed this was because PNG decoding relied on wx code and we don't have any good non-wx/Qt code for loading PNG files right now (let's not use SOIL), but we should be able to use libpng directly to implement PNG loading in the future. - DolphinQt2's ability to ignore a cached game if the last modified time differs. We currently don't have a non-wx/Qt way to get the time.
Diffstat (limited to 'Source/Core/DolphinQt2/MenuBar.cpp')
-rw-r--r--Source/Core/DolphinQt2/MenuBar.cpp14
1 files changed, 8 insertions, 6 deletions
diff --git a/Source/Core/DolphinQt2/MenuBar.cpp b/Source/Core/DolphinQt2/MenuBar.cpp
index 2563160f25..c9bc84a1bd 100644
--- a/Source/Core/DolphinQt2/MenuBar.cpp
+++ b/Source/Core/DolphinQt2/MenuBar.cpp
@@ -34,10 +34,11 @@
#include "DiscIO/WiiSaveBanner.h"
#include "DolphinQt2/AboutDialog.h"
-#include "DolphinQt2/GameList/GameFile.h"
#include "DolphinQt2/QtUtils/ActionHelper.h"
#include "DolphinQt2/Settings.h"
+#include "UICommon/GameFile.h"
+
MenuBar::MenuBar(QWidget* parent) : QMenuBar(parent)
{
AddFileMenu();
@@ -593,8 +594,9 @@ void MenuBar::InstallWAD()
QMessageBox result_dialog(this);
- if (GameFile(wad_file).Install())
+ if (WiiUtils::InstallWAD(wad_file.toStdString()))
{
+ Settings::Instance().NANDRefresh();
result_dialog.setIcon(QMessageBox::Information);
result_dialog.setText(tr("Successfully installed this title to the NAND."));
}
@@ -698,12 +700,12 @@ void MenuBar::NANDExtractCertificates()
}
}
-void MenuBar::OnSelectionChanged(QSharedPointer<GameFile> game_file)
+void MenuBar::OnSelectionChanged(std::shared_ptr<const UICommon::GameFile> game_file)
{
- bool is_null = game_file.isNull();
+ const bool game_selected = !!game_file;
- m_recording_play->setEnabled(!Core::IsRunning() && !is_null);
- m_recording_start->setEnabled(!Movie::IsPlayingInput() && !is_null);
+ m_recording_play->setEnabled(game_selected && !Core::IsRunning());
+ m_recording_start->setEnabled(game_selected && !Movie::IsPlayingInput());
}
void MenuBar::OnRecordingStatusChanged(bool recording)