diff options
Diffstat (limited to 'src/executableslist.h')
| -rw-r--r-- | src/executableslist.h | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/src/executableslist.h b/src/executableslist.h index 61582e71..61bf6734 100644 --- a/src/executableslist.h +++ b/src/executableslist.h @@ -102,9 +102,13 @@ public: /**
* @brief initializes the list from the settings and the given plugin
- */
+ **/
void load(const MOBase::IPluginGame* game, QSettings& settings);
+ /**
+ * @brief re-adds all the executables from the plugin and renames existing
+ * executables that are in the way
+ **/
void resetFromPlugin(MOBase::IPluginGame const *game);
/**
@@ -167,18 +171,28 @@ public: **/
void remove(const QString &title);
+ /**
+ * returns a title that starts with the given prefix and does not clash with
+ * an existing executable, may fail
+ */
std::optional<QString> makeNonConflictingTitle(const QString& prefix);
private:
enum SetFlags
{
+ // executables having the same name as existing ones are ignored
IgnoreExisting = 1,
+
+ // executables having the same name are merged
MergeExisting,
+
+ // an existing executable with the same name is renamed
MoveExisting
};
std::vector<Executable> m_Executables;
+
/**
* @brief add the executables preconfigured for this game
**/
|
