aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2009-12-08 21:15:57 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2009-12-08 21:15:57 +0000
commitbd5d761d73012232b9a76b95d05eacd96cd5dc26 (patch)
tree26994230eafba424e8c51cf9257bd64682f257f9
parent34d21d2e921920ac8f1ddda91dbc019b9a58e02e (diff)
downloadqmmp-bd5d761d73012232b9a76b95d05eacd96cd5dc26.tar.gz
qmmp-bd5d761d73012232b9a76b95d05eacd96cd5dc26.tar.bz2
qmmp-bd5d761d73012232b9a76b95d05eacd96cd5dc26.zip
some effect fixes
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@1433 90c681e8-e032-0410-971d-27865f9a5e38
-rw-r--r--src/qmmp/effect.cpp32
-rw-r--r--src/qmmp/effect.h3
2 files changed, 20 insertions, 15 deletions
diff --git a/src/qmmp/effect.cpp b/src/qmmp/effect.cpp
index 4aa8b6c01..66b6bdf69 100644
--- a/src/qmmp/effect.cpp
+++ b/src/qmmp/effect.cpp
@@ -58,17 +58,19 @@ int Effect::bitsPerSample()
return m_res;
}
-static QList<EffectFactory*> *factories = 0;
-static QStringList files;
+//static members
-static void checkFactories()
+QList<EffectFactory*> *Effect::m_factories = 0;
+QStringList Effect::m_files;
+
+void Effect::checkFactories()
{
- if (! factories)
+ if (!m_factories)
{
- files.clear();
- factories = new QList<EffectFactory *>;
+ m_files.clear();
+ m_factories = new QList<EffectFactory *>;
- QDir pluginsDir (Qmmp::pluginsPath());
+ QDir pluginsDir (Qmmp::pluginsPath());
pluginsDir.cd("Effect");
foreach (QString fileName, pluginsDir.entryList(QDir::Files))
{
@@ -85,8 +87,8 @@ static void checkFactories()
if (factory)
{
- factories->append(factory);
- files << pluginsDir.absoluteFilePath(fileName);
+ m_factories->append(factory);
+ m_files << pluginsDir.absoluteFilePath(fileName);
qApp->installTranslator(factory->createTranslator(qApp));
}
}
@@ -98,7 +100,7 @@ QList<Effect*> Effect::create()
checkFactories();
QList<Effect*> effects;
EffectFactory *factory = 0;
- foreach (factory, *factories)
+ foreach (factory, *m_factories)
{
if(isEnabled(factory))
effects.append(factory->create());
@@ -109,19 +111,19 @@ QList<Effect*> Effect::create()
QList<EffectFactory*> *Effect::effectFactories()
{
checkFactories();
- return factories;
+ return m_factories;
}
QStringList Effect::effectFiles()
{
checkFactories();
- return files;
+ return m_files;
}
void Effect::setEnabled(EffectFactory* factory, bool enable)
{
checkFactories();
- if(!factories->contains(factory))
+ if(!m_factories->contains(factory))
return;
QString name = factory->properties().shortName;
@@ -141,10 +143,10 @@ void Effect::setEnabled(EffectFactory* factory, bool enable)
bool Effect::isEnabled(EffectFactory* factory)
{
checkFactories();
- if(!factories->contains(factory))
+ if(!m_factories->contains(factory))
return FALSE;
QString name = factory->properties().shortName;
- QSettings settings ( Qmmp::configFile(), QSettings::IniFormat );
+ QSettings settings (Qmmp::configFile(), QSettings::IniFormat);
QStringList effList = settings.value("Effect/enabled_plugins").toStringList();
return effList.contains(name);
}
diff --git a/src/qmmp/effect.h b/src/qmmp/effect.h
index a3a14ab0b..511ef8f18 100644
--- a/src/qmmp/effect.h
+++ b/src/qmmp/effect.h
@@ -94,6 +94,9 @@ private:
quint32 m_freq;
int m_chan;
int m_res;
+ static void checkFactories();
+ static QList<EffectFactory*> *m_factories;
+ static QStringList m_files;
};
#endif