diff options
| author | JosJuice <josjuice@gmail.com> | 2017-12-31 20:33:36 +0100 |
|---|---|---|
| committer | JosJuice <josjuice@gmail.com> | 2018-03-09 13:08:38 +0100 |
| commit | 1f1dae367d8aeb525df5558ce648d6f287983008 (patch) | |
| tree | 7933d673aad8869eef5fb3e74e1260274323e673 /Source/Core/DolphinQt2/MenuBar.cpp | |
| parent | 1add238a284ab4baf5d5550d5f1af525226172c7 (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.cpp | 14 |
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) |
