diff --git a/qtBuildSystem/Mu/emuwrapper.cpp b/qtBuildSystem/Mu/emuwrapper.cpp index c84fd1b..6580347 100644 --- a/qtBuildSystem/Mu/emuwrapper.cpp +++ b/qtBuildSystem/Mu/emuwrapper.cpp @@ -352,7 +352,7 @@ uint32_t EmuWrapper::bootFromFileOrDirectory(const QString& mainPath){ emuSaveStatePath = mainPath + "." + emuOsName + ".states"; //make the place to store the saves - QDir(mainPath + ".states").mkdir("."); + QDir(mainPath + "." + emuOsName + ".states").mkdir("."); //need this goto because the emulator must be released before returning errorOccurred: diff --git a/qtBuildSystem/Mu/statemanager.cpp b/qtBuildSystem/Mu/statemanager.cpp index e445a37..b023b5c 100644 --- a/qtBuildSystem/Mu/statemanager.cpp +++ b/qtBuildSystem/Mu/statemanager.cpp @@ -8,6 +8,8 @@ #include #include #include +#include +#include #include "mainwindow.h" @@ -24,10 +26,14 @@ StateManager::StateManager(QWidget* parent) : ui->statePreview->installEventFilter(this); ui->statePreview->setObjectName("statePreview"); + noBadPaths = new QRegExpValidator(QRegExp("[a-z0-9_()-\\s]*")); + ui->newStateName->setValidator(noBadPaths); + updateStateList(); } StateManager::~StateManager(){ + delete noBadPaths; delete ui; } diff --git a/qtBuildSystem/Mu/statemanager.h b/qtBuildSystem/Mu/statemanager.h index a28f76e..59e2edd 100644 --- a/qtBuildSystem/Mu/statemanager.h +++ b/qtBuildSystem/Mu/statemanager.h @@ -5,6 +5,7 @@ #include #include #include +#include #include "emuwrapper.h" @@ -35,4 +36,5 @@ private slots: private: Ui::StateManager* ui; EmuWrapper* emu; + QRegExpValidator* noBadPaths; }; diff --git a/roadmap.txt b/roadmap.txt index 6aaa4bb..38edfe4 100644 --- a/roadmap.txt +++ b/roadmap.txt @@ -25,6 +25,7 @@ RetroArch GUI: *add multithreading and pipeline speedups Qt GUI: +/TODO: fix state manager not loading until a state is saved //TODO: get circleci builds for QT port on Win/Mac/Linux //TODO: allow reiniting the emu without closing the program *boot button uses install button icon now, changed install button to icon a "+"