From 995736ef83a8b5de6bf8b93898c5359edaaa8c3b Mon Sep 17 00:00:00 2001 From: Uwe Rathmann Date: Fri, 2 Feb 2024 14:55:41 +0100 Subject: [PATCH] global graphic provider map moved from QskSetup.cpp to QskGraphicProvider.cpp --- src/controls/QskSetup.cpp | 20 -------------------- src/controls/QskSetup.h | 4 ---- src/graphic/QskGraphicProvider.cpp | 18 ++++++++++++++---- 3 files changed, 14 insertions(+), 28 deletions(-) diff --git a/src/controls/QskSetup.cpp b/src/controls/QskSetup.cpp index f779d0f2..a1d3213b 100644 --- a/src/controls/QskSetup.cpp +++ b/src/controls/QskSetup.cpp @@ -4,9 +4,6 @@ *****************************************************************************/ #include "QskSetup.h" -#include "QskGraphicProviderMap.h" -#include "QskSkinManager.h" -#include "QskSkin.h" QskSetup* QskSetup::s_instance = nullptr; @@ -68,7 +65,6 @@ class QskSetup::PrivateData { } - QskGraphicProviderMap graphicProviders; QskItem::UpdateFlags itemUpdateFlags; }; @@ -136,20 +132,4 @@ bool QskSetup::testItemUpdateFlag( QskItem::UpdateFlag flag ) return m_data->itemUpdateFlags.testFlag( flag ); } -void QskSetup::addGraphicProvider( const QString& providerId, QskGraphicProvider* provider ) -{ - m_data->graphicProviders.insert( providerId, provider ); -} - -QskGraphicProvider* QskSetup::graphicProvider( const QString& providerId ) const -{ - if ( auto skin = qskSkinManager->skin() ) - { - if ( auto provider = skin->graphicProvider( providerId ) ) - return provider; - } - - return m_data->graphicProviders.provider( providerId ); -} - #include "moc_QskSetup.cpp" diff --git a/src/controls/QskSetup.h b/src/controls/QskSetup.h index 371b5f9b..dd700f4f 100644 --- a/src/controls/QskSetup.h +++ b/src/controls/QskSetup.h @@ -13,7 +13,6 @@ #include class QQuickItem; -class QskGraphicProvider; #if defined( qskSetup ) #undef qskSetup @@ -37,9 +36,6 @@ class QSK_EXPORT QskSetup : public QObject void resetItemUpdateFlag( QskItem::UpdateFlag ); bool testItemUpdateFlag( QskItem::UpdateFlag ); - void addGraphicProvider( const QString& providerId, QskGraphicProvider* ); - QskGraphicProvider* graphicProvider( const QString& providerId ) const; - static void setup(); static void cleanup(); diff --git a/src/graphic/QskGraphicProvider.cpp b/src/graphic/QskGraphicProvider.cpp index da3767e2..36aa1283 100644 --- a/src/graphic/QskGraphicProvider.cpp +++ b/src/graphic/QskGraphicProvider.cpp @@ -4,14 +4,18 @@ *****************************************************************************/ #include "QskGraphicProvider.h" +#include "QskGraphicProviderMap.h" #include "QskGraphic.h" -#include "QskSetup.h" +#include "QskSkinManager.h" +#include "QskSkin.h" #include #include #include #include +static QskGraphicProviderMap qskGraphicProviders; + class QskGraphicProvider::PrivateData { public: @@ -92,12 +96,18 @@ const QskGraphic* QskGraphicProvider::requestGraphic( const QString& id ) const void Qsk::addGraphicProvider( const QString& providerId, QskGraphicProvider* provider ) { - qskSetup->addGraphicProvider( providerId, provider ); + qskGraphicProviders.insert( providerId, provider ); } QskGraphicProvider* Qsk::graphicProvider( const QString& providerId ) { - return qskSetup->graphicProvider( providerId ); + if ( auto skin = qskSkinManager->skin() ) + { + if ( auto provider = skin->graphicProvider( providerId ) ) + return provider; + } + + return qskGraphicProviders.provider( providerId ); } QskGraphic Qsk::loadGraphic( const char* source ) @@ -122,7 +132,7 @@ QskGraphic Qsk::loadGraphic( const QUrl& url ) const QskGraphic* graphic = nullptr; - if ( const auto provider = qskSetup->graphicProvider( providerId ) ) + if ( const auto provider = Qsk::graphicProvider( providerId ) ) graphic = provider->requestGraphic( imageId ); return graphic ? *graphic : nullGraphic;