diff options
author | Tim Jenssen <tim.jenssen@qt.io> | 2023-03-29 13:40:41 +0200 |
---|---|---|
committer | Tim Jenssen <tim.jenssen@qt.io> | 2023-03-29 13:42:04 +0200 |
commit | 26365f34d44a55db5847e862ae10122c0a7ad4a4 (patch) | |
tree | 8f735e0e9d3df738ee030d2fb2e24e8836ee71ae /src/plugins/mcusupport/mcusupportplugin.cpp | |
parent | bcd74a2fad243fc7683fd98633b91da4e394c0e8 (diff) | |
parent | 81a5e2143cb7728316e02d24925f853e2db2099a (diff) | |
download | qt-creator-26365f34d44a55db5847e862ae10122c0a7ad4a4.tar.gz |
Merge remote-tracking branch 'origin/10.0' into qds/dev
Change-Id: Idd5eac05f3506387e5f1884e22cc2c902032bbe1
Diffstat (limited to 'src/plugins/mcusupport/mcusupportplugin.cpp')
-rw-r--r-- | src/plugins/mcusupport/mcusupportplugin.cpp | 33 |
1 files changed, 32 insertions, 1 deletions
diff --git a/src/plugins/mcusupport/mcusupportplugin.cpp b/src/plugins/mcusupport/mcusupportplugin.cpp index f762231851..6b4e851c47 100644 --- a/src/plugins/mcusupport/mcusupportplugin.cpp +++ b/src/plugins/mcusupport/mcusupportplugin.cpp @@ -135,6 +135,7 @@ void McuSupportPlugin::extensionsInitialized() McuKitManager::createAutomaticKits(dd->m_settingsHandler); McuKitManager::fixExistingKits(dd->m_settingsHandler); askUserAboutMcuSupportKitsSetup(); + askUserAboutRemovingUninstalledTargetsKits(); }); } @@ -188,4 +189,34 @@ void McuSupportPlugin::askUserAboutMcuSupportKitsUpgrade(const SettingsHandler:: ICore::infoBar()->addInfo(info); } -} // McuSupport::Internal +void McuSupportPlugin::askUserAboutRemovingUninstalledTargetsKits() +{ + const char removeUninstalledKits[] = "RemoveUninstalledKits"; + QList<Kit *> uninstalledTargetsKits; + + if (!ICore::infoBar()->canInfoBeAdded(removeUninstalledKits) + || (uninstalledTargetsKits = McuKitManager::findUninstalledTargetsKits()).isEmpty()) + return; + + Utils::InfoBarEntry + info(removeUninstalledKits, + Tr::tr("Detected %n uninstalled MCU target(s). Remove corresponding kits?", + nullptr, + uninstalledTargetsKits.size()), + Utils::InfoBarEntry::GlobalSuppression::Enabled); + + info.addCustomButton(Tr::tr("Keep"), [removeUninstalledKits] { + ICore::infoBar()->removeInfo(removeUninstalledKits); + }); + + info.addCustomButton(Tr::tr("Remove"), [removeUninstalledKits, uninstalledTargetsKits] { + ICore::infoBar()->removeInfo(removeUninstalledKits); + QTimer::singleShot(0, [uninstalledTargetsKits]() { + McuKitManager::removeUninstalledTargetsKits(uninstalledTargetsKits); + }); + }); + + ICore::infoBar()->addInfo(info); +} + +} // namespace McuSupport::Internal |