blob: 4082901c992fb1c38d5a212df786c3df7a84a466 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
|
// Copyright (C) 2016 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
#pragma once
#include <utils/filepath.h>
#include <QString>
#include <QStringList>
#include <QList>
#include <QRegularExpression>
namespace Utils {
class Key;
class QtcSettings;
} // Utils
namespace TextEditor {
class HighlighterSettings
{
public:
HighlighterSettings() = default;
void toSettings(const Utils::Key &category, Utils::QtcSettings *s) const;
void fromSettings(const Utils::Key &category, Utils::QtcSettings *s);
void setDefinitionFilesPath(const Utils::FilePath &path) { m_definitionFilesPath = path; }
const Utils::FilePath &definitionFilesPath() const { return m_definitionFilesPath; }
void setIgnoredFilesPatterns(const QString &patterns);
QString ignoredFilesPatterns() const;
bool isIgnoredFilePattern(const QString &fileName) const;
bool equals(const HighlighterSettings &highlighterSettings) const;
friend bool operator==(const HighlighterSettings &a, const HighlighterSettings &b)
{ return a.equals(b); }
friend bool operator!=(const HighlighterSettings &a, const HighlighterSettings &b)
{ return !a.equals(b); }
private:
void assignDefaultIgnoredPatterns();
void assignDefaultDefinitionsPath();
void setExpressionsFromList(const QStringList &patterns);
QStringList listFromExpressions() const;
Utils::FilePath m_definitionFilesPath;
QList<QRegularExpression> m_ignoredFiles;
};
} // namespace TextEditor
|