diff options
Diffstat (limited to 'src/settings.h')
| -rw-r--r-- | src/settings.h | 45 |
1 files changed, 39 insertions, 6 deletions
diff --git a/src/settings.h b/src/settings.h index 9f6adaa7..d316c82d 100644 --- a/src/settings.h +++ b/src/settings.h @@ -120,9 +120,15 @@ public: QString getSteamAppID() const; /** + * retrieves the base directory under which the other directories usually + * reside + */ + QString getBaseDirectory() const; + + /** * retrieve the directory where downloads are stored (with native separators) **/ - QString getDownloadDirectory() const; + QString getDownloadDirectory(bool resolve = true) const; /** * retrieve a sorted list of preferred servers @@ -132,7 +138,7 @@ public: /** * retrieve the directory where mods are stored (with native separators) **/ - QString getModDirectory() const; + QString getModDirectory(bool resolve = true) const; /** * returns the version of nmm to impersonate when connecting to nexus @@ -142,7 +148,18 @@ public: /** * retrieve the directory where the web cache is stored (with native separators) **/ - QString getCacheDirectory() const; + QString getCacheDirectory(bool resolve = true) const; + + /** + * retrieve the directory where profiles stored (with native separators) + **/ + QString getProfileDirectory(bool resolve = true) const; + + /** + * retrieve the directory were new files are stored that can't be assigned + * to a mod (with native separators) + */ + QString getOverwriteDirectory(bool resolve = true) const; /** * @return true if the user has set up automatic login to nexus @@ -304,6 +321,8 @@ public: */ std::vector<MOBase::IPlugin*> plugins() const { return m_Plugins; } + bool usePrereleases() const; + /** * @brief register MO as the handler for nxm links * @param force set to true to enforce the registration dialog to show up, @@ -324,7 +343,7 @@ private: void addStyles(QComboBox *styleBox); void readPluginBlacklist(); void writePluginBlacklist(); - QString getConfigurablePath(const QString &key, const QString &def) const; + QString getConfigurablePath(const QString &key, const QString &def, bool resolve) const; class SettingsTab { @@ -353,11 +372,25 @@ private: QComboBox *m_languageBox; QComboBox *m_styleBox; QComboBox *m_logLevelBox; + QCheckBox *m_compactBox; + QCheckBox *m_showMetaBox; + QCheckBox *m_usePrereleaseBox; + }; + + class PathsTab : public SettingsTab + { + public: + PathsTab(Settings *parent, SettingsDialog &dialog); + + void update(); + + private: + QLineEdit *m_baseDirEdit; QLineEdit *m_downloadDirEdit; QLineEdit *m_modDirEdit; QLineEdit *m_cacheDirEdit; - QCheckBox *m_compactBox; - QCheckBox *m_showMetaBox; + QLineEdit *m_profilesDirEdit; + QLineEdit *m_overwriteDirEdit; }; /** Display/store the configuration in the 'nexus' tab of the settings dialogue */ |
