Просмотр исходного кода

Merge pull request #1466 from LittleWhite-tb/gamelist-update-recent

Register ROM started through the gamelist in the list of ROM recently started
Yuri Kunde Schlesner 10 лет назад
Родитель
Сommit
de7ecee516
2 измененных файлов с 4 добавлено и 5 удалено
  1. 3 4
      src/citra_qt/main.cpp
  2. 1 1
      src/citra_qt/main.h

+ 3 - 4
src/citra_qt/main.cpp

@@ -310,6 +310,7 @@ bool GMainWindow::LoadROM(const std::string& filename) {
 
 void GMainWindow::BootGame(const std::string& filename) {
     LOG_INFO(Frontend, "Citra starting...");
+    StoreRecentFile(filename); // Put the filename on top of the list
 
     if (!InitializeSystem())
         return;
@@ -374,11 +375,11 @@ void GMainWindow::ShutdownGame() {
     emulation_running = false;
 }
 
-void GMainWindow::StoreRecentFile(const QString& filename)
+void GMainWindow::StoreRecentFile(const std::string& filename)
 {
     QSettings settings;
     QStringList recent_files = settings.value("recentFiles").toStringList();
-    recent_files.prepend(filename);
+    recent_files.prepend(QString::fromStdString(filename));
     recent_files.removeDuplicates();
     while (recent_files.size() > max_recent_files_item) {
         recent_files.removeLast();
@@ -426,7 +427,6 @@ void GMainWindow::OnMenuLoadFile() {
     QString filename = QFileDialog::getOpenFileName(this, tr("Load File"), rom_path, tr("3DS executable (*.3ds *.3dsx *.elf *.axf *.cci *.cxi)"));
     if (!filename.isEmpty()) {
         settings.setValue("romsPath", QFileInfo(filename).path());
-        StoreRecentFile(filename);
 
         BootGame(filename.toLocal8Bit().data());
     }
@@ -462,7 +462,6 @@ void GMainWindow::OnMenuRecentFile() {
     QFileInfo file_info(filename);
     if (file_info.exists()) {
         BootGame(filename.toLocal8Bit().data());
-        StoreRecentFile(filename); // Put the filename on top of the list
     } else {
         // Display an error message and remove the file from the list.
         QMessageBox::information(this, tr("File not found"), tr("File \"%1\" not found").arg(filename));

+ 1 - 1
src/citra_qt/main.h

@@ -75,7 +75,7 @@ private:
      *
      * @param filename the filename to store
      */
-    void StoreRecentFile(const QString& filename);
+    void StoreRecentFile(const std::string& filename);
 
     /**
      * Updates the recent files menu.