diff options
| author | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2021-06-20 20:12:55 +0000 |
|---|---|---|
| committer | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2021-06-20 20:12:55 +0000 |
| commit | 3153d38d7f3c63e1c33fe61b21d96bd0f4ba08da (patch) | |
| tree | 08b889aee5ce0c37a954f53367267c77bd269ae9 /src | |
| parent | e439934003cd2746ff0f7df6d6312724e8665daf (diff) | |
| download | qmmp-3153d38d7f3c63e1c33fe61b21d96bd0f4ba08da.tar.gz qmmp-3153d38d7f3c63e1c33fe61b21d96bd0f4ba08da.tar.bz2 qmmp-3153d38d7f3c63e1c33fe61b21d96bd0f4ba08da.zip | |
optimization
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@10076 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src')
| -rw-r--r-- | src/qmmp/abstractengine.cpp | 10 | ||||
| -rw-r--r-- | src/qmmp/decoder.cpp | 10 | ||||
| -rw-r--r-- | src/qmmp/inputsource.cpp | 10 | ||||
| -rw-r--r-- | src/qmmp/qmmpplugincache.cpp | 19 | ||||
| -rw-r--r-- | src/qmmp/qmmpplugincache_p.h | 3 |
5 files changed, 31 insertions, 21 deletions
diff --git a/src/qmmp/abstractengine.cpp b/src/qmmp/abstractengine.cpp index 2198154aa..cb3656b48 100644 --- a/src/qmmp/abstractengine.cpp +++ b/src/qmmp/abstractengine.cpp @@ -215,15 +215,15 @@ QString AbstractEngine::file(const EngineFactory *factory) QStringList AbstractEngine::protocols() { loadPlugins(); - QStringList protocolsList; + QStringList protocolList; for(QmmpPluginCache *item : qAsConst(*m_cache)) { if(m_disabledNames.contains(item->shortName())) continue; - if(item->engineFactory()) - protocolsList << item->engineFactory()->properties().protocols; + + protocolList << item->protocols(); } - protocolsList.removeDuplicates(); - return protocolsList; + protocolList.removeDuplicates(); + return protocolList; } diff --git a/src/qmmp/decoder.cpp b/src/qmmp/decoder.cpp index 99aed4469..a29680cf4 100644 --- a/src/qmmp/decoder.cpp +++ b/src/qmmp/decoder.cpp @@ -157,17 +157,17 @@ QString Decoder::file(const DecoderFactory *factory) QStringList Decoder::protocols() { loadPlugins(); - QStringList protocolsList; + QStringList protocolList; for(QmmpPluginCache *item : qAsConst(*m_cache)) { if(m_disabledNames.contains(item->shortName())) continue; - if(item->decoderFactory()) - protocolsList << item->decoderFactory()->properties().protocols; + + protocolList << item->protocols(); } - protocolsList.removeDuplicates(); - return protocolsList; + protocolList.removeDuplicates(); + return protocolList; } DecoderFactory *Decoder::findByFilePath(const QString &path, bool useContent) diff --git a/src/qmmp/inputsource.cpp b/src/qmmp/inputsource.cpp index cc3c7c353..0edb2e144 100644 --- a/src/qmmp/inputsource.cpp +++ b/src/qmmp/inputsource.cpp @@ -178,17 +178,17 @@ QString InputSource::file(const InputSourceFactory *factory) QStringList InputSource::protocols() { loadPlugins(); - QStringList protocolsList; + QStringList protocolList; for(QmmpPluginCache *item : qAsConst(*m_cache)) { if(m_disabledNames.contains(item->shortName())) continue; - if(item->inputSourceFactory()) - protocolsList << item->inputSourceFactory()->properties().protocols; + + protocolList << item->protocols(); } - protocolsList.removeDuplicates(); - return protocolsList; + protocolList.removeDuplicates(); + return protocolList; } QList<QRegularExpression> InputSource::regExps() diff --git a/src/qmmp/qmmpplugincache.cpp b/src/qmmp/qmmpplugincache.cpp index cd3c9f5e1..764d783db 100644 --- a/src/qmmp/qmmpplugincache.cpp +++ b/src/qmmp/qmmpplugincache.cpp @@ -43,18 +43,18 @@ QmmpPluginCache::QmmpPluginCache(const QString &file, QSettings *settings) key.remove(0,1); #endif if(settings->allKeys().contains(key)) - { QStringList values = settings->value(m_path).toStringList(); - if(values.count() != 5) + if(values.count() != 6) update = true; else { m_shortName = values.at(0); m_priority = values.at(1).toInt(); - m_filters = values.at(2).split(";"); - m_contentTypes = values.at(3).split(";"); - update = (info.lastModified().toString(Qt::ISODate) != values.at(4)); + m_protocols = values.at(2).split(";"); + m_filters = values.at(3).split(";"); + m_contentTypes = values.at(4).split(";"); + update = (info.lastModified().toString(Qt::ISODate) != values.at(5)); } } else @@ -67,6 +67,7 @@ QmmpPluginCache::QmmpPluginCache(const QString &file, QSettings *settings) { m_shortName = factory->properties().shortName; m_priority = factory->properties().priority; + m_protocols = factory->properties().protocols; m_filters = factory->properties().filters; m_contentTypes = factory->properties().contentTypes; } @@ -79,6 +80,7 @@ QmmpPluginCache::QmmpPluginCache(const QString &file, QSettings *settings) { m_shortName = factory->properties().shortName; m_priority = 0; + m_protocols = factory->properties().protocols; m_filters = factory->properties().filters; m_contentTypes = factory->properties().contentTypes; } @@ -91,6 +93,7 @@ QmmpPluginCache::QmmpPluginCache(const QString &file, QSettings *settings) { m_shortName = factory->properties().shortName; m_priority = 0; + m_protocols = factory->properties().protocols; } else { @@ -103,6 +106,7 @@ QmmpPluginCache::QmmpPluginCache(const QString &file, QSettings *settings) QStringList values; values << m_shortName; values << QString::number(m_priority); + values << m_protocols.join(";"); values << m_filters.join(";"); values << m_contentTypes.join(";"); values << info.lastModified().toString(Qt::ISODate); @@ -134,6 +138,11 @@ const QStringList &QmmpPluginCache::contentTypes() const return m_contentTypes; } +const QStringList &QmmpPluginCache::protocols() const +{ + return m_protocols; +} + int QmmpPluginCache::priority() const { return m_priority; diff --git a/src/qmmp/qmmpplugincache_p.h b/src/qmmp/qmmpplugincache_p.h index c800ae6c8..9c653176e 100644 --- a/src/qmmp/qmmpplugincache_p.h +++ b/src/qmmp/qmmpplugincache_p.h @@ -44,6 +44,7 @@ public: const QString file() const; const QStringList &filters() const; const QStringList &contentTypes() const; + const QStringList &protocols() const; int priority() const; bool hasError() const; @@ -60,7 +61,7 @@ private: void loadTranslation(const QString &translation); QString m_path; QString m_shortName; - QStringList m_filters, m_contentTypes; + QStringList m_filters, m_contentTypes, m_protocols; bool m_error = false; QObject *m_instance = nullptr; DecoderFactory *m_decoderFactory = nullptr; |
