summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/plugins/texteditor/generichighlighter/highlightdefinition.cpp75
-rw-r--r--src/plugins/texteditor/generichighlighter/highlightdefinition.h10
2 files changed, 46 insertions, 39 deletions
diff --git a/src/plugins/texteditor/generichighlighter/highlightdefinition.cpp b/src/plugins/texteditor/generichighlighter/highlightdefinition.cpp
index 69d143786a..696fb921c6 100644
--- a/src/plugins/texteditor/generichighlighter/highlightdefinition.cpp
+++ b/src/plugins/texteditor/generichighlighter/highlightdefinition.cpp
@@ -39,27 +39,10 @@
using namespace TextEditor;
using namespace Internal;
-HighlightDefinition::HighlightDefinition() :
- m_keywordCaseSensitivity(Qt::CaseSensitive),
- m_singleLineCommentAfterWhiteSpaces(false),
- m_indentationBasedFolding(false)
-{
- QString s(QLatin1String(".():!+,-<=>%&/;?[]^{|}~\\*, \t"));
- foreach (const QChar &c, s)
- m_delimiters.insert(c);
-}
-
-HighlightDefinition::~HighlightDefinition()
-{}
-
-bool HighlightDefinition::isValid() const
-{
- return !m_initialContext.isEmpty();
-}
+namespace {
template <class Element, class Container>
-QSharedPointer<Element> HighlightDefinition::
-GenericHelper::create(const QString &name, Container &container)
+QSharedPointer<Element> createHelper(const QString &name, Container &container)
{
if (name.isEmpty())
throw HighlighterException();
@@ -71,8 +54,8 @@ GenericHelper::create(const QString &name, Container &container)
}
template <class Element, class Container>
-QSharedPointer<Element> HighlightDefinition::
-GenericHelper::find(const QString &name, const Container &container) const
+QSharedPointer<Element>
+findHelper(const QString &name, const Container &container)
{
typename Container::const_iterator it = container.find(name);
if (it == container.end())
@@ -81,36 +64,70 @@ GenericHelper::find(const QString &name, const Container &container) const
return it.value();
}
+} // anon namespace
+
+HighlightDefinition::HighlightDefinition() :
+ m_keywordCaseSensitivity(Qt::CaseSensitive),
+ m_singleLineCommentAfterWhiteSpaces(false),
+ m_indentationBasedFolding(false)
+{
+ QString s(QLatin1String(".():!+,-<=>%&/;?[]^{|}~\\*, \t"));
+ foreach (const QChar &c, s)
+ m_delimiters.insert(c);
+}
+
+HighlightDefinition::~HighlightDefinition()
+{}
+
+bool HighlightDefinition::isValid() const
+{
+ return !m_initialContext.isEmpty();
+}
+
QSharedPointer<KeywordList> HighlightDefinition::createKeywordList(const QString &list)
-{ return m_helper.create<KeywordList>(list, m_lists); }
+{
+ return createHelper<KeywordList>(list, m_lists);
+}
QSharedPointer<KeywordList> HighlightDefinition::keywordList(const QString &list)
-{ return m_helper.find<KeywordList>(list, m_lists); }
+{
+ return findHelper<KeywordList>(list, m_lists);
+}
QSharedPointer<Context> HighlightDefinition::createContext(const QString &context, bool initial)
{
if (initial)
m_initialContext = context;
- QSharedPointer<Context> newContext = m_helper.create<Context>(context, m_contexts);
+ QSharedPointer<Context> newContext = createHelper<Context>(context, m_contexts);
newContext->setName(context);
return newContext;
}
QSharedPointer<Context> HighlightDefinition::initialContext() const
-{ return m_helper.find<Context>(m_initialContext, m_contexts); }
+{
+ return findHelper<Context>(m_initialContext, m_contexts);
+}
QSharedPointer<Context> HighlightDefinition::context(const QString &context) const
-{ return m_helper.find<Context>(context, m_contexts); }
+{
+ return findHelper<Context>(context, m_contexts);
+}
const QHash<QString, QSharedPointer<Context> > &HighlightDefinition::contexts() const
-{ return m_contexts; }
+{
+ return m_contexts;
+}
QSharedPointer<ItemData> HighlightDefinition::createItemData(const QString &itemData)
-{ return m_helper.create<ItemData>(itemData, m_itemsData); }
+{
+ return createHelper<ItemData>(itemData, m_itemsData);
+}
QSharedPointer<ItemData> HighlightDefinition::itemData(const QString &itemData) const
-{ return m_helper.find<ItemData>(itemData, m_itemsData); }
+{
+ return findHelper<ItemData>(itemData, m_itemsData);
+}
void HighlightDefinition::setSingleLineComment(const QString &start)
{ m_singleLineComment = start; }
diff --git a/src/plugins/texteditor/generichighlighter/highlightdefinition.h b/src/plugins/texteditor/generichighlighter/highlightdefinition.h
index 2d45de7006..5d3cd13767 100644
--- a/src/plugins/texteditor/generichighlighter/highlightdefinition.h
+++ b/src/plugins/texteditor/generichighlighter/highlightdefinition.h
@@ -89,16 +89,6 @@ public:
private:
Q_DISABLE_COPY(HighlightDefinition)
- struct GenericHelper
- {
- template <class Element, class Container>
- QSharedPointer<Element> create(const QString &name, Container &container);
-
- template <class Element, class Container>
- QSharedPointer<Element> find(const QString &name, const Container &container) const;
- };
- GenericHelper m_helper;
-
QHash<QString, QSharedPointer<KeywordList> > m_lists;
QHash<QString, QSharedPointer<Context> > m_contexts;
QHash<QString, QSharedPointer<ItemData> > m_itemsData;