forked from qt-creator/qt-creator
ProjectExplorer: Don't internally chain KitManager signal emission
Rather, emit directly in sequence. Saves a few cycles in the signal/slot machinery simplifies reasoning on the user side which signals to expect. Change-Id: Ib75f47a73e9731b506b9df3c713684a9cf59aa67 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This commit is contained in:
@@ -141,10 +141,6 @@ KitManager *KitManager::instance()
|
|||||||
KitManager::KitManager()
|
KitManager::KitManager()
|
||||||
{
|
{
|
||||||
d = new KitManagerPrivate;
|
d = new KitManagerPrivate;
|
||||||
|
|
||||||
connect(this, &KitManager::kitAdded, this, &KitManager::kitsChanged);
|
|
||||||
connect(this, &KitManager::kitRemoved, this, &KitManager::kitsChanged);
|
|
||||||
connect(this, &KitManager::kitUpdated, this, &KitManager::kitsChanged);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void KitManager::destroy()
|
void KitManager::destroy()
|
||||||
@@ -619,10 +615,12 @@ void KitManager::notifyAboutUpdate(Kit *k)
|
|||||||
if (!k || !isLoaded())
|
if (!k || !isLoaded())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (Utils::contains(d->m_kitList, k))
|
if (Utils::contains(d->m_kitList, k)) {
|
||||||
emit instance()->kitUpdated(k);
|
emit instance()->kitUpdated(k);
|
||||||
else
|
emit instance()->kitsChanged();
|
||||||
|
} else {
|
||||||
emit instance()->unmanagedKitUpdated(k);
|
emit instance()->unmanagedKitUpdated(k);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Kit *KitManager::registerKit(const std::function<void (Kit *)> &init, Utils::Id id)
|
Kit *KitManager::registerKit(const std::function<void (Kit *)> &init, Utils::Id id)
|
||||||
@@ -645,6 +643,7 @@ Kit *KitManager::registerKit(const std::function<void (Kit *)> &init, Utils::Id
|
|||||||
setDefaultKit(kptr);
|
setDefaultKit(kptr);
|
||||||
|
|
||||||
emit instance()->kitAdded(kptr);
|
emit instance()->kitAdded(kptr);
|
||||||
|
emit instance()->kitsChanged();
|
||||||
return kptr;
|
return kptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -660,6 +659,7 @@ void KitManager::deregisterKit(Kit *k)
|
|||||||
setDefaultKit(newDefault);
|
setDefaultKit(newDefault);
|
||||||
}
|
}
|
||||||
emit instance()->kitRemoved(k);
|
emit instance()->kitRemoved(k);
|
||||||
|
emit instance()->kitsChanged();
|
||||||
}
|
}
|
||||||
|
|
||||||
void KitManager::setDefaultKit(Kit *k)
|
void KitManager::setDefaultKit(Kit *k)
|
||||||
|
|||||||
Reference in New Issue
Block a user