some more small fry
This commit is contained in:
parent
b5cc5a2cf7
commit
a7bce8e233
|
@ -62,11 +62,6 @@ int GL_ScaleFactor;
|
||||||
bool GL_BetterPolygons;
|
bool GL_BetterPolygons;
|
||||||
bool GL_HiresCoordinates;
|
bool GL_HiresCoordinates;
|
||||||
|
|
||||||
bool LimitFPS;
|
|
||||||
int MaxFPS;
|
|
||||||
bool AudioSync;
|
|
||||||
bool ShowOSD;
|
|
||||||
|
|
||||||
bool FirmwareOverrideSettings;
|
bool FirmwareOverrideSettings;
|
||||||
std::string FirmwareUsername;
|
std::string FirmwareUsername;
|
||||||
int FirmwareLanguage;
|
int FirmwareLanguage;
|
||||||
|
|
|
@ -176,11 +176,6 @@ extern int GL_ScaleFactor;
|
||||||
extern bool GL_BetterPolygons;
|
extern bool GL_BetterPolygons;
|
||||||
extern bool GL_HiresCoordinates;
|
extern bool GL_HiresCoordinates;
|
||||||
|
|
||||||
extern bool LimitFPS;
|
|
||||||
extern int MaxFPS;
|
|
||||||
extern bool AudioSync;
|
|
||||||
extern bool ShowOSD;
|
|
||||||
|
|
||||||
extern bool FirmwareOverrideSettings;
|
extern bool FirmwareOverrideSettings;
|
||||||
extern std::string FirmwareUsername;
|
extern std::string FirmwareUsername;
|
||||||
extern int FirmwareLanguage;
|
extern int FirmwareLanguage;
|
||||||
|
|
|
@ -68,6 +68,10 @@ EmuInstance::EmuInstance(int inst) : instanceID(inst),
|
||||||
{
|
{
|
||||||
cheatFile = nullptr;
|
cheatFile = nullptr;
|
||||||
|
|
||||||
|
doLimitFPS = globalCfg.GetBool("LimitFPS");
|
||||||
|
maxFPS = globalCfg.GetInt("MaxFPS");
|
||||||
|
doAudioSync = globalCfg.GetBool("AudioSync");
|
||||||
|
|
||||||
nds = nullptr;
|
nds = nullptr;
|
||||||
updateConsole(nullptr, nullptr);
|
updateConsole(nullptr, nullptr);
|
||||||
|
|
||||||
|
|
|
@ -225,6 +225,10 @@ public:
|
||||||
std::unique_ptr<SaveManager> ndsSave;
|
std::unique_ptr<SaveManager> ndsSave;
|
||||||
std::unique_ptr<SaveManager> gbaSave;
|
std::unique_ptr<SaveManager> gbaSave;
|
||||||
std::unique_ptr<SaveManager> firmwareSave;
|
std::unique_ptr<SaveManager> firmwareSave;
|
||||||
|
|
||||||
|
bool doLimitFPS;
|
||||||
|
int maxFPS;
|
||||||
|
bool doAudioSync;
|
||||||
private:
|
private:
|
||||||
|
|
||||||
std::unique_ptr<melonDS::Savestate> backupState;
|
std::unique_ptr<melonDS::Savestate> backupState;
|
||||||
|
|
|
@ -407,15 +407,15 @@ void EmuThread::run()
|
||||||
emuInstance->audioVolume = volumeLevel * (256.0 / 31.0);
|
emuInstance->audioVolume = volumeLevel * (256.0 / 31.0);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Config::AudioSync && !fastforward)
|
if (emuInstance->doAudioSync && !fastforward)
|
||||||
emuInstance->audioSync();
|
emuInstance->audioSync();
|
||||||
|
|
||||||
double frametimeStep = nlines / (60.0 * 263.0);
|
double frametimeStep = nlines / (60.0 * 263.0);
|
||||||
|
|
||||||
{
|
{
|
||||||
bool limitfps = Config::LimitFPS && !fastforward;
|
bool limitfps = emuInstance->doLimitFPS && !fastforward;
|
||||||
|
|
||||||
double practicalFramelimit = limitfps ? frametimeStep : 1.0 / Config::MaxFPS;
|
double practicalFramelimit = limitfps ? frametimeStep : 1.0 / emuInstance->maxFPS;
|
||||||
|
|
||||||
double curtime = SDL_GetPerformanceCounter() * perfCountsSec;
|
double curtime = SDL_GetPerformanceCounter() * perfCountsSec;
|
||||||
|
|
||||||
|
|
|
@ -31,11 +31,15 @@ InterfaceSettingsDialog::InterfaceSettingsDialog(QWidget* parent) : QDialog(pare
|
||||||
ui->setupUi(this);
|
ui->setupUi(this);
|
||||||
setAttribute(Qt::WA_DeleteOnClose);
|
setAttribute(Qt::WA_DeleteOnClose);
|
||||||
|
|
||||||
|
emuInstance = ((MainWindow*)parent)->getEmuInstance();
|
||||||
|
|
||||||
|
auto& cfg = emuInstance->getGlobalConfig();
|
||||||
|
|
||||||
ui->cbMouseHide->setChecked(Config::MouseHide != 0);
|
ui->cbMouseHide->setChecked(Config::MouseHide != 0);
|
||||||
ui->spinMouseHideSeconds->setEnabled(Config::MouseHide != 0);
|
ui->spinMouseHideSeconds->setEnabled(Config::MouseHide != 0);
|
||||||
ui->spinMouseHideSeconds->setValue(Config::MouseHideSeconds);
|
ui->spinMouseHideSeconds->setValue(Config::MouseHideSeconds);
|
||||||
ui->cbPauseLostFocus->setChecked(Config::PauseLostFocus != 0);
|
ui->cbPauseLostFocus->setChecked(Config::PauseLostFocus != 0);
|
||||||
ui->spinMaxFPS->setValue(Config::MaxFPS);
|
ui->spinMaxFPS->setValue(cfg.GetInt("MaxFPS"));
|
||||||
|
|
||||||
const QList<QString> themeKeys = QStyleFactory::keys();
|
const QList<QString> themeKeys = QStyleFactory::keys();
|
||||||
const QString currentTheme = qApp->style()->objectName();
|
const QString currentTheme = qApp->style()->objectName();
|
||||||
|
@ -74,11 +78,14 @@ void InterfaceSettingsDialog::done(int r)
|
||||||
Config::MouseHide = ui->cbMouseHide->isChecked() ? 1:0;
|
Config::MouseHide = ui->cbMouseHide->isChecked() ? 1:0;
|
||||||
Config::MouseHideSeconds = ui->spinMouseHideSeconds->value();
|
Config::MouseHideSeconds = ui->spinMouseHideSeconds->value();
|
||||||
Config::PauseLostFocus = ui->cbPauseLostFocus->isChecked() ? 1:0;
|
Config::PauseLostFocus = ui->cbPauseLostFocus->isChecked() ? 1:0;
|
||||||
Config::MaxFPS = ui->spinMaxFPS->value();
|
emuInstance->maxFPS = ui->spinMaxFPS->value();
|
||||||
|
|
||||||
QString themeName = ui->cbxUITheme->currentData().toString();
|
QString themeName = ui->cbxUITheme->currentData().toString();
|
||||||
Config::UITheme = themeName.toStdString();
|
Config::UITheme = themeName.toStdString();
|
||||||
|
|
||||||
|
auto& cfg = emuInstance->getGlobalConfig();
|
||||||
|
cfg.SetInt("MaxFPS", emuInstance->maxFPS);
|
||||||
|
|
||||||
Config::Save();
|
Config::Save();
|
||||||
|
|
||||||
if (!Config::UITheme.empty())
|
if (!Config::UITheme.empty())
|
||||||
|
|
|
@ -24,6 +24,8 @@
|
||||||
namespace Ui { class InterfaceSettingsDialog; }
|
namespace Ui { class InterfaceSettingsDialog; }
|
||||||
class InterfaceSettingsDialog;
|
class InterfaceSettingsDialog;
|
||||||
|
|
||||||
|
class EmuInstance;
|
||||||
|
|
||||||
class InterfaceSettingsDialog : public QDialog
|
class InterfaceSettingsDialog : public QDialog
|
||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
@ -60,6 +62,8 @@ private slots:
|
||||||
|
|
||||||
private:
|
private:
|
||||||
Ui::InterfaceSettingsDialog* ui;
|
Ui::InterfaceSettingsDialog* ui;
|
||||||
|
|
||||||
|
EmuInstance* emuInstance;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // INTERFACESETTINGSDIALOG_H
|
#endif // INTERFACESETTINGSDIALOG_H
|
||||||
|
|
|
@ -231,6 +231,8 @@ MainWindow::MainWindow(int id, EmuInstance* inst, QWidget* parent) :
|
||||||
oldH = Config::WindowHeight;
|
oldH = Config::WindowHeight;
|
||||||
oldMax = Config::WindowMaximized;
|
oldMax = Config::WindowMaximized;
|
||||||
|
|
||||||
|
showOSD = windowCfg.GetBool("ShowOSD");
|
||||||
|
|
||||||
setWindowTitle("melonDS " MELONDS_VERSION);
|
setWindowTitle("melonDS " MELONDS_VERSION);
|
||||||
setAttribute(Qt::WA_DeleteOnClose);
|
setAttribute(Qt::WA_DeleteOnClose);
|
||||||
setAcceptDrops(true);
|
setAcceptDrops(true);
|
||||||
|
@ -677,10 +679,10 @@ MainWindow::MainWindow(int id, EmuInstance* inst, QWidget* parent) :
|
||||||
}
|
}
|
||||||
|
|
||||||
actScreenFiltering->setChecked(Config::ScreenFilter);
|
actScreenFiltering->setChecked(Config::ScreenFilter);
|
||||||
actShowOSD->setChecked(Config::ShowOSD);
|
actShowOSD->setChecked(showOSD);
|
||||||
|
|
||||||
actLimitFramerate->setChecked(Config::LimitFPS);
|
actLimitFramerate->setChecked(emuInstance->doLimitFPS);
|
||||||
actAudioSync->setChecked(Config::AudioSync);
|
actAudioSync->setChecked(emuInstance->doAudioSync);
|
||||||
|
|
||||||
if (emuInstance->instanceID > 0)
|
if (emuInstance->instanceID > 0)
|
||||||
{
|
{
|
||||||
|
@ -757,7 +759,7 @@ void MainWindow::createScreenPanel()
|
||||||
setCentralWidget(panel);
|
setCentralWidget(panel);
|
||||||
|
|
||||||
actScreenFiltering->setEnabled(hasOGL);
|
actScreenFiltering->setEnabled(hasOGL);
|
||||||
panel->osdSetEnabled(Config::ShowOSD);
|
panel->osdSetEnabled(showOSD);
|
||||||
|
|
||||||
connect(this, SIGNAL(screenLayoutChange()), panel, SLOT(onScreenLayoutChanged()));
|
connect(this, SIGNAL(screenLayoutChange()), panel, SLOT(onScreenLayoutChanged()));
|
||||||
emit screenLayoutChange();
|
emit screenLayoutChange();
|
||||||
|
@ -1989,18 +1991,21 @@ void MainWindow::onChangeScreenFiltering(bool checked)
|
||||||
|
|
||||||
void MainWindow::onChangeShowOSD(bool checked)
|
void MainWindow::onChangeShowOSD(bool checked)
|
||||||
{
|
{
|
||||||
Config::ShowOSD = checked?1:0;
|
showOSD = checked;
|
||||||
panel->osdSetEnabled(Config::ShowOSD);
|
panel->osdSetEnabled(showOSD);
|
||||||
|
windowCfg.SetBool("ShowOSD", showOSD);
|
||||||
}
|
}
|
||||||
|
|
||||||
void MainWindow::onChangeLimitFramerate(bool checked)
|
void MainWindow::onChangeLimitFramerate(bool checked)
|
||||||
{
|
{
|
||||||
Config::LimitFPS = checked?1:0;
|
emuInstance->doLimitFPS = checked;
|
||||||
|
globalCfg.SetBool("LimitFPS", emuInstance->doLimitFPS);
|
||||||
}
|
}
|
||||||
|
|
||||||
void MainWindow::onChangeAudioSync(bool checked)
|
void MainWindow::onChangeAudioSync(bool checked)
|
||||||
{
|
{
|
||||||
Config::AudioSync = checked?1:0;
|
emuInstance->doAudioSync = checked;
|
||||||
|
globalCfg.SetBool("AudioSync", emuInstance->doAudioSync);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -234,6 +234,8 @@ private:
|
||||||
|
|
||||||
void createScreenPanel();
|
void createScreenPanel();
|
||||||
|
|
||||||
|
bool showOSD;
|
||||||
|
|
||||||
bool hasOGL;
|
bool hasOGL;
|
||||||
|
|
||||||
bool pausedManually = false;
|
bool pausedManually = false;
|
||||||
|
|
Loading…
Reference in New Issue