mirror of
https://gitlab.com/OpenMW/openmw.git
synced 2025-01-30 03:32:36 +00:00
Moved launcher settings stuff into components, so they can be reused in the wizard
This commit is contained in:
parent
3a37761d76
commit
095ff4e17a
@ -6,9 +6,7 @@ set(LAUNCHER
|
||||
playpage.cpp
|
||||
textslotmsgbox.cpp
|
||||
|
||||
settings/gamesettings.cpp
|
||||
settings/graphicssettings.cpp
|
||||
settings/launchersettings.cpp
|
||||
|
||||
utils/checkablemessagebox.cpp
|
||||
utils/profilescombobox.cpp
|
||||
@ -28,10 +26,7 @@ set(LAUNCHER_HEADER
|
||||
playpage.hpp
|
||||
textslotmsgbox.hpp
|
||||
|
||||
settings/gamesettings.hpp
|
||||
settings/graphicssettings.hpp
|
||||
settings/launchersettings.hpp
|
||||
settings/settingsbase.hpp
|
||||
|
||||
utils/checkablemessagebox.hpp
|
||||
utils/profilescombobox.hpp
|
||||
|
@ -9,18 +9,16 @@
|
||||
#include <components/files/configurationmanager.hpp>
|
||||
|
||||
#include <components/contentselector/model/esmfile.hpp>
|
||||
|
||||
#include <components/contentselector/model/naturalsort.hpp>
|
||||
#include <components/contentselector/view/contentselector.hpp>
|
||||
|
||||
#include <components/config/gamesettings.hpp>
|
||||
#include <components/config/launchersettings.hpp>
|
||||
|
||||
#include "utils/textinputdialog.hpp"
|
||||
#include "utils/profilescombobox.hpp"
|
||||
|
||||
#include "settings/gamesettings.hpp"
|
||||
#include "settings/launchersettings.hpp"
|
||||
|
||||
#include "components/contentselector/view/contentselector.hpp"
|
||||
|
||||
Launcher::DataFilesPage::DataFilesPage(Files::ConfigurationManager &cfg, GameSettings &gameSettings, LauncherSettings &launcherSettings, QWidget *parent)
|
||||
Launcher::DataFilesPage::DataFilesPage(Files::ConfigurationManager &cfg, Config::GameSettings &gameSettings, Config::LauncherSettings &launcherSettings, QWidget *parent)
|
||||
: mCfgMgr(cfg)
|
||||
, mGameSettings(gameSettings)
|
||||
, mLauncherSettings(launcherSettings)
|
||||
|
@ -14,12 +14,12 @@ class QMenu;
|
||||
|
||||
namespace Files { struct ConfigurationManager; }
|
||||
namespace ContentSelectorView { class ContentSelector; }
|
||||
namespace Config { class GameSettings;
|
||||
class LauncherSettings; }
|
||||
|
||||
namespace Launcher
|
||||
{
|
||||
class TextInputDialog;
|
||||
class GameSettings;
|
||||
class LauncherSettings;
|
||||
class ProfilesComboBox;
|
||||
|
||||
class DataFilesPage : public QWidget
|
||||
@ -30,8 +30,8 @@ namespace Launcher
|
||||
Ui::DataFilesPage ui;
|
||||
|
||||
public:
|
||||
explicit DataFilesPage (Files::ConfigurationManager &cfg, GameSettings &gameSettings,
|
||||
LauncherSettings &launcherSettings, QWidget *parent = 0);
|
||||
explicit DataFilesPage (Files::ConfigurationManager &cfg, Config::GameSettings &gameSettings,
|
||||
Config::LauncherSettings &launcherSettings, QWidget *parent = 0);
|
||||
|
||||
QAbstractItemModel* profilesModel() const;
|
||||
|
||||
@ -62,8 +62,8 @@ namespace Launcher
|
||||
|
||||
Files::ConfigurationManager &mCfgMgr;
|
||||
|
||||
GameSettings &mGameSettings;
|
||||
LauncherSettings &mLauncherSettings;
|
||||
Config::GameSettings &mGameSettings;
|
||||
Config::LauncherSettings &mLauncherSettings;
|
||||
|
||||
QString mDataLocal;
|
||||
|
||||
|
@ -5,9 +5,10 @@
|
||||
#ifndef Q_MOC_RUN
|
||||
#include <components/files/configurationmanager.hpp>
|
||||
#endif
|
||||
#include "settings/gamesettings.hpp"
|
||||
#include <components/config/gamesettings.hpp>
|
||||
#include <components/config/launchersettings.hpp>
|
||||
|
||||
#include "settings/graphicssettings.hpp"
|
||||
#include "settings/launchersettings.hpp"
|
||||
|
||||
#include "ui_mainwindow.h"
|
||||
|
||||
@ -60,9 +61,9 @@ namespace Launcher
|
||||
|
||||
Files::ConfigurationManager mCfgMgr;
|
||||
|
||||
GameSettings mGameSettings;
|
||||
Config::GameSettings mGameSettings;
|
||||
GraphicsSettings mGraphicsSettings;
|
||||
LauncherSettings mLauncherSettings;
|
||||
Config::LauncherSettings mLauncherSettings;
|
||||
|
||||
};
|
||||
}
|
||||
|
@ -1,11 +1,11 @@
|
||||
#ifndef GRAPHICSSETTINGS_HPP
|
||||
#define GRAPHICSSETTINGS_HPP
|
||||
|
||||
#include "settingsbase.hpp"
|
||||
#include <components/config/settingsbase.hpp>
|
||||
|
||||
namespace Launcher
|
||||
{
|
||||
class GraphicsSettings : public SettingsBase<QMap<QString, QString> >
|
||||
class GraphicsSettings : public Config::SettingsBase<QMap<QString, QString> >
|
||||
{
|
||||
public:
|
||||
GraphicsSettings();
|
||||
|
@ -75,8 +75,8 @@ add_component_dir (loadinglistener
|
||||
)
|
||||
|
||||
add_component_dir (ogreinit
|
||||
ogreinit ogreplugin
|
||||
)
|
||||
ogreinit ogreplugin
|
||||
)
|
||||
|
||||
set (ESM_UI ${CMAKE_SOURCE_DIR}/files/ui/contentselector.ui
|
||||
)
|
||||
@ -84,11 +84,16 @@ set (ESM_UI ${CMAKE_SOURCE_DIR}/files/ui/contentselector.ui
|
||||
find_package(Qt4 COMPONENTS QtCore QtGui)
|
||||
|
||||
if(QT_QTGUI_LIBRARY AND QT_QTCORE_LIBRARY)
|
||||
add_component_qt_dir (contentselector
|
||||
add_component_qt_dir (contentselector
|
||||
model/modelitem model/esmfile
|
||||
model/naturalsort model/contentmodel
|
||||
view/combobox view/contentselector
|
||||
)
|
||||
)
|
||||
add_component_qt_dir (config
|
||||
gamesettings
|
||||
launchersettings
|
||||
settingsbase
|
||||
)
|
||||
|
||||
include(${QT_USE_FILE})
|
||||
QT4_WRAP_UI(ESM_UI_HDR ${ESM_UI})
|
||||
|
@ -27,16 +27,16 @@ namespace boost
|
||||
#endif /* (BOOST_VERSION <= 104600) */
|
||||
|
||||
|
||||
Launcher::GameSettings::GameSettings(Files::ConfigurationManager &cfg)
|
||||
Config::GameSettings::GameSettings(Files::ConfigurationManager &cfg)
|
||||
: mCfgMgr(cfg)
|
||||
{
|
||||
}
|
||||
|
||||
Launcher::GameSettings::~GameSettings()
|
||||
Config::GameSettings::~GameSettings()
|
||||
{
|
||||
}
|
||||
|
||||
void Launcher::GameSettings::validatePaths()
|
||||
void Config::GameSettings::validatePaths()
|
||||
{
|
||||
if (mSettings.isEmpty() || !mDataDirs.isEmpty())
|
||||
return; // Don't re-validate paths if they are already parsed
|
||||
@ -82,14 +82,14 @@ void Launcher::GameSettings::validatePaths()
|
||||
}
|
||||
}
|
||||
|
||||
QStringList Launcher::GameSettings::values(const QString &key, const QStringList &defaultValues)
|
||||
QStringList Config::GameSettings::values(const QString &key, const QStringList &defaultValues)
|
||||
{
|
||||
if (!mSettings.values(key).isEmpty())
|
||||
return mSettings.values(key);
|
||||
return defaultValues;
|
||||
}
|
||||
|
||||
bool Launcher::GameSettings::readFile(QTextStream &stream)
|
||||
bool Config::GameSettings::readFile(QTextStream &stream)
|
||||
{
|
||||
QMap<QString, QString> cache;
|
||||
QRegExp keyRe("^([^=]+)\\s*=\\s*(.+)$");
|
||||
@ -131,7 +131,7 @@ bool Launcher::GameSettings::readFile(QTextStream &stream)
|
||||
return true;
|
||||
}
|
||||
|
||||
bool Launcher::GameSettings::writeFile(QTextStream &stream)
|
||||
bool Config::GameSettings::writeFile(QTextStream &stream)
|
||||
{
|
||||
// Iterate in reverse order to preserve insertion order
|
||||
QMapIterator<QString, QString> i(mSettings);
|
||||
@ -170,7 +170,7 @@ bool Launcher::GameSettings::writeFile(QTextStream &stream)
|
||||
return true;
|
||||
}
|
||||
|
||||
bool Launcher::GameSettings::hasMaster()
|
||||
bool Config::GameSettings::hasMaster()
|
||||
{
|
||||
bool result = false;
|
||||
QStringList content = mSettings.values(QString("content"));
|
@ -14,7 +14,7 @@ namespace Files
|
||||
struct ConfigurationManager;
|
||||
}
|
||||
|
||||
namespace Launcher
|
||||
namespace Config
|
||||
{
|
||||
class GameSettings
|
||||
{
|
@ -7,15 +7,15 @@
|
||||
|
||||
#include <QDebug>
|
||||
|
||||
Launcher::LauncherSettings::LauncherSettings()
|
||||
Config::LauncherSettings::LauncherSettings()
|
||||
{
|
||||
}
|
||||
|
||||
Launcher::LauncherSettings::~LauncherSettings()
|
||||
Config::LauncherSettings::~LauncherSettings()
|
||||
{
|
||||
}
|
||||
|
||||
QStringList Launcher::LauncherSettings::values(const QString &key, Qt::MatchFlags flags)
|
||||
QStringList Config::LauncherSettings::values(const QString &key, Qt::MatchFlags flags)
|
||||
{
|
||||
QMap<QString, QString> settings = SettingsBase::getSettings();
|
||||
|
||||
@ -36,7 +36,7 @@ QStringList Launcher::LauncherSettings::values(const QString &key, Qt::MatchFlag
|
||||
return result;
|
||||
}
|
||||
|
||||
QStringList Launcher::LauncherSettings::subKeys(const QString &key)
|
||||
QStringList Config::LauncherSettings::subKeys(const QString &key)
|
||||
{
|
||||
QMap<QString, QString> settings = SettingsBase::getSettings();
|
||||
QStringList keys = settings.uniqueKeys();
|
||||
@ -60,7 +60,7 @@ QStringList Launcher::LauncherSettings::subKeys(const QString &key)
|
||||
return result;
|
||||
}
|
||||
|
||||
bool Launcher::LauncherSettings::writeFile(QTextStream &stream)
|
||||
bool Config::LauncherSettings::writeFile(QTextStream &stream)
|
||||
{
|
||||
QString sectionPrefix;
|
||||
QRegExp sectionRe("([^/]+)/(.+)$");
|
@ -3,7 +3,7 @@
|
||||
|
||||
#include "settingsbase.hpp"
|
||||
|
||||
namespace Launcher
|
||||
namespace Config
|
||||
{
|
||||
class LauncherSettings : public SettingsBase<QMap<QString, QString> >
|
||||
{
|
@ -7,7 +7,7 @@
|
||||
#include <QRegExp>
|
||||
#include <QMap>
|
||||
|
||||
namespace Launcher
|
||||
namespace Config
|
||||
{
|
||||
template <class Map>
|
||||
class SettingsBase
|
Loading…
x
Reference in New Issue
Block a user