forked from qt-creator/qt-creator
coreplugin: simplify VariableManager
Change-Id: Id89dba3be538a29953b374e58df961835ea4207a Reviewed-on: http://codereview.qt.nokia.com/1298 Reviewed-by: hjk <qthjk@ovi.com>
This commit is contained in:
@@ -45,7 +45,8 @@
|
|||||||
|
|
||||||
namespace Core {
|
namespace Core {
|
||||||
|
|
||||||
class VMMapExpander : public Utils::AbstractQtcMacroExpander {
|
class VMMapExpander : public Utils::AbstractQtcMacroExpander
|
||||||
|
{
|
||||||
public:
|
public:
|
||||||
virtual bool resolveMacro(const QString &name, QString *ret)
|
virtual bool resolveMacro(const QString &name, QString *ret)
|
||||||
{
|
{
|
||||||
@@ -55,27 +56,25 @@ public:
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
class VariableManagerPrivate : public QObject
|
class VariableManagerPrivate
|
||||||
{
|
{
|
||||||
Q_OBJECT
|
|
||||||
|
|
||||||
public:
|
public:
|
||||||
QHash<QString, QString> m_map;
|
QHash<QString, QString> m_map;
|
||||||
VMMapExpander m_macroExpander;
|
VMMapExpander m_macroExpander;
|
||||||
QMap<QString, QString> m_descriptions;
|
QMap<QString, QString> m_descriptions;
|
||||||
static VariableManager *m_instance;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
VariableManager *VariableManagerPrivate::m_instance = 0;
|
static VariableManager *variableManagerInstance = 0;
|
||||||
|
|
||||||
VariableManager::VariableManager() : d(new VariableManagerPrivate)
|
VariableManager::VariableManager() : d(new VariableManagerPrivate)
|
||||||
{
|
{
|
||||||
VariableManagerPrivate::m_instance = this;
|
variableManagerInstance = this;
|
||||||
}
|
}
|
||||||
|
|
||||||
VariableManager::~VariableManager()
|
VariableManager::~VariableManager()
|
||||||
{
|
{
|
||||||
VariableManagerPrivate::m_instance = 0;
|
variableManagerInstance = 0;
|
||||||
|
delete d;
|
||||||
}
|
}
|
||||||
|
|
||||||
void VariableManager::insert(const QString &variable, const QString &value)
|
void VariableManager::insert(const QString &variable, const QString &value)
|
||||||
@@ -108,9 +107,9 @@ Utils::AbstractMacroExpander *VariableManager::macroExpander()
|
|||||||
return &d->m_macroExpander;
|
return &d->m_macroExpander;
|
||||||
}
|
}
|
||||||
|
|
||||||
VariableManager* VariableManager::instance()
|
VariableManager *VariableManager::instance()
|
||||||
{
|
{
|
||||||
return VariableManagerPrivate::m_instance;
|
return variableManagerInstance;
|
||||||
}
|
}
|
||||||
|
|
||||||
void VariableManager::registerVariable(const QString &variable, const QString &description)
|
void VariableManager::registerVariable(const QString &variable, const QString &description)
|
||||||
@@ -129,5 +128,3 @@ QString VariableManager::variableDescription(const QString &variable) const
|
|||||||
}
|
}
|
||||||
|
|
||||||
} // namespace Core
|
} // namespace Core
|
||||||
|
|
||||||
#include "variablemanager.moc"
|
|
||||||
|
|||||||
@@ -44,6 +44,7 @@ class AbstractMacroExpander;
|
|||||||
}
|
}
|
||||||
|
|
||||||
namespace Core {
|
namespace Core {
|
||||||
|
|
||||||
class VariableManagerPrivate;
|
class VariableManagerPrivate;
|
||||||
|
|
||||||
class CORE_EXPORT VariableManager : public QObject
|
class CORE_EXPORT VariableManager : public QObject
|
||||||
@@ -54,7 +55,7 @@ public:
|
|||||||
VariableManager();
|
VariableManager();
|
||||||
~VariableManager();
|
~VariableManager();
|
||||||
|
|
||||||
static VariableManager* instance();
|
static VariableManager *instance();
|
||||||
|
|
||||||
void insert(const QString &variable, const QString &value);
|
void insert(const QString &variable, const QString &value);
|
||||||
bool remove(const QString &variable);
|
bool remove(const QString &variable);
|
||||||
@@ -71,7 +72,7 @@ signals:
|
|||||||
void variableUpdateRequested(const QString &variable);
|
void variableUpdateRequested(const QString &variable);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
QScopedPointer<VariableManagerPrivate> d;
|
VariableManagerPrivate *d;
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace Core
|
} // namespace Core
|
||||||
|
|||||||
Reference in New Issue
Block a user