118#if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
119 && ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \
120 && (')' == 41) && ('*' == 42) && ('+' == 43) && (',' == 44) \
121 && ('-' == 45) && ('.' == 46) && ('/' == 47) && ('0' == 48) \
122 && ('1' == 49) && ('2' == 50) && ('3' == 51) && ('4' == 52) \
123 && ('5' == 53) && ('6' == 54) && ('7' == 55) && ('8' == 56) \
124 && ('9' == 57) && (':' == 58) && (';' == 59) && ('<' == 60) \
125 && ('=' == 61) && ('>' == 62) && ('?' == 63) && ('A' == 65) \
126 && ('B' == 66) && ('C' == 67) && ('D' == 68) && ('E' == 69) \
127 && ('F' == 70) && ('G' == 71) && ('H' == 72) && ('I' == 73) \
128 && ('J' == 74) && ('K' == 75) && ('L' == 76) && ('M' == 77) \
129 && ('N' == 78) && ('O' == 79) && ('P' == 80) && ('Q' == 81) \
130 && ('R' == 82) && ('S' == 83) && ('T' == 84) && ('U' == 85) \
131 && ('V' == 86) && ('W' == 87) && ('X' == 88) && ('Y' == 89) \
132 && ('Z' == 90) && ('[' == 91) && ('\\' == 92) && (']' == 93) \
133 && ('^' == 94) && ('_' == 95) && ('a' == 97) && ('b' == 98) \
134 && ('c' == 99) && ('d' == 100) && ('e' == 101) && ('f' == 102) \
135 && ('g' == 103) && ('h' == 104) && ('i' == 105) && ('j' == 106) \
136 && ('k' == 107) && ('l' == 108) && ('m' == 109) && ('n' == 110) \
137 && ('o' == 111) && ('p' == 112) && ('q' == 113) && ('r' == 114) \
138 && ('s' == 115) && ('t' == 116) && ('u' == 117) && ('v' == 118) \
139 && ('w' == 119) && ('x' == 120) && ('y' == 121) && ('z' == 122) \
140 && ('{' == 123) && ('|' == 124) && ('}' == 125) && ('~' == 126))
141/* The character set is not based on ISO-646. */
142#error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gnu-gperf@gnu.org>."
147 MIN_WORD_LENGTH = 47,
148 MAX_WORD_LENGTH = 78,
152/* maximum key range = 41, duplicates = 0 */
154inline static bool isSupportedSvgFeature(const QString &str)
156 static const unsigned char asso_values[] = {
157 89, 89, 89, 89, 89, 89, 89, 89, 89, 89,
158 89, 89, 89, 89, 89, 89, 89, 89, 89, 89,
159 89, 89, 89, 89, 89, 89, 89, 89, 89, 89,
160 89, 89, 89, 89, 89, 89, 89, 89, 89, 89,
161 89, 89, 89, 89, 89, 89, 89, 89, 89, 89,
162 89, 89, 89, 89, 89, 89, 89, 89, 89, 89,
163 89, 89, 89, 89, 89, 89, 89, 0, 89, 5,
164 15, 5, 0, 10, 89, 89, 89, 89, 89, 0,
165 15, 89, 89, 0, 0, 89, 5, 89, 0, 89,
166 89, 89, 89, 89, 89, 89, 89, 0, 89, 89,
167 89, 0, 89, 89, 0, 89, 89, 89, 0, 5,
168 89, 0, 0, 89, 5, 89, 0, 89, 89, 89,
169 5, 0, 89, 89, 89, 89, 89, 89, 89, 89,
170 89, 89, 89, 89, 89, 89, 89, 89, 89, 89,
171 89, 89, 89, 89, 89, 89, 89, 89, 89, 89,
172 89, 89, 89, 89, 89, 89, 89, 89, 89, 89,
173 89, 89, 89, 89, 89, 89, 89, 89, 89, 89,
174 89, 89, 89, 89, 89, 89, 89, 89, 89, 89,
175 89, 89, 89, 89, 89, 89, 89, 89, 89, 89,
176 89, 89, 89, 89, 89, 89, 89, 89, 89, 89,
177 89, 89, 89, 89, 89, 89, 89, 89, 89, 89,
178 89, 89, 89, 89, 89, 89, 89, 89, 89, 89,
179 89, 89, 89, 89, 89, 89, 89, 89, 89, 89,
180 89, 89, 89, 89, 89, 89, 89, 89, 89, 89,
181 89, 89, 89, 89, 89, 89, 89, 89, 89, 89,
182 89, 89, 89, 89, 89, 89
185 static const char * wordlist[] = {
186 "", "", "", "", "", "", "", "", "",
187 "", "", "", "", "", "", "", "", "",
188 "", "", "", "", "", "", "", "", "",
189 "", "", "", "", "", "", "", "", "",
190 "", "", "", "", "", "", "", "", "",
193 "http://www.w3.org/Graphics/SVG/feature/1.2/#Shape",
195 "http://www.w3.org/Graphics/SVG/feature/1.2/#SVG",
196 "http://www.w3.org/Graphics/SVG/feature/1.2/#Structure",
197 "http://www.w3.org/Graphics/SVG/feature/1.2/#SolidColor",
199 "http://www.w3.org/Graphics/SVG/feature/1.2/#Hyperlinking",
200 "http://www.w3.org/Graphics/SVG/feature/1.2/#CoreAttribute",
201 "http://www.w3.org/Graphics/SVG/feature/1.2/#XlinkAttribute",
202 "http://www.w3.org/Graphics/SVG/feature/1.2/#SVG-static",
203 "http://www.w3.org/Graphics/SVG/feature/1.2/#OpacityAttribute",
205 "http://www.w3.org/Graphics/SVG/feature/1.2/#Gradient",
206 "http://www.w3.org/Graphics/SVG/feature/1.2/#Font",
207 "http://www.w3.org/Graphics/SVG/feature/1.2/#Image",
208 "http://www.w3.org/Graphics/SVG/feature/1.2/#ConditionalProcessing",
210 "http://www.w3.org/Graphics/SVG/feature/1.2/#Extensibility",
212 "http://www.w3.org/Graphics/SVG/feature/1.2/#GraphicsAttribute",
213 "http://www.w3.org/Graphics/SVG/feature/1.2/#Prefetch",
214 "http://www.w3.org/Graphics/SVG/feature/1.2/#PaintAttribute",
215 "http://www.w3.org/Graphics/SVG/feature/1.2/#ConditionalProcessingAttribute",
216 "",
"",
"",
"",
"",
"",
"",
"",
"",
218 "http://www.w3.org/Graphics/SVG/feature/1.2/#ExternalResourcesRequiredAttribute"
224 if (unicode44 >=
sizeof(asso_values) || unicode45 >=
sizeof(asso_values))
227 + asso_values[unicode45]
228 + asso_values[unicode44];
229 if (key <= MAX_HASH_VALUE && key >= 0)
263 bool okToRender =
true;
264 if (!features.isEmpty()) {
265 QStringList::const_iterator sitr = features.constBegin();
266 for (; sitr != features.constEnd(); ++sitr) {
274 if (okToRender && !extensions.isEmpty()) {
275 QStringList::const_iterator sitr = extensions.constBegin();
276 for (; sitr != extensions.constEnd(); ++sitr) {
284 if (okToRender && !languages.isEmpty()) {
285 QStringList::const_iterator sitr = languages.constBegin();
287 for (; sitr != languages.constEnd(); ++sitr) {
288 if ((*sitr).startsWith(m_systemLanguagePrefix)) {
295 if (okToRender && !
formats.isEmpty()) {
299 if (okToRender && !fonts.isEmpty()) {
318void QSvgSwitch::init()
323 m_systemLanguagePrefix = m_systemLanguage.
mid(0, idx);
constexpr char16_t unicode() const noexcept
Returns the numeric Unicode value of the QChar.
const_iterator constBegin() const noexcept
void append(parameter_type t)
const_iterator constEnd() const noexcept
The QPainter class performs low-level painting on widgets and other paint devices.
\inmodule QtCore\reentrant
\macro QT_RESTRICTED_CAST_FROM_ASCII
qsizetype size() const
Returns the number of characters in this string.
QString mid(qsizetype position, qsizetype n=-1) const
Returns a string that contains n characters of this string, starting at the specified position index.
const QChar at(qsizetype i) const
Returns the character at the given index position in the string.
static QString static QString qsizetype indexOf(QChar c, qsizetype from=0, Qt::CaseSensitivity cs=Qt::CaseSensitive) const
QSvgDefs(QSvgNode *parent)
void draw(QPainter *p, QSvgExtraStates &states) override
Type type() const override
void draw(QPainter *p, QSvgExtraStates &states) override
Type type() const override
void revertStyle(QPainter *p, QSvgExtraStates &states) const
const QStringList & requiredLanguages() const
void applyStyle(QPainter *p, QSvgExtraStates &states) const
const QStringList & requiredFonts() const
const QStringList & requiredFormats() const
virtual void draw(QPainter *p, QSvgExtraStates &states)=0
DisplayMode displayMode() const
const QStringList & requiredFeatures() const
QSvgTinyDocument * document() const
const QStringList & requiredExtensions() const
QRectF bounds(QPainter *p, QSvgExtraStates &states) const override
QSvgNode * previousSiblingNode(QSvgNode *n) const
void addChild(QSvgNode *child, const QString &id)
QSvgStructureNode(QSvgNode *parent)
QSvgNode * scopeNode(const QString &id) const
QList< QSvgNode * > m_renderers
void draw(QPainter *p, QSvgExtraStates &states) override
QSvgSwitch(QSvgNode *parent)
Type type() const override
QSvgNode * namedNode(const QString &id) const
void addNamedNode(const QString &id, QSvgNode *node)
qDeleteAll(list.begin(), list.end())
Combined button and popup list for selecting options.
QLatin1StringView QLatin1String
static bool isSupportedSvgExtension(const QString &)
static bool isSupportedSvgFeature(const QString &str)
\inmodule QtCore \reentrant
IUIAutomationTreeWalker __RPC__deref_out_opt IUIAutomationElement ** parent