diff options
Diffstat (limited to 'tests/auto/other/lancelot/paintcommands.cpp')
-rw-r--r-- | tests/auto/other/lancelot/paintcommands.cpp | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/tests/auto/other/lancelot/paintcommands.cpp b/tests/auto/other/lancelot/paintcommands.cpp index b61f170f42..d2e48688f9 100644 --- a/tests/auto/other/lancelot/paintcommands.cpp +++ b/tests/auto/other/lancelot/paintcommands.cpp @@ -92,6 +92,14 @@ const char *PaintCommands::fontHintingTable[] = { "Full" }; +const char *PaintCommands::fontCapitalizationTable[] = { + "MixedCase", + "AllUppercase", + "AllLowercase", + "SmallCaps", + "Capitalize" +}; + const char *PaintCommands::clipOperationTable[] = { "NoClip", "ReplaceClip", @@ -305,8 +313,8 @@ void PaintCommands::staticInit() "setCompositionMode <composition mode enum>", "setCompositionMode SourceOver"); DECL_PAINTCOMMAND("setFont", command_setFont, - "^setFont\\s+\"([\\w\\s]*)\"\\s*(\\w*)\\s*(\\w*)\\s*(\\w*)\\s*(\\w*)\\s*(\\w*)\\s*(\\w*)\\s*(\\w*)$", - "setFont <fontFace> [size] [font weight|font weight enum] [italic] [hinting enum] [underline] [strikeout] [overline]\n - font weight is an integer between 0 and 99", + "^setFont\\s+\"([\\w\\s]*)\"\\s*(\\w*)\\s*(\\w*)\\s*(\\w*)\\s*(\\w*)\\s*(\\w*)\\s*(\\w*)\\s*(\\w*)\\s*(\\w*)$", + "setFont <fontFace> [size] [font weight|font weight enum] [italic] [hinting enum] [underline] [strikeout] [overline] [capitalization enum]\n - font weight is an integer between 0 and 99", "setFont \"times\" 12"); DECL_PAINTCOMMAND("setPen", command_setPen, "^setPen\\s+#?(\\w*)$", @@ -2145,6 +2153,12 @@ void PaintCommands::command_setFont(QRegularExpressionMatch re) font.setStrikeOut(strikeOut); font.setOverline(overline); + int capitalization = translateEnum(fontCapitalizationTable, caps.at(9), 5); + if (capitalization == -1) + capitalization = 0; + else + font.setCapitalization(QFont::Capitalization(capitalization)); + if (m_verboseMode) printf(" -(lance) setFont(family=%s, size=%d, weight=%d, italic=%d hinting=%s\n", qPrintable(family), size, weight, italic, fontHintingTable[hinting]); |