QGIS API Documentation
4.3.0-Master (16eddb2670e)
Toggle main menu visibility
Loading...
Searching...
No Matches
src
gui
codeeditors
qgscodeeditorcolorschemeregistry.cpp
Go to the documentation of this file.
1
/***************************************************************************
2
qgscodeeditorcolorschemeregistry.cpp
3
--------------------------------------
4
Date : October 2020
5
Copyright : (C) 2020 by Nyall Dawson
6
Email : nyall dot dawson at gmail dot com
7
***************************************************************************
8
* *
9
* This program is free software; you can redistribute it and/or modify *
10
* it under the terms of the GNU General Public License as published by *
11
* the Free Software Foundation; either version 2 of the License, or *
12
* (at your option) any later version. *
13
* *
14
***************************************************************************/
15
#include "
qgscodeeditorcolorschemeregistry.h
"
16
17
#include <QObject>
18
#include <QString>
19
20
using namespace
Qt::StringLiterals;
21
22
QgsCodeEditorColorSchemeRegistry::QgsCodeEditorColorSchemeRegistry
()
23
{
24
QgsCodeEditorColorScheme
defaultScheme( u
"default"
_s, QObject::tr(
"Default"
) );
25
defaultScheme.
setColors
( {
26
{
QgsCodeEditorColorScheme::ColorRole::Default
, QColor(
"#4d4d4c"
) },
27
{
QgsCodeEditorColorScheme::ColorRole::Keyword
, QColor(
"#8959a8"
) },
28
{
QgsCodeEditorColorScheme::ColorRole::Class
, QColor(
"#4271ae"
) },
29
{
QgsCodeEditorColorScheme::ColorRole::Method
, QColor(
"#4271ae"
) },
30
{
QgsCodeEditorColorScheme::ColorRole::Decoration
, QColor(
"#3e999f"
) },
31
{
QgsCodeEditorColorScheme::ColorRole::Number
, QColor(
"#c82829"
) },
32
{
QgsCodeEditorColorScheme::ColorRole::Comment
, QColor(
"#8e908c"
) },
33
{
QgsCodeEditorColorScheme::ColorRole::CommentLine
, QColor(
"#8e908c"
) },
34
{
QgsCodeEditorColorScheme::ColorRole::CommentBlock
, QColor(
"#8e908c"
) },
35
{
QgsCodeEditorColorScheme::ColorRole::Background
, QColor(
"#ffffff"
) },
36
{
QgsCodeEditorColorScheme::ColorRole::Operator
, QColor(
"#8959a8"
) },
37
{
QgsCodeEditorColorScheme::ColorRole::QuotedOperator
, QColor(
"#8959a8"
) },
38
{
QgsCodeEditorColorScheme::ColorRole::Identifier
, QColor(
"#4271ae"
) },
39
{
QgsCodeEditorColorScheme::ColorRole::QuotedIdentifier
, QColor(
"#4271ae"
) },
40
{
QgsCodeEditorColorScheme::ColorRole::Tag
, QColor(
"#4271ae"
) },
41
{
QgsCodeEditorColorScheme::ColorRole::UnknownTag
, QColor(
"#4271ae"
) },
42
{
QgsCodeEditorColorScheme::ColorRole::Cursor
, QColor(
"#636363"
) },
43
{
QgsCodeEditorColorScheme::ColorRole::CaretLine
, QColor(
"#efefef"
) },
44
{
QgsCodeEditorColorScheme::ColorRole::SingleQuote
, QColor(
"#718c00"
) },
45
{
QgsCodeEditorColorScheme::ColorRole::DoubleQuote
, QColor(
"#718c00"
) },
46
{
QgsCodeEditorColorScheme::ColorRole::TripleSingleQuote
, QColor(
"#eab700"
) },
47
{
QgsCodeEditorColorScheme::ColorRole::TripleDoubleQuote
, QColor(
"#eab700"
) },
48
{
QgsCodeEditorColorScheme::ColorRole::MarginBackground
, QColor(
"#efefef"
) },
49
{
QgsCodeEditorColorScheme::ColorRole::MarginForeground
, QColor(
"#636363"
) },
50
{
QgsCodeEditorColorScheme::ColorRole::SelectionBackground
, QColor(
"#d7d7d7"
) },
51
{
QgsCodeEditorColorScheme::ColorRole::SelectionForeground
, QColor(
"#303030"
) },
52
{
QgsCodeEditorColorScheme::ColorRole::MatchedBraceBackground
, QColor(
"#b7f907"
) },
53
{
QgsCodeEditorColorScheme::ColorRole::MatchedBraceForeground
, QColor(
"#303030"
) },
54
{
QgsCodeEditorColorScheme::ColorRole::Edge
, QColor(
"#efefef"
) },
55
{
QgsCodeEditorColorScheme::ColorRole::Fold
, QColor(
"#efefef"
) },
56
{
QgsCodeEditorColorScheme::ColorRole::Error
, QColor(
"#e31a1c"
) },
57
{
QgsCodeEditorColorScheme::ColorRole::ErrorBackground
, QColor(
"#ffffff"
) },
58
{
QgsCodeEditorColorScheme::ColorRole::FoldIconForeground
, QColor(
"#ffffff"
) },
59
{
QgsCodeEditorColorScheme::ColorRole::FoldIconHalo
, QColor(
"#000000"
) },
60
{
QgsCodeEditorColorScheme::ColorRole::IndentationGuide
, QColor(
"#d5d5d5"
) },
61
{
QgsCodeEditorColorScheme::ColorRole::SearchMatchBackground
, QColor(
"#dadada"
) },
62
} );
63
addColorScheme
( defaultScheme );
64
65
QgsCodeEditorColorScheme
solarizedLight( u
"solarized"
_s, QObject::tr(
"Solarized (Light)"
) );
66
solarizedLight.
setColors
( {
67
{
QgsCodeEditorColorScheme::ColorRole::Default
, QColor(
"#586E75"
) },
68
{
QgsCodeEditorColorScheme::ColorRole::Keyword
, QColor(
"#859900"
) },
69
{
QgsCodeEditorColorScheme::ColorRole::Class
, QColor(
"#268BD2"
) },
70
{
QgsCodeEditorColorScheme::ColorRole::Method
, QColor(
"#268BD2"
) },
71
{
QgsCodeEditorColorScheme::ColorRole::Decoration
, QColor(
"#6C71C4"
) },
72
{
QgsCodeEditorColorScheme::ColorRole::Number
, QColor(
"#2AA198"
) },
73
{
QgsCodeEditorColorScheme::ColorRole::Comment
, QColor(
"#93A1A1"
) },
74
{
QgsCodeEditorColorScheme::ColorRole::CommentLine
, QColor(
"#93A1A1"
) },
75
{
QgsCodeEditorColorScheme::ColorRole::CommentBlock
, QColor(
"#3D8080"
) },
76
{
QgsCodeEditorColorScheme::ColorRole::Background
, QColor(
"#FDF6E3"
) },
77
{
QgsCodeEditorColorScheme::ColorRole::Cursor
, QColor(
"#DC322F"
) },
78
{
QgsCodeEditorColorScheme::ColorRole::CaretLine
, QColor(
"#EEE8D5"
) },
79
{
QgsCodeEditorColorScheme::ColorRole::Operator
, QColor(
"#586E75"
) },
80
{
QgsCodeEditorColorScheme::ColorRole::QuotedOperator
, QColor(
"#586E75"
) },
81
{
QgsCodeEditorColorScheme::ColorRole::Identifier
, QColor(
"#586E75"
) },
82
{
QgsCodeEditorColorScheme::ColorRole::QuotedIdentifier
, QColor(
"#586E75"
) },
83
{
QgsCodeEditorColorScheme::ColorRole::Tag
, QColor(
"#2AA198"
) },
84
{
QgsCodeEditorColorScheme::ColorRole::UnknownTag
, QColor(
"#2AA198"
) },
85
{
QgsCodeEditorColorScheme::ColorRole::SingleQuote
, QColor(
"#3D8080"
) },
86
{
QgsCodeEditorColorScheme::ColorRole::DoubleQuote
, QColor(
"#3D8080"
) },
87
{
QgsCodeEditorColorScheme::ColorRole::TripleSingleQuote
, QColor(
"#3D8080"
) },
88
{
QgsCodeEditorColorScheme::ColorRole::TripleDoubleQuote
, QColor(
"#3D8080"
) },
89
{
QgsCodeEditorColorScheme::ColorRole::MarginBackground
, QColor(
"#EEE8D5"
) },
90
{
QgsCodeEditorColorScheme::ColorRole::MarginForeground
, QColor(
"#93A1A1"
) },
91
{
QgsCodeEditorColorScheme::ColorRole::SelectionBackground
, QColor(
"#839496"
) },
92
{
QgsCodeEditorColorScheme::ColorRole::SelectionForeground
, QColor(
"#FDF6E3"
) },
93
{
QgsCodeEditorColorScheme::ColorRole::MatchedBraceBackground
, QColor(
"#CBCCA3"
) },
94
{
QgsCodeEditorColorScheme::ColorRole::MatchedBraceForeground
, QColor(
"#586E75"
) },
95
{
QgsCodeEditorColorScheme::ColorRole::Edge
, QColor(
"#EEE8D5"
) },
96
{
QgsCodeEditorColorScheme::ColorRole::Fold
, QColor(
"#EEE8D5"
) },
97
{
QgsCodeEditorColorScheme::ColorRole::Error
, QColor(
"#DC322F"
) },
98
{
QgsCodeEditorColorScheme::ColorRole::ErrorBackground
, QColor(
"#ffffff"
) },
99
{
QgsCodeEditorColorScheme::ColorRole::FoldIconForeground
, QColor(
"#ffffff"
) },
100
{
QgsCodeEditorColorScheme::ColorRole::FoldIconHalo
, QColor(
"#93a1a1"
) },
101
{
QgsCodeEditorColorScheme::ColorRole::IndentationGuide
, QColor(
"#c2beb3"
) },
102
{
QgsCodeEditorColorScheme::ColorRole::SearchMatchBackground
, QColor(
"#b58900"
) },
103
} );
104
addColorScheme
( solarizedLight );
105
106
QgsCodeEditorColorScheme
solarizedDark( u
"solarized_dark"
_s, QObject::tr(
"Solarized (Dark)"
) );
107
solarizedDark.
setColors
( {
108
{
QgsCodeEditorColorScheme::ColorRole::Default
, QColor(
"#839496"
) },
109
{
QgsCodeEditorColorScheme::ColorRole::Keyword
, QColor(
"#859900"
) },
110
{
QgsCodeEditorColorScheme::ColorRole::Class
, QColor(
"#268BD2"
) },
111
{
QgsCodeEditorColorScheme::ColorRole::Method
, QColor(
"#268BD2"
) },
112
{
QgsCodeEditorColorScheme::ColorRole::Decoration
, QColor(
"#94558D"
) },
113
{
QgsCodeEditorColorScheme::ColorRole::Number
, QColor(
"#2AA198"
) },
114
{
QgsCodeEditorColorScheme::ColorRole::Comment
, QColor(
"#2AA198"
) },
115
{
QgsCodeEditorColorScheme::ColorRole::CommentLine
, QColor(
"#2AA198"
) },
116
{
QgsCodeEditorColorScheme::ColorRole::CommentBlock
, QColor(
"#2AA198"
) },
117
{
QgsCodeEditorColorScheme::ColorRole::Background
, QColor(
"#002B36"
) },
118
{
QgsCodeEditorColorScheme::ColorRole::Cursor
, QColor(
"#DC322F"
) },
119
{
QgsCodeEditorColorScheme::ColorRole::CaretLine
, QColor(
"#073642"
) },
120
{
QgsCodeEditorColorScheme::ColorRole::Operator
, QColor(
"#839496"
) },
121
{
QgsCodeEditorColorScheme::ColorRole::QuotedOperator
, QColor(
"#839496"
) },
122
{
QgsCodeEditorColorScheme::ColorRole::Identifier
, QColor(
"#839496"
) },
123
{
QgsCodeEditorColorScheme::ColorRole::QuotedIdentifier
, QColor(
"#839496"
) },
124
{
QgsCodeEditorColorScheme::ColorRole::Tag
, QColor(
"#268BD2"
) },
125
{
QgsCodeEditorColorScheme::ColorRole::UnknownTag
, QColor(
"#268BD2"
) },
126
{
QgsCodeEditorColorScheme::ColorRole::SingleQuote
, QColor(
"#3D8080"
) },
127
{
QgsCodeEditorColorScheme::ColorRole::DoubleQuote
, QColor(
"#3D8080"
) },
128
{
QgsCodeEditorColorScheme::ColorRole::TripleSingleQuote
, QColor(
"#3D8080"
) },
129
{
QgsCodeEditorColorScheme::ColorRole::TripleDoubleQuote
, QColor(
"#3D8080"
) },
130
{
QgsCodeEditorColorScheme::ColorRole::MarginBackground
, QColor(
"#073642"
) },
131
{
QgsCodeEditorColorScheme::ColorRole::MarginForeground
, QColor(
"#586E75"
) },
132
{
QgsCodeEditorColorScheme::ColorRole::SelectionBackground
, QColor(
"#657B83"
) },
133
{
QgsCodeEditorColorScheme::ColorRole::SelectionForeground
, QColor(
"#002B36"
) },
134
{
QgsCodeEditorColorScheme::ColorRole::MatchedBraceBackground
, QColor(
"#1F4D2C"
) },
135
{
QgsCodeEditorColorScheme::ColorRole::MatchedBraceForeground
, QColor(
"#839496"
) },
136
{
QgsCodeEditorColorScheme::ColorRole::Edge
, QColor(
"#586E75"
) },
137
{
QgsCodeEditorColorScheme::ColorRole::Fold
, QColor(
"#073642"
) },
138
{
QgsCodeEditorColorScheme::ColorRole::Error
, QColor(
"#DC322F"
) },
139
{
QgsCodeEditorColorScheme::ColorRole::ErrorBackground
, QColor(
"#ffffff"
) },
140
{
QgsCodeEditorColorScheme::ColorRole::FoldIconForeground
, QColor(
"#586e75"
) },
141
{
QgsCodeEditorColorScheme::ColorRole::FoldIconHalo
, QColor(
"#839496"
) },
142
{
QgsCodeEditorColorScheme::ColorRole::IndentationGuide
, QColor(
"#586E75"
) },
143
{
QgsCodeEditorColorScheme::ColorRole::SearchMatchBackground
, QColor(
"#075e42"
) },
144
} );
145
addColorScheme
( solarizedDark );
146
}
147
148
bool
QgsCodeEditorColorSchemeRegistry::addColorScheme
(
const
QgsCodeEditorColorScheme
&
scheme
)
149
{
150
if
( mColorSchemes.contains(
scheme
.id() ) )
151
return
false
;
152
153
mColorSchemes.insert(
scheme
.id(),
scheme
);
154
return
true
;
155
}
156
157
bool
QgsCodeEditorColorSchemeRegistry::removeColorScheme
(
const
QString &
id
)
158
{
159
if
( !mColorSchemes.contains(
id
) )
160
return
false
;
161
162
mColorSchemes.remove(
id
);
163
return
true
;
164
}
165
166
QStringList
QgsCodeEditorColorSchemeRegistry::schemes
()
const
167
{
168
return
mColorSchemes.keys();
169
}
170
171
QgsCodeEditorColorScheme
QgsCodeEditorColorSchemeRegistry::scheme
(
const
QString &
id
)
const
172
{
173
if
( !mColorSchemes.contains(
id
) )
174
return
mColorSchemes.value( u
"default"
_s );
175
176
return
mColorSchemes.value(
id
);
177
}
QgsCodeEditorColorSchemeRegistry::addColorScheme
bool addColorScheme(const QgsCodeEditorColorScheme &scheme)
Adds a color scheme to the registry.
Definition
qgscodeeditorcolorschemeregistry.cpp:148
QgsCodeEditorColorSchemeRegistry::removeColorScheme
bool removeColorScheme(const QString &id)
Removes the color scheme with matching id from the registry.
Definition
qgscodeeditorcolorschemeregistry.cpp:157
QgsCodeEditorColorSchemeRegistry::scheme
QgsCodeEditorColorScheme scheme(const QString &id) const
Returns the color scheme with matching id.
Definition
qgscodeeditorcolorschemeregistry.cpp:171
QgsCodeEditorColorSchemeRegistry::schemes
QStringList schemes() const
Returns a list of the QgsCodeEditorColorScheme::id() values for all registered color schemes.
Definition
qgscodeeditorcolorschemeregistry.cpp:166
QgsCodeEditorColorSchemeRegistry::QgsCodeEditorColorSchemeRegistry
QgsCodeEditorColorSchemeRegistry()
Constructor for a color scheme registry.
Definition
qgscodeeditorcolorschemeregistry.cpp:22
QgsCodeEditorColorScheme
Defines a color scheme for use in QgsCodeEditor widgets.
Definition
qgscodeeditorcolorscheme.h:32
QgsCodeEditorColorScheme::ColorRole::Comment
@ Comment
Comment color.
Definition
qgscodeeditorcolorscheme.h:45
QgsCodeEditorColorScheme::ColorRole::TripleSingleQuote
@ TripleSingleQuote
Triple single quote color.
Definition
qgscodeeditorcolorscheme.h:53
QgsCodeEditorColorScheme::ColorRole::CommentBlock
@ CommentBlock
Comment block color.
Definition
qgscodeeditorcolorscheme.h:47
QgsCodeEditorColorScheme::ColorRole::QuotedOperator
@ QuotedOperator
Quoted operator color.
Definition
qgscodeeditorcolorscheme.h:56
QgsCodeEditorColorScheme::ColorRole::Keyword
@ Keyword
Keyword color.
Definition
qgscodeeditorcolorscheme.h:40
QgsCodeEditorColorScheme::ColorRole::Decoration
@ Decoration
Decoration color.
Definition
qgscodeeditorcolorscheme.h:43
QgsCodeEditorColorScheme::ColorRole::Identifier
@ Identifier
Identifier color.
Definition
qgscodeeditorcolorscheme.h:57
QgsCodeEditorColorScheme::ColorRole::DoubleQuote
@ DoubleQuote
Double quote color.
Definition
qgscodeeditorcolorscheme.h:52
QgsCodeEditorColorScheme::ColorRole::QuotedIdentifier
@ QuotedIdentifier
Quoted identifier color.
Definition
qgscodeeditorcolorscheme.h:58
QgsCodeEditorColorScheme::ColorRole::Method
@ Method
Method color.
Definition
qgscodeeditorcolorscheme.h:42
QgsCodeEditorColorScheme::ColorRole::SelectionForeground
@ SelectionForeground
Selection foreground color.
Definition
qgscodeeditorcolorscheme.h:64
QgsCodeEditorColorScheme::ColorRole::CommentLine
@ CommentLine
Line comment color.
Definition
qgscodeeditorcolorscheme.h:46
QgsCodeEditorColorScheme::ColorRole::FoldIconForeground
@ FoldIconForeground
Fold icon foreground color.
Definition
qgscodeeditorcolorscheme.h:71
QgsCodeEditorColorScheme::ColorRole::MarginForeground
@ MarginForeground
Margin foreground color.
Definition
qgscodeeditorcolorscheme.h:62
QgsCodeEditorColorScheme::ColorRole::ErrorBackground
@ ErrorBackground
Error background color.
Definition
qgscodeeditorcolorscheme.h:70
QgsCodeEditorColorScheme::ColorRole::MatchedBraceBackground
@ MatchedBraceBackground
Matched brace background color.
Definition
qgscodeeditorcolorscheme.h:65
QgsCodeEditorColorScheme::ColorRole::Default
@ Default
Default text color.
Definition
qgscodeeditorcolorscheme.h:39
QgsCodeEditorColorScheme::ColorRole::Fold
@ Fold
Fold color.
Definition
qgscodeeditorcolorscheme.h:68
QgsCodeEditorColorScheme::ColorRole::UnknownTag
@ UnknownTag
Unknown tag.
Definition
qgscodeeditorcolorscheme.h:60
QgsCodeEditorColorScheme::ColorRole::Error
@ Error
Error color.
Definition
qgscodeeditorcolorscheme.h:69
QgsCodeEditorColorScheme::ColorRole::Cursor
@ Cursor
Cursor color.
Definition
qgscodeeditorcolorscheme.h:49
QgsCodeEditorColorScheme::ColorRole::Class
@ Class
Class color.
Definition
qgscodeeditorcolorscheme.h:41
QgsCodeEditorColorScheme::ColorRole::SearchMatchBackground
@ SearchMatchBackground
Background color for search matches.
Definition
qgscodeeditorcolorscheme.h:74
QgsCodeEditorColorScheme::ColorRole::CaretLine
@ CaretLine
Caret line color.
Definition
qgscodeeditorcolorscheme.h:50
QgsCodeEditorColorScheme::ColorRole::IndentationGuide
@ IndentationGuide
Indentation guide line.
Definition
qgscodeeditorcolorscheme.h:73
QgsCodeEditorColorScheme::ColorRole::Background
@ Background
Background color.
Definition
qgscodeeditorcolorscheme.h:48
QgsCodeEditorColorScheme::ColorRole::SingleQuote
@ SingleQuote
Single quote color.
Definition
qgscodeeditorcolorscheme.h:51
QgsCodeEditorColorScheme::ColorRole::Number
@ Number
Number color.
Definition
qgscodeeditorcolorscheme.h:44
QgsCodeEditorColorScheme::ColorRole::MarginBackground
@ MarginBackground
Margin background color.
Definition
qgscodeeditorcolorscheme.h:61
QgsCodeEditorColorScheme::ColorRole::Tag
@ Tag
Tag color.
Definition
qgscodeeditorcolorscheme.h:59
QgsCodeEditorColorScheme::ColorRole::SelectionBackground
@ SelectionBackground
Selection background color.
Definition
qgscodeeditorcolorscheme.h:63
QgsCodeEditorColorScheme::ColorRole::MatchedBraceForeground
@ MatchedBraceForeground
Matched brace foreground color.
Definition
qgscodeeditorcolorscheme.h:66
QgsCodeEditorColorScheme::ColorRole::Operator
@ Operator
Operator color.
Definition
qgscodeeditorcolorscheme.h:55
QgsCodeEditorColorScheme::ColorRole::Edge
@ Edge
Edge color.
Definition
qgscodeeditorcolorscheme.h:67
QgsCodeEditorColorScheme::ColorRole::TripleDoubleQuote
@ TripleDoubleQuote
Triple double quote color.
Definition
qgscodeeditorcolorscheme.h:54
QgsCodeEditorColorScheme::ColorRole::FoldIconHalo
@ FoldIconHalo
Fold icon halo color.
Definition
qgscodeeditorcolorscheme.h:72
QgsCodeEditorColorScheme::setColors
void setColors(const QMap< ColorRole, QColor > &colors)
Sets all colors for the scheme.
Definition
qgscodeeditorcolorscheme.cpp:32
qgscodeeditorcolorschemeregistry.h
Generated on
for QGIS API Documentation by
1.17.0