diff --git a/src/api/pluginmodel.h b/src/api/pluginmodel.h index 8cf5dbd51f994888cc8f74c1e0608933c19c80fc..f268a36d99fc96b3fc0c6c7cc03194bf2834a9ca 100644 --- a/src/api/pluginmodel.h +++ b/src/api/pluginmodel.h @@ -157,11 +157,20 @@ public: Q_INVOKABLE MapStringString getPluginPreferencesValues(const QString& path); /** - * Reste preferences values of installed plugin to default values + * Reset preferences values of installed plugin to default values * @return true if preference was succesfully reset */ Q_INVOKABLE bool resetPluginPreferencesValues(const QString& path); + /** + * Add a possible value to a preference that can be edited by the user + * the only possibility at the moment is USERLIST option + * @return if addition was successfull + */ + Q_INVOKABLE bool addValueToPreference(const QString& pluginId, + const QString& preferenceKey, + const QString& value); + }; } // namespace api diff --git a/src/pluginmodel.cpp b/src/pluginmodel.cpp index 11bd518aff82c74cbb9e4aa1aa9e9fc551e0c3ed..7bfed8418fce67f22ab1f78a8a48dde40a229305 100644 --- a/src/pluginmodel.cpp +++ b/src/pluginmodel.cpp @@ -191,6 +191,14 @@ PluginModel::resetPluginPreferencesValues(const QString& path) return PluginManager::instance().resetPluginPreferencesValues(path); } +bool +PluginModel::addValueToPreference(const QString& pluginId, + const QString& preferenceKey, + const QString& value) +{ + return PluginManager::instance().addValueToPreference(pluginId, preferenceKey, value); +} + } // namespace lrc #include "api/moc_pluginmodel.cpp" diff --git a/src/qtwrapper/pluginmanager.cpp b/src/qtwrapper/pluginmanager.cpp index 51ff960cb97c29643a72b73993f1ccaf49ad04f3..51b62084f2620ca63b827cb47a0df2b5c1f95b71 100644 --- a/src/qtwrapper/pluginmanager.cpp +++ b/src/qtwrapper/pluginmanager.cpp @@ -124,3 +124,13 @@ PluginManagerInterface::resetPluginPreferencesValues(const QString& path) { return DRing::resetPluginPreferencesValues(path.toStdString()); } + +bool +PluginManagerInterface::addValueToPreference(const QString& pluginId, + const QString& preferenceKey, + const QString& value) +{ + return DRing::addValueToPreference(pluginId.toStdString(), + preferenceKey.toStdString(), + value.toStdString()); +} diff --git a/src/qtwrapper/pluginmanager_wrap.h b/src/qtwrapper/pluginmanager_wrap.h index e0a755127983f888f45f7c39e97486e6e6ab14cd..f1ee3b8283ee108ced0a4c29fe307a493cb7b615 100644 --- a/src/qtwrapper/pluginmanager_wrap.h +++ b/src/qtwrapper/pluginmanager_wrap.h @@ -79,6 +79,10 @@ public Q_SLOTS: // METHODS MapStringString getPluginPreferencesValues(const QString& path); bool resetPluginPreferencesValues(const QString& path); + + bool addValueToPreference(const QString& pluginId, + const QString& preferenceKey, + const QString& value); }; namespace org {