summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorKonstantin Podsvirov <konstantin@podsvirov.pro>2017-08-28 14:25:27 +0300
committerKonstantin Podsvirov <konstantin@podsvirov.pro>2017-10-30 05:42:19 +0000
commitee24c7aefce6acbcac7a51f7c8c53c84ecdc7eca (patch)
tree529d1636bcf7f122952327c8ca2015ca3665d78f /src
parent741d16a9bd088497a0ae1eb172e3d865e09fd57b (diff)
Add Component::addAutoDependOn method
Changes: - Add addAutoDependOn method to Component class; - Add method documentation; - Improve tst_Solver test. Change-Id: I5ed62368d62567f1056e20d89ba03c2639e0eaee Reviewed-by: Katja Marttila <katja.marttila@qt.io>
Diffstat (limited to 'src')
-rw-r--r--src/libs/installer/component.cpp16
-rw-r--r--src/libs/installer/component.h1
2 files changed, 17 insertions, 0 deletions
diff --git a/src/libs/installer/component.cpp b/src/libs/installer/component.cpp
index da0230ade..5f2fe9fbc 100644
--- a/src/libs/installer/component.cpp
+++ b/src/libs/installer/component.cpp
@@ -1170,6 +1170,22 @@ QStringList Component::dependencies() const
return d->m_vars.value(scDependencies).split(QInstaller::commaRegExp(), QString::SkipEmptyParts);
}
+/*!
+ Adds the component specified by \a newDependOn to the automatic depend-on list.
+
+ \sa {component::addAutoDependOn}{component.addAutoDependOn}
+ \sa dependencies
+*/
+
+void Component::addAutoDependOn(const QString &newDependOn)
+{
+ QString oldDependOn = d->m_vars.value(scAutoDependOn);
+ if (oldDependOn.isEmpty())
+ setValue(scAutoDependOn, newDependOn);
+ else
+ setValue(scAutoDependOn, oldDependOn + QLatin1String(", ") + newDependOn);
+}
+
QStringList Component::autoDependencies() const
{
return d->m_vars.value(scAutoDependOn).split(QInstaller::commaRegExp(), QString::SkipEmptyParts);
diff --git a/src/libs/installer/component.h b/src/libs/installer/component.h
index 01622548f..b11fd4cef 100644
--- a/src/libs/installer/component.h
+++ b/src/libs/installer/component.h
@@ -154,6 +154,7 @@ public:
Q_INVOKABLE void addDependency(const QString &newDependency);
QStringList dependencies() const;
+ Q_INVOKABLE void addAutoDependOn(const QString &newDependOn);
QStringList autoDependencies() const;
void languageChanged();