mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-04-21 04:45:31 +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
|
// Private :: CValuePage
|
||||||
@@ -374,8 +380,7 @@ namespace BlackMisc
|
|||||||
QObject(parent),
|
QObject(parent),
|
||||||
m_cache(cache)
|
m_cache(cache)
|
||||||
{
|
{
|
||||||
connect(this, &CValuePage::valuesWantToCache, cache, &CValueCache::changeValues);
|
m_cache->connectPage(this);
|
||||||
connect(cache, &CValueCache::valuesChanged, this, &CValuePage::setValuesFromCache);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
CValuePage &CValuePage::getPageFor(QObject *parent, CValueCache *cache)
|
CValuePage &CValuePage::getPageFor(QObject *parent, CValueCache *cache)
|
||||||
|
|||||||
@@ -240,6 +240,8 @@ namespace BlackMisc
|
|||||||
Element &getElement(const QString &key, QMap<QString, ElementPtr>::const_iterator pos);
|
Element &getElement(const QString &key, QMap<QString, ElementPtr>::const_iterator pos);
|
||||||
std::tuple<CVariant, qint64, bool> getValue(const QString &key);
|
std::tuple<CVariant, qint64, bool> getValue(const QString &key);
|
||||||
|
|
||||||
|
virtual void connectPage(Private::CValuePage *page);
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
//! \private
|
//! \private
|
||||||
void valuesChanged(const BlackMisc::CValueCachePacket &values, QObject *changedBy);
|
void valuesChanged(const BlackMisc::CValueCachePacket &values, QObject *changedBy);
|
||||||
|
|||||||
Reference in New Issue
Block a user