mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-04-01 05:26:45 +08:00
refs #601 Refactor signal/slot connections from CValuePage constructor into virtual method of CValueCache
so that derived classes can override the behaviour.
This commit is contained in:
@@ -365,6 +365,12 @@ namespace BlackMisc
|
||||
}
|
||||
}
|
||||
|
||||
void CValueCache::connectPage(CValuePage *page)
|
||||
{
|
||||
connect(page, &CValuePage::valuesWantToCache, this, &CValueCache::changeValues);
|
||||
connect(this, &CValueCache::valuesChanged, page, &CValuePage::setValuesFromCache);
|
||||
}
|
||||
|
||||
|
||||
////////////////////////////////
|
||||
// Private :: CValuePage
|
||||
@@ -374,8 +380,7 @@ namespace BlackMisc
|
||||
QObject(parent),
|
||||
m_cache(cache)
|
||||
{
|
||||
connect(this, &CValuePage::valuesWantToCache, cache, &CValueCache::changeValues);
|
||||
connect(cache, &CValueCache::valuesChanged, this, &CValuePage::setValuesFromCache);
|
||||
m_cache->connectPage(this);
|
||||
}
|
||||
|
||||
CValuePage &CValuePage::getPageFor(QObject *parent, CValueCache *cache)
|
||||
|
||||
@@ -240,6 +240,8 @@ namespace BlackMisc
|
||||
Element &getElement(const QString &key, QMap<QString, ElementPtr>::const_iterator pos);
|
||||
std::tuple<CVariant, qint64, bool> getValue(const QString &key);
|
||||
|
||||
virtual void connectPage(Private::CValuePage *page);
|
||||
|
||||
signals:
|
||||
//! \private
|
||||
void valuesChanged(const BlackMisc::CValueCachePacket &values, QObject *changedBy);
|
||||
|
||||
Reference in New Issue
Block a user