aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/coreplugin/icore.cpp
diff options
context:
space:
mode:
authorEike Ziller <eike.ziller@qt.io>2020-01-21 14:17:05 +0100
committerEike Ziller <eike.ziller@qt.io>2020-03-23 07:39:06 +0000
commita040bebe5d61837178ae0aebddd5f8a571ff2307 (patch)
treed91bba3483db3e17497afa6c8910b51972afdb66 /src/plugins/coreplugin/icore.cpp
parent6a07e2c341ba22474f47611852898736bd314f2b (diff)
Add "Install Plugin" button
Shows a wizard. Select a library file or zip file, and if you want to install in user location or Qt Creator install. For zip files it requires "unzip", "7z" or "cmake" in the PATH. Change-Id: I191079046cbd2cb6ab181bc044a00488af41b349 Reviewed-by: David Schulz <david.schulz@qt.io>
Diffstat (limited to 'src/plugins/coreplugin/icore.cpp')
-rw-r--r--src/plugins/coreplugin/icore.cpp22
1 files changed, 20 insertions, 2 deletions
diff --git a/src/plugins/coreplugin/icore.cpp b/src/plugins/coreplugin/icore.cpp
index 2ab0936300..b5986bd67c 100644
--- a/src/plugins/coreplugin/icore.cpp
+++ b/src/plugins/coreplugin/icore.cpp
@@ -356,8 +356,26 @@ QString ICore::cacheResourcePath()
QString ICore::installerResourcePath()
{
- return QFileInfo(settings(QSettings::SystemScope)->fileName()).path() + '/'
- + Constants::IDE_ID;
+ return QFileInfo(settings(QSettings::SystemScope)->fileName()).path() + '/' + Constants::IDE_ID;
+}
+
+QString ICore::pluginPath()
+{
+ return QDir::cleanPath(QCoreApplication::applicationDirPath() + '/' + RELATIVE_PLUGIN_PATH);
+}
+
+QString ICore::userPluginPath()
+{
+ QString pluginPath = QStandardPaths::writableLocation(QStandardPaths::GenericDataLocation);
+ if (Utils::HostOsInfo::isAnyUnixHost() && !Utils::HostOsInfo::isMacHost())
+ pluginPath += "/data";
+ pluginPath += '/' + QLatin1String(Core::Constants::IDE_SETTINGSVARIANT_STR) + '/';
+ pluginPath += QLatin1String(Utils::HostOsInfo::isMacHost() ? Core::Constants::IDE_DISPLAY_NAME
+ : Core::Constants::IDE_ID);
+ pluginPath += "/plugins/";
+ pluginPath += QString::number(IDE_VERSION_MAJOR) + '.' + QString::number(IDE_VERSION_MINOR)
+ + '.' + QString::number(IDE_VERSION_RELEASE);
+ return pluginPath;
}
/*!