diff options
28 files changed, 5182 insertions, 0 deletions
diff --git a/src/config.pri b/src/config.pri index 92df979a..2752723f 100644 --- a/src/config.pri +++ b/src/config.pri @@ -32,6 +32,7 @@ disable-layouts { # Flag for activating all languages lang-all: CONFIG += \ lang-ar_AR \ + lang-bg_BG \ lang-da_DK \ lang-de_DE \ lang-el_GR \ diff --git a/src/virtualkeyboard/content/components/InputModeKey.qml b/src/virtualkeyboard/content/components/InputModeKey.qml index 382a864b..1fd55ff1 100644 --- a/src/virtualkeyboard/content/components/InputModeKey.qml +++ b/src/virtualkeyboard/content/components/InputModeKey.qml @@ -69,6 +69,7 @@ Key { "カ", // InputEngine.Katakana "全角", // InputEngine.FullwidthLatin "ΑΒΓ", // InputEngine.Greek + "АВЗ", // InputEngine.Cyrillic "中文", // InputEngine.ChineseHandwriting "日本語", // InputEngine.JapaneseHandwriting "한국어", // InputEngine.KoreanHandwriting diff --git a/src/virtualkeyboard/content/layouts/bg_BG/handwriting.qml b/src/virtualkeyboard/content/layouts/bg_BG/handwriting.qml new file mode 100644 index 00000000..782f3217 --- /dev/null +++ b/src/virtualkeyboard/content/layouts/bg_BG/handwriting.qml @@ -0,0 +1,99 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Virtual Keyboard module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +import QtQuick 2.0 +import QtQuick.Layouts 1.0 +import QtQuick.VirtualKeyboard 2.3 + +KeyboardLayout { + function createInputMethod() { + return Qt.createQmlObject('import QtQuick 2.0; import QtQuick.VirtualKeyboard 2.3; HandwritingInputMethod {}', parent) + } + sharedLayouts: ['symbols'] + + KeyboardRow { + Layout.preferredHeight: 3 + KeyboardColumn { + Layout.preferredWidth: bottomRow.width - hideKeyboardKey.width + KeyboardRow { + TraceInputKey { + objectName: "hwrInputArea" + patternRecognitionMode: InputEngine.HandwritingRecoginition + horizontalRulers: + InputContext.inputEngine.inputMode !== InputEngine.Cyrillic ? [] : + [Math.round(boundingBox.height / 4), Math.round(boundingBox.height / 4) * 2, Math.round(boundingBox.height / 4) * 3] + } + } + } + KeyboardColumn { + Layout.preferredWidth: hideKeyboardKey.width + KeyboardRow { + BackspaceKey {} + } + KeyboardRow { + EnterKey {} + } + KeyboardRow { + ShiftKey { } + } + } + } + KeyboardRow { + id: bottomRow + Layout.preferredHeight: 1 + keyWeight: 154 + InputModeKey { + weight: 217 + } + ChangeLanguageKey { + weight: 154 + customLayoutsOnly: true + } + HandwritingModeKey { + weight: 154 + } + SpaceKey { + weight: 864 + } + Key { + key: Qt.Key_Apostrophe + text: "'" + alternativeKeys: "<>()#%&*/\\\"'=+-_" + } + Key { + key: Qt.Key_Period + text: "." + alternativeKeys: "!,.;:?" + } + HideKeyboardKey { + id: hideKeyboardKey + weight: 204 + } + } +} diff --git a/src/virtualkeyboard/content/layouts/bg_BG/main.qml b/src/virtualkeyboard/content/layouts/bg_BG/main.qml new file mode 100644 index 00000000..f9dad187 --- /dev/null +++ b/src/virtualkeyboard/content/layouts/bg_BG/main.qml @@ -0,0 +1,370 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Virtual Keyboard module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +import QtQuick 2.0 +import QtQuick.VirtualKeyboard 2.3 + +KeyboardLayoutLoader { + sharedLayouts: ['symbols'] + sourceComponent: InputContext.inputEngine.inputMode === InputEngine.Cyrillic ? cyrillicLayout : latinLayout + Component { + id: cyrillicLayout + KeyboardLayout { + keyWeight: 160 + KeyboardRow { + Key { + text: "я" + } + Key { + text: "в" + } + Key { + text: "е" + } + Key { + text: "р" + } + Key { + text: "т" + } + Key { + text: "ъ" + } + Key { + text: "у" + } + Key { + text: "и" + } + Key { + text: "о" + } + Key { + text: "п" + } + Key { + text: "ч" + } + BackspaceKey {} + } + KeyboardRow { + FillerKey { + weight: 56 + } + Key { + text: "а" + } + Key { + text: "с" + } + Key { + text: "д" + } + Key { + text: "ф" + } + Key { + text: "г" + } + Key { + text: "х" + } + Key { + text: "й" + } + Key { + text: "к" + } + Key { + text: "л" + } + Key { + text: "ш" + } + Key { + text: "щ" + } + EnterKey { + weight: 283 + } + } + KeyboardRow { + keyWeight: 156 + InputModeKey { + inputModes: [InputEngine.Cyrillic, InputEngine.Latin] + } + Key { + text: "з" + } + Key { + text: "ь" + } + Key { + text: "ц" + } + Key { + text: "ж" + } + Key { + text: "б" + } + Key { + text: "н" + } + Key { + text: "м" + } + Key { + text: "ю" + } + Key { + key: Qt.Key_Comma + text: "," + } + Key { + key: Qt.Key_Period + text: "." + alternativeKeys: "!.;?" + } + ShiftKey { + weight: 204 + } + } + KeyboardRow { + keyWeight: 154 + SymbolModeKey { + weight: 217 + } + ChangeLanguageKey { + weight: 154 + } + HandwritingModeKey { + weight: 154 + } + SpaceKey { + weight: 864 + } + Key { + key: Qt.Key_Apostrophe + text: "'" + } + Key { + key: 0xE000 + text: ":-)" + alternativeKeys: [ ";-)", ":-)", ":-D", ":-(", "<3" ] + } + HideKeyboardKey { + weight: 204 + } + } + } + } + Component { + id: latinLayout + KeyboardLayout { + keyWeight: 160 + KeyboardRow { + Key { + key: Qt.Key_Q + text: "q" + } + Key { + key: Qt.Key_W + text: "w" + } + Key { + key: Qt.Key_E + text: "e" + alternativeKeys: "êeëèé" + } + Key { + key: Qt.Key_R + text: "r" + alternativeKeys: "ŕrř" + } + Key { + key: Qt.Key_T + text: "t" + alternativeKeys: "ţtŧť" + } + Key { + key: Qt.Key_Y + text: "y" + alternativeKeys: "ÿyýŷ" + } + Key { + key: Qt.Key_U + text: "u" + alternativeKeys: "űūũûüuùú" + } + Key { + key: Qt.Key_I + text: "i" + alternativeKeys: "îïīĩiìí" + } + Key { + key: Qt.Key_O + text: "o" + alternativeKeys: "œøõôöòóo" + } + Key { + key: Qt.Key_P + text: "p" + } + BackspaceKey {} + } + KeyboardRow { + FillerKey { + weight: 56 + } + Key { + key: Qt.Key_A + text: "a" + alternativeKeys: (InputContext.inputMethodHints & (Qt.ImhEmailCharactersOnly | Qt.ImhUrlCharactersOnly)) ? "a@äåãâàá" : "aäåãâàá" + smallTextVisible: (InputContext.inputMethodHints & (Qt.ImhEmailCharactersOnly | Qt.ImhUrlCharactersOnly)) + } + Key { + key: Qt.Key_S + text: "s" + alternativeKeys: "šsşś" + } + Key { + key: Qt.Key_D + text: "d" + alternativeKeys: "dđď" + } + Key { + key: Qt.Key_F + text: "f" + } + Key { + key: Qt.Key_G + text: "g" + alternativeKeys: "ġgģĝğ" + } + Key { + key: Qt.Key_H + text: "h" + } + Key { + key: Qt.Key_J + text: "j" + } + Key { + key: Qt.Key_K + text: "k" + } + Key { + key: Qt.Key_L + text: "l" + alternativeKeys: "ĺŀłļľl" + } + EnterKey { + weight: 283 + } + } + KeyboardRow { + keyWeight: 156 + InputModeKey { + enabled: !(InputContext.inputMethodHints & Qt.ImhLatinOnly) && inputModeCount > 1 + inputModes: [InputEngine.Cyrillic, InputEngine.Latin] + } + Key { + key: Qt.Key_Z + text: "z" + alternativeKeys: "zžż" + } + Key { + key: Qt.Key_X + text: "x" + } + Key { + key: Qt.Key_C + text: "c" + alternativeKeys: "çcċčć" + } + Key { + key: Qt.Key_V + text: "v" + } + Key { + key: Qt.Key_B + text: "b" + } + Key { + key: Qt.Key_N + text: "n" + alternativeKeys: "ņńnň" + } + Key { + key: Qt.Key_M + text: "m" + } + Key { + key: Qt.Key_Comma + text: "," + } + Key { + key: Qt.Key_Period + text: "." + } + ShiftKey { + weight: 204 + } + } + KeyboardRow { + keyWeight: 154 + SymbolModeKey { + weight: 217 + } + ChangeLanguageKey { + weight: 154 + } + HandwritingModeKey { + weight: 154 + } + SpaceKey { + weight: 864 + } + Key { + key: Qt.Key_Apostrophe + text: "'" + } + Key { + key: 0xE000 + text: ":-)" + alternativeKeys: [ ";-)", ":-)", ":-D", ":-(", "<3" ] + } + HideKeyboardKey { + weight: 204 + } + } + } + } +} diff --git a/src/virtualkeyboard/content/layouts/bg_BG/symbols.qml b/src/virtualkeyboard/content/layouts/bg_BG/symbols.qml new file mode 100644 index 00000000..f6bcbdf6 --- /dev/null +++ b/src/virtualkeyboard/content/layouts/bg_BG/symbols.qml @@ -0,0 +1,376 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Virtual Keyboard module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +import QtQuick 2.0 +import QtQuick.Layouts 1.0 +import QtQuick.VirtualKeyboard 2.3 + +KeyboardLayoutLoader { + property bool secondPage + onVisibleChanged: if (!visible) secondPage = false + sourceComponent: secondPage ? page2 : page1 + Component { + id: page1 + KeyboardLayout { + keyWeight: 160 + KeyboardRow { + Key { + key: Qt.Key_1 + text: "1" + } + Key { + key: Qt.Key_2 + text: "2" + } + Key { + key: Qt.Key_3 + text: "3" + } + Key { + key: Qt.Key_4 + text: "4" + } + Key { + key: Qt.Key_5 + text: "5" + } + Key { + key: Qt.Key_6 + text: "6" + } + Key { + key: Qt.Key_7 + text: "7" + } + Key { + key: Qt.Key_8 + text: "8" + } + Key { + key: Qt.Key_9 + text: "9" + } + Key { + key: Qt.Key_0 + text: "0" + } + BackspaceKey {} + } + KeyboardRow { + FillerKey { + weight: 56 + } + Key { + key: Qt.Key_At + text: "@" + } + Key { + key: Qt.Key_NumberSign + text: "#" + } + Key { + key: Qt.Key_Percent + text: "%" + } + Key { + key: Qt.Key_Ampersand + text: "&" + } + Key { + key: Qt.Key_Asterisk + text: "*" + } + Key { + key: Qt.Key_Minus + text: "-" + } + Key { + key: Qt.Key_Plus + text: "+" + } + Key { + key: Qt.Key_ParenLeft + text: "(" + } + Key { + key: Qt.Key_ParenRight + text: ")" + } + EnterKey { + weight: 283 + } + } + KeyboardRow { + keyWeight: 156 + Key { + displayText: "1/2" + functionKey: true + onClicked: secondPage = !secondPage + } + Key { + key: Qt.Key_Exclam + text: "!" + } + Key { + key: Qt.Key_QuoteDbl + text: '"' + } + Key { + key: Qt.Key_Less + text: "<" + } + Key { + key: Qt.Key_Greater + text: ">" + } + Key { + key: Qt.Key_Apostrophe + text: "'" + } + Key { + key: Qt.Key_Colon + text: ":" + } + Key { + key: Qt.Key_Semicolon + text: ";" + } + Key { + key: Qt.Key_Slash + text: "/" + } + Key { + key: Qt.Key_Question + text: "?" + } + Key { + weight: 204 + displayText: "1/2" + functionKey: true + onClicked: secondPage = !secondPage + } + } + KeyboardRow { + keyWeight: 154 + SymbolModeKey { + weight: 217 + displayText: InputContext.inputEngine.inputMode === InputEngine.Cyrillic ? "АВЗ" : "ABC" + } + ChangeLanguageKey { + weight: 154 + } + SpaceKey { + weight: 864 + } + Key { + key: Qt.Key_Period + text: "." + alternativeKeys: ".," + } + Key { + key: 0xE000 + text: ":-)" + alternativeKeys: [ ";-)", ":-)", ":-D", ":-(", "<3" ] + } + HideKeyboardKey { + weight: 204 + } + } + } + } + Component { + id: page2 + KeyboardLayout { + keyWeight: 160 + KeyboardRow { + Key { + key: Qt.Key_AsciiTilde + text: "~" + } + Key { + key: Qt.Key_Agrave + text: "`" + } + Key { + key: Qt.Key_Bar + text: "|" + } + Key { + key: 0x7B + text: "·" + } + Key { + key: 0x221A + text: "√" + } + Key { + key: Qt.Key_division + text: "÷" + } + Key { + key: Qt.Key_multiply + text: "×" + } + Key { + key: Qt.Key_onehalf + text: "½" + alternativeKeys: "¼⅓½¾⅞" + } + Key { + key: Qt.Key_BraceLeft + text: "{" + } + Key { + key: Qt.Key_BraceRight + text: "}" + } + BackspaceKey {} + } + KeyboardRow { + FillerKey { + weight: 56 + } + Key { + key: Qt.Key_Dollar + text: "$" + } + Key { + key: 0x20AC + text: "€" + } + Key { + key: 0xC2 + text: "£" + } + Key { + key: 0xA2 + text: "¢" + } + Key { + key: 0xA5 + text: "¥" + } + Key { + key: Qt.Key_Equal + text: "=" + } + Key { + key: Qt.Key_section + text: "§" + } + Key { + key: Qt.Key_BracketLeft + text: "[" + } + Key { + key: Qt.Key_BracketRight + text: "]" + } + EnterKey { + weight: 283 + } + } + KeyboardRow { + keyWeight: 156 + Key { + displayText: "2/2" + functionKey: true + onClicked: secondPage = !secondPage + } + Key { + key: Qt.Key_Underscore + text: "_" + } + Key { + key: 0x2122 + text: '™' + } + Key { + key: 0x00AE + text: '®' + } + Key { + key: Qt.Key_guillemotleft + text: '«' + } + Key { + key: Qt.Key_guillemotright + text: '»' + } + Key { + key: 0x201C + text: '“' + } + Key { + key: 0x201D + text: '”' + } + Key { + key: Qt.Key_Backslash + text: "\\" + } + Key { + key: Qt.Key_AsciiCircum + text: "^" + } + Key { + weight: 204 + displayText: "2/2" + functionKey: true + onClicked: secondPage = !secondPage + } + } + KeyboardRow { + keyWeight: 154 + SymbolModeKey { + weight: 217 + displayText: InputContext.inputEngine.inputMode === InputEngine.Cyrillic ? "АВЗ" : "ABC" + } + ChangeLanguageKey { + weight: 154 + } + SpaceKey { + weight: 864 + } + Key { + key: 0x2026 + text: "\u2026" + } + Key { + key: 0xE000 + text: ":-)" + alternativeKeys: [ ";-)", ":-)", ":-D", ":-(", "<3" ] + } + HideKeyboardKey { + weight: 204 + } + } + } + } +} diff --git a/src/virtualkeyboard/content/styles/default/style.qml b/src/virtualkeyboard/content/styles/default/style.qml index 3056f541..e308959c 100644 --- a/src/virtualkeyboard/content/styles/default/style.qml +++ b/src/virtualkeyboard/content/styles/default/style.qml @@ -764,6 +764,8 @@ KeyboardStyle { return "123" case InputEngine.Greek: return "ΑΒΓ" + case InputEngine.Cyrillic: + return "АВЗ" case InputEngine.ChineseHandwriting: return "中文" case InputEngine.JapaneseHandwriting: diff --git a/src/virtualkeyboard/content/styles/retro/style.qml b/src/virtualkeyboard/content/styles/retro/style.qml index 49f99f32..b003badc 100644 --- a/src/virtualkeyboard/content/styles/retro/style.qml +++ b/src/virtualkeyboard/content/styles/retro/style.qml @@ -878,6 +878,8 @@ KeyboardStyle { return "123" case InputEngine.Greek: return "ΑΒΓ" + case InputEngine.Cyrillic: + return "АВЗ" case InputEngine.ChineseHandwriting: return "中文" case InputEngine.JapaneseHandwriting: diff --git a/src/virtualkeyboard/doc/src/qtvirtualkeyboard-index.qdoc b/src/virtualkeyboard/doc/src/qtvirtualkeyboard-index.qdoc index 234cdee2..bd18594c 100644 --- a/src/virtualkeyboard/doc/src/qtvirtualkeyboard-index.qdoc +++ b/src/virtualkeyboard/doc/src/qtvirtualkeyboard-index.qdoc @@ -66,6 +66,7 @@ \list \li Arabic + \li Bulgarian \li Danish \li Dutch \li English diff --git a/src/virtualkeyboard/hunspellinputmethod.cpp b/src/virtualkeyboard/hunspellinputmethod.cpp index 61d6dad5..20c345bb 100644 --- a/src/virtualkeyboard/hunspellinputmethod.cpp +++ b/src/virtualkeyboard/hunspellinputmethod.cpp @@ -58,6 +58,9 @@ QList<InputEngine::InputMode> HunspellInputMethod::inputModes(const QString &loc case QLocale::GreekScript: result.append(InputEngine::Greek); break; + case QLocale::CyrillicScript: + result.append(InputEngine::Cyrillic); + break; default: break; } diff --git a/src/virtualkeyboard/inputengine.cpp b/src/virtualkeyboard/inputengine.cpp index f838b362..070834a4 100644 --- a/src/virtualkeyboard/inputengine.cpp +++ b/src/virtualkeyboard/inputengine.cpp @@ -765,6 +765,7 @@ void InputEngine::timerEvent(QTimerEvent *timerEvent) \li \c InputEngine.Katakana Katakana input mode for Japanese. \li \c InputEngine.FullwidthLatin Fullwidth latin input mode for East Asian languages. \li \c InputEngine.Greek Greek input mode. + \li \c InputEngine.Cyrillic Cyrillic input mode. \li \c InputEngine.ChineseHandwriting Chinese handwriting. \li \c InputEngine.JapaneseHandwriting Japanese handwriting. \li \c InputEngine.KoreanHandwriting Korean handwriting. @@ -837,6 +838,8 @@ void InputEngine::timerEvent(QTimerEvent *timerEvent) Fullwidth latin input mode for East Asian languages. \value Greek Greek input mode. + \value Cyrillic + Cyrillic input mode. */ /*! diff --git a/src/virtualkeyboard/inputengine.h b/src/virtualkeyboard/inputengine.h index 54723522..53251688 100644 --- a/src/virtualkeyboard/inputengine.h +++ b/src/virtualkeyboard/inputengine.h @@ -75,6 +75,7 @@ public: Katakana, FullwidthLatin, Greek, + Cyrillic, ChineseHandwriting, JapaneseHandwriting, KoreanHandwriting diff --git a/src/virtualkeyboard/plaininputmethod.cpp b/src/virtualkeyboard/plaininputmethod.cpp index 3495ff38..8d77ac4e 100644 --- a/src/virtualkeyboard/plaininputmethod.cpp +++ b/src/virtualkeyboard/plaininputmethod.cpp @@ -54,6 +54,9 @@ QList<InputEngine::InputMode> PlainInputMethod::inputModes(const QString &locale case QLocale::GreekScript: result.append(InputEngine::Greek); break; + case QLocale::CyrillicScript: + result.append(InputEngine::Cyrillic); + break; default: break; } diff --git a/src/virtualkeyboard/t9writeinputmethod.cpp b/src/virtualkeyboard/t9writeinputmethod.cpp index 41b2592a..1eb11cc7 100644 --- a/src/virtualkeyboard/t9writeinputmethod.cpp +++ b/src/virtualkeyboard/t9writeinputmethod.cpp @@ -708,6 +708,15 @@ public: symbolCategories.append(DECUMA_CATEGORY_CONTRACTION_MARK); break; + case InputEngine::Cyrillic: + symbolCategories.append(DECUMA_CATEGORY_CYRILLIC); + symbolCategories.append(DECUMA_CATEGORY_QUEST_EXCL_MARK_PUNCTUATIONS); + symbolCategories.append(DECUMA_CATEGORY_PERIOD_COMMA_PUNCTUATIONS); + // Ukrainian needs contraction mark, but not Russian or Bulgarian + if (language == DECUMA_LANG_UK) + symbolCategories.append(DECUMA_CATEGORY_CONTRACTION_MARK); + break; + default: qWarning() << "Handwriting is not supported in" << locale.name(); return false; @@ -1536,6 +1545,9 @@ QList<InputEngine::InputMode> T9WriteInputMethod::inputModes(const QString &loca case QLocale::GreekScript: availableInputModes.append(InputEngine::Greek); break; + case QLocale::CyrillicScript: + availableInputModes.append(InputEngine::Cyrillic); + break; default: break; } diff --git a/src/virtualkeyboard/virtualkeyboard.pro b/src/virtualkeyboard/virtualkeyboard.pro index 4dab3247..d550b3c8 100644 --- a/src/virtualkeyboard/virtualkeyboard.pro +++ b/src/virtualkeyboard/virtualkeyboard.pro @@ -85,6 +85,13 @@ contains(CONFIG, lang-ar.*) { content/layouts/ar_AR/numbers.qml \ content/layouts/ar_AR/symbols.qml } +contains(CONFIG, lang-bg.*) { + LAYOUT_FILES += \ + content/layouts/bg_BG/main.qml \ + content/layouts/bg_BG/symbols.qml +t9write-alphabetic: LAYOUT_FILES += \ + content/layouts/bg_BG/handwriting.qml +} contains(CONFIG, lang-da.*) { LAYOUT_FILES += \ content/layouts/da_DK/main.qml \ diff --git a/tests/auto/inputpanel/data/inputpanel/handwriting.js b/tests/auto/inputpanel/data/inputpanel/handwriting.js index dadd1cb6..21b737da 100644 --- a/tests/auto/inputpanel/data/inputpanel/handwriting.js +++ b/tests/auto/inputpanel/data/inputpanel/handwriting.js @@ -35,6 +35,7 @@ .import "unipen_data_japanese.js" as UnipenDataJapanese .import "unipen_data_korean.js" as UnipenDataKorean .import "unipen_data_greek.js" as UnipenDataGreek +.import "unipen_data_cyrillic.js" as UnipenDataCyrillic function emulate(testcase, hwrInputArea, ch, instant) { var chKey = (((typeof ch == "number") ? ch : ch.charCodeAt(0)) + 0x100000000).toString(16).substr(1) @@ -54,6 +55,8 @@ function emulate(testcase, hwrInputArea, ch, instant) { unipenData = UnipenDataKorean else if (UnipenDataGreek.unipenData.hasOwnProperty(chKey)) unipenData = UnipenDataGreek + else if (UnipenDataCyrillic.unipenData.hasOwnProperty(chKey)) + unipenData = UnipenDataCyrillic else return false var chData = unipenData.unipenData[chKey] diff --git a/tests/auto/inputpanel/data/inputpanel/inputpanel.qml b/tests/auto/inputpanel/data/inputpanel/inputpanel.qml index 59e56530..43dabd68 100644 --- a/tests/auto/inputpanel/data/inputpanel/inputpanel.qml +++ b/tests/auto/inputpanel/data/inputpanel/inputpanel.qml @@ -265,6 +265,8 @@ InputPanel { return InputEngine.FullwidthLatin else if (inputModeName === "Greek") return InputEngine.Greek + else if (inputModeName === "Cyrillic") + return InputEngine.Cyrillic else if (inputModeName === "ChineseHandwriting") return InputEngine.ChineseHandwriting else if (inputModeName === "JapaneseHandwriting") diff --git a/tests/auto/inputpanel/data/inputpanel/unipen_data_cyrillic.js b/tests/auto/inputpanel/data/inputpanel/unipen_data_cyrillic.js new file mode 100644 index 00000000..3f336427 --- /dev/null +++ b/tests/auto/inputpanel/data/inputpanel/unipen_data_cyrillic.js @@ -0,0 +1,3440 @@ +/**************************************************************************** +** +** Copyright (C) 2017 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt Virtual Keyboard module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:GPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 or (at your option) any later version +** approved by the KDE Free Qt Foundation. The licenses are as published by +** the Free Software Foundation and appearing in the file LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +var unipenData = { + "0x0430": { + ".COORD": [ + "X", + "Y", + "T" + ], + ".HIERARCHY": "CHARACTER", + ".PEN": [ + [ + [ + 531, + 128, + 0 + ], + [ + 532, + 128, + 56 + ], + [ + 534, + 127, + 72 + ], + [ + 536, + 127, + 100 + ], + [ + 538, + 124, + 100 + ], + [ + 539, + 124, + 103 + ], + [ + 541, + 123, + 133 + ], + [ + 544, + 122, + 133 + ], + [ + 546, + 122, + 136 + ], + [ + 548, + 122, + 165 + ], + [ + 554, + 122, + 166 + ], + [ + 557, + 121, + 168 + ], + [ + 561, + 121, + 199 + ], + [ + 570, + 125, + 200 + ], + [ + 575, + 130, + 232 + ], + [ + 579, + 135, + 233 + ], + [ + 583, + 141, + 266 + ], + [ + 586, + 148, + 266 + ], + [ + 586, + 154, + 298 + ], + [ + 586, + 160, + 299 + ], + [ + 586, + 163, + 303 + ], + [ + 586, + 166, + 332 + ], + [ + 587, + 171, + 333 + ], + [ + 587, + 174, + 336 + ], + [ + 587, + 176, + 366 + ], + [ + 587, + 180, + 367 + ], + [ + 587, + 181, + 368 + ], + [ + 587, + 182, + 399 + ], + [ + 587, + 183, + 399 + ], + [ + 588, + 185, + 400 + ], + [ + 589, + 188, + 432 + ], + [ + 589, + 190, + 465 + ], + [ + 589, + 189, + 511 + ], + [ + 589, + 187, + 548 + ] + ], + [ + [ + 572, + 155, + 892 + ], + [ + 567, + 153, + 935 + ], + [ + 565, + 152, + 935 + ], + [ + 562, + 150, + 964 + ], + [ + 559, + 150, + 965 + ], + [ + 556, + 150, + 967 + ], + [ + 553, + 150, + 997 + ], + [ + 548, + 150, + 998 + ], + [ + 546, + 150, + 1000 + ], + [ + 544, + 150, + 1030 + ], + [ + 541, + 150, + 1031 + ], + [ + 540, + 152, + 1031 + ], + [ + 537, + 153, + 1064 + ], + [ + 535, + 155, + 1064 + ], + [ + 531, + 158, + 1065 + ], + [ + 527, + 163, + 1097 + ], + [ + 526, + 166, + 1098 + ], + [ + 524, + 168, + 1130 + ], + [ + 524, + 172, + 1131 + ], + [ + 524, + 173, + 1136 + ], + [ + 524, + 175, + 1163 + ], + [ + 526, + 178, + 1164 + ], + [ + 526, + 180, + 1167 + ], + [ + 527, + 180, + 1196 + ], + [ + 530, + 183, + 1197 + ], + [ + 532, + 184, + 1199 + ], + [ + 534, + 185, + 1229 + ], + [ + 539, + 187, + 1230 + ], + [ + 541, + 187, + 1231 + ], + [ + 544, + 187, + 1263 + ], + [ + 546, + 187, + 1264 + ], + [ + 551, + 187, + 1264 + ], + [ + 555, + 187, + 1297 + ], + [ + 562, + 186, + 1297 + ], + [ + 567, + 184, + 1330 + ], + [ + 575, + 180, + 1330 + ], + [ + 578, + 178, + 1347 + ], + [ + 579, + 176, + 1363 + ], + [ + 580, + 175, + 1363 + ], + [ + 580, + 174, + 1380 + ], + [ + 581, + 173, + 1396 + ], + [ + 582, + 173, + 1440 + ], + [ + 583, + 173, + 1465 + ], + [ + 582, + 173, + 1640 + ] + ] + ], + ".POINTS_PER_SECOND": 60, + ".SEGMENT": "CHARACTER", + ".VERSION": "1.0", + ".X_DIM": 1032, + ".X_POINTS_PER_INCH": 95, + ".Y_DIM": 263, + ".Y_POINTS_PER_INCH": 95 + }, + "0x0431": { + ".COORD": [ + "X", + "Y", + "T" + ], + ".HIERARCHY": "CHARACTER", + ".PEN": [ + [ + [ + 214, + 62, + 0 + ], + [ + 210, + 62, + 38 + ], + [ + 207, + 62, + 39 + ], + [ + 203, + 62, + 72 + ], + [ + 197, + 62, + 73 + ], + [ + 194, + 62, + 76 + ], + [ + 192, + 62, + 106 + ], + [ + 186, + 63, + 109 + ], + [ + 184, + 65, + 110 + ], + [ + 175, + 67, + 155 + ], + [ + 169, + 69, + 156 + ], + [ + 166, + 70, + 156 + ], + [ + 163, + 70, + 188 + ], + [ + 154, + 74, + 189 + ], + [ + 148, + 77, + 221 + ], + [ + 144, + 82, + 222 + ], + [ + 140, + 87, + 255 + ], + [ + 138, + 93, + 256 + ], + [ + 136, + 98, + 288 + ], + [ + 134, + 103, + 289 + ], + [ + 134, + 107, + 293 + ], + [ + 134, + 109, + 326 + ], + [ + 134, + 120, + 327 + ], + [ + 134, + 125, + 355 + ], + [ + 134, + 128, + 355 + ], + [ + 133, + 132, + 356 + ], + [ + 133, + 134, + 387 + ], + [ + 133, + 143, + 389 + ], + [ + 133, + 148, + 421 + ], + [ + 133, + 153, + 422 + ], + [ + 134, + 158, + 454 + ], + [ + 135, + 164, + 454 + ], + [ + 136, + 167, + 488 + ], + [ + 138, + 173, + 489 + ], + [ + 139, + 175, + 493 + ], + [ + 141, + 177, + 521 + ], + [ + 142, + 183, + 522 + ], + [ + 144, + 185, + 524 + ], + [ + 146, + 189, + 554 + ], + [ + 150, + 193, + 555 + ], + [ + 153, + 193, + 557 + ], + [ + 157, + 194, + 590 + ], + [ + 168, + 194, + 592 + ], + [ + 177, + 194, + 620 + ], + [ + 186, + 194, + 622 + ], + [ + 195, + 193, + 654 + ], + [ + 205, + 191, + 655 + ], + [ + 211, + 190, + 687 + ], + [ + 221, + 184, + 688 + ], + [ + 223, + 183, + 693 + ], + [ + 234, + 169, + 737 + ], + [ + 243, + 163, + 738 + ], + [ + 243, + 161, + 741 + ], + [ + 244, + 159, + 770 + ], + [ + 244, + 154, + 771 + ], + [ + 244, + 152, + 773 + ], + [ + 243, + 144, + 812 + ], + [ + 237, + 137, + 813 + ], + [ + 233, + 131, + 836 + ], + [ + 232, + 128, + 837 + ], + [ + 225, + 127, + 870 + ], + [ + 221, + 127, + 871 + ], + [ + 215, + 127, + 903 + ], + [ + 208, + 127, + 904 + ], + [ + 203, + 127, + 908 + ], + [ + 198, + 127, + 936 + ], + [ + 188, + 126, + 936 + ], + [ + 184, + 126, + 941 + ], + [ + 179, + 126, + 969 + ], + [ + 171, + 126, + 970 + ], + [ + 167, + 126, + 973 + ], + [ + 162, + 126, + 1003 + ], + [ + 156, + 126, + 1004 + ], + [ + 154, + 126, + 1004 + ], + [ + 151, + 126, + 1036 + ], + [ + 146, + 126, + 1036 + ], + [ + 142, + 128, + 1069 + ], + [ + 140, + 129, + 1070 + ], + [ + 137, + 131, + 1107 + ], + [ + 133, + 131, + 1108 + ], + [ + 132, + 132, + 1110 + ], + [ + 131, + 132, + 1136 + ], + [ + 128, + 132, + 1137 + ], + [ + 127, + 132, + 1141 + ], + [ + 127, + 133, + 1169 + ], + [ + 125, + 134, + 1170 + ], + [ + 125, + 135, + 1202 + ] + ] + ], + ".POINTS_PER_SECOND": 60, + ".SEGMENT": "CHARACTER", + ".VERSION": "1.0", + ".X_DIM": 1032, + ".X_POINTS_PER_INCH": 95, + ".Y_DIM": 263, + ".Y_POINTS_PER_INCH": 95 + }, + "0x0433": { + ".COORD": [ + "X", + "Y", + "T" + ], + ".HIERARCHY": "CHARACTER", + ".PEN": [ + [ + [ + 466, + 177, + 0 + ], + [ + 466, + 176, + 60 + ], + [ + 466, + 175, + 75 + ], + [ + 466, + 173, + 105 + ], + [ + 465, + 173, + 108 + ], + [ + 465, + 172, + 134 + ], + [ + 465, + 169, + 134 + ], + [ + 464, + 167, + 167 + ], + [ + 464, + 165, + 168 + ], + [ + 463, + 161, + 200 + ], + [ + 462, + 156, + 201 + ], + [ + 462, + 154, + 203 + ], + [ + 460, + 151, + 250 + ], + [ + 460, + 148, + 251 + ], + [ + 459, + 148, + 252 + ], + [ + 459, + 147, + 283 + ], + [ + 458, + 143, + 284 + ], + [ + 458, + 140, + 316 + ], + [ + 458, + 138, + 317 + ], + [ + 458, + 136, + 350 + ], + [ + 458, + 134, + 350 + ], + [ + 458, + 133, + 383 + ], + [ + 458, + 131, + 384 + ], + [ + 458, + 129, + 417 + ], + [ + 457, + 128, + 466 + ], + [ + 457, + 127, + 466 + ], + [ + 457, + 126, + 499 + ], + [ + 457, + 125, + 533 + ], + [ + 457, + 124, + 644 + ], + [ + 459, + 124, + 749 + ], + [ + 466, + 124, + 786 + ], + [ + 469, + 124, + 787 + ], + [ + 472, + 124, + 788 + ], + [ + 481, + 124, + 815 + ], + [ + 485, + 124, + 816 + ], + [ + 488, + 125, + 820 + ], + [ + 492, + 125, + 848 + ], + [ + 499, + 125, + 849 + ], + [ + 504, + 125, + 851 + ], + [ + 508, + 125, + 881 + ], + [ + 518, + 125, + 882 + ], + [ + 523, + 125, + 883 + ], + [ + 525, + 125, + 915 + ], + [ + 532, + 125, + 916 + ], + [ + 535, + 125, + 916 + ], + [ + 540, + 125, + 948 + ], + [ + 544, + 125, + 948 + ], + [ + 547, + 125, + 997 + ], + [ + 548, + 125, + 998 + ] + ] + ], + ".POINTS_PER_SECOND": 60, + ".SEGMENT": "CHARACTER", + ".VERSION": "1.0", + ".X_DIM": 1032, + ".X_POINTS_PER_INCH": 95, + ".Y_DIM": 263, + ".Y_POINTS_PER_INCH": 95 + }, + "0x0438": { + ".COORD": [ + "X", + "Y", + "T" + ], + ".HIERARCHY": "CHARACTER", + ".PEN": [ + [ + [ + 751, + 123, + 0 + ], + [ + 751, + 124, + 48 + ], + [ + 751, + 126, + 65 + ], + [ + 751, + 127, + 68 + ], + [ + 751, + 128, + 98 + ], + [ + 751, + 131, + 99 + ], + [ + 751, + 133, + 100 + ], + [ + 751, + 136, + 131 + ], + [ + 751, + 140, + 132 + ], + [ + 751, + 146, + 133 + ], + [ + 751, + 152, + 164 + ], + [ + 753, + 158, + 165 + ], + [ + 756, + 165, + 197 + ], + [ + 759, + 169, + 198 + ], + [ + 759, + 171, + 232 + ], + [ + 761, + 172, + 232 + ], + [ + 761, + 173, + 236 + ], + [ + 763, + 174, + 264 + ], + [ + 764, + 176, + 265 + ], + [ + 764, + 177, + 268 + ], + [ + 767, + 178, + 298 + ], + [ + 768, + 178, + 331 + ], + [ + 772, + 178, + 332 + ], + [ + 773, + 178, + 332 + ], + [ + 776, + 178, + 364 + ], + [ + 779, + 178, + 366 + ], + [ + 781, + 176, + 397 + ], + [ + 785, + 172, + 398 + ], + [ + 788, + 166, + 430 + ], + [ + 790, + 162, + 431 + ], + [ + 792, + 159, + 437 + ], + [ + 794, + 154, + 464 + ], + [ + 797, + 148, + 465 + ], + [ + 799, + 146, + 468 + ], + [ + 801, + 144, + 501 + ], + [ + 802, + 138, + 503 + ], + [ + 802, + 134, + 530 + ], + [ + 802, + 132, + 531 + ], + [ + 802, + 129, + 532 + ], + [ + 804, + 128, + 564 + ], + [ + 807, + 123, + 564 + ], + [ + 807, + 120, + 597 + ], + [ + 807, + 118, + 598 + ], + [ + 807, + 117, + 630 + ], + [ + 807, + 116, + 663 + ], + [ + 807, + 117, + 741 + ], + [ + 808, + 120, + 783 + ], + [ + 808, + 123, + 783 + ], + [ + 810, + 129, + 813 + ], + [ + 810, + 131, + 814 + ], + [ + 810, + 136, + 847 + ], + [ + 810, + 139, + 847 + ], + [ + 810, + 141, + 852 + ], + [ + 810, + 144, + 879 + ], + [ + 810, + 149, + 880 + ], + [ + 810, + 153, + 884 + ], + [ + 810, + 155, + 912 + ], + [ + 810, + 162, + 914 + ], + [ + 810, + 164, + 916 + ], + [ + 810, + 167, + 946 + ], + [ + 811, + 171, + 947 + ], + [ + 811, + 173, + 948 + ], + [ + 811, + 174, + 979 + ], + [ + 813, + 179, + 980 + ], + [ + 814, + 181, + 1012 + ], + [ + 814, + 183, + 1013 + ], + [ + 814, + 184, + 1046 + ], + [ + 814, + 186, + 1047 + ], + [ + 815, + 187, + 1079 + ] + ] + ], + ".POINTS_PER_SECOND": 60, + ".SEGMENT": "CHARACTER", + ".VERSION": "1.0", + ".X_DIM": 1032, + ".X_POINTS_PER_INCH": 95, + ".Y_DIM": 263, + ".Y_POINTS_PER_INCH": 95 + }, + "0x043a": { + ".COORD": [ + "X", + "Y", + "T" + ], + ".HIERARCHY": "CHARACTER", + ".PEN": [ + [ + [ + 649, + 124, + 0 + ], + [ + 649, + 125, + 189 + ], + [ + 649, + 126, + 214 + ], + [ + 649, + 127, + 255 + ], + [ + 649, + 128, + 256 + ], + [ + 649, + 130, + 256 + ], + [ + 649, + 131, + 260 + ], + [ + 649, + 133, + 289 + ], + [ + 649, + 136, + 293 + ], + [ + 649, + 138, + 322 + ], + [ + 649, + 142, + 323 + ], + [ + 649, + 143, + 324 + ], + [ + 649, + 145, + 355 + ], + [ + 649, + 149, + 356 + ], + [ + 649, + 151, + 356 + ], + [ + 649, + 156, + 388 + ], + [ + 649, + 162, + 389 + ], + [ + 650, + 164, + 421 + ], + [ + 651, + 167, + 423 + ], + [ + 651, + 170, + 454 + ], + [ + 651, + 172, + 455 + ], + [ + 651, + 174, + 461 + ], + [ + 651, + 175, + 488 + ], + [ + 651, + 177, + 489 + ], + [ + 651, + 179, + 492 + ], + [ + 651, + 180, + 521 + ], + [ + 651, + 182, + 522 + ], + [ + 651, + 183, + 554 + ], + [ + 651, + 184, + 588 + ], + [ + 651, + 183, + 853 + ], + [ + 651, + 182, + 887 + ] + ], + [ + [ + 690, + 123, + 1328 + ], + [ + 689, + 123, + 1369 + ], + [ + 689, + 124, + 1373 + ], + [ + 687, + 126, + 1402 + ], + [ + 686, + 126, + 1435 + ], + [ + 682, + 129, + 1436 + ], + [ + 681, + 132, + 1469 + ], + [ + 678, + 132, + 1470 + ], + [ + 673, + 136, + 1518 + ], + [ + 669, + 140, + 1519 + ], + [ + 667, + 140, + 1524 + ], + [ + 666, + 141, + 1552 + ], + [ + 664, + 142, + 1553 + ], + [ + 663, + 143, + 1556 + ], + [ + 661, + 143, + 1585 + ], + [ + 659, + 145, + 1586 + ], + [ + 657, + 147, + 1589 + ], + [ + 655, + 147, + 1618 + ], + [ + 654, + 148, + 1651 + ], + [ + 653, + 149, + 1685 + ], + [ + 653, + 150, + 1718 + ], + [ + 652, + 150, + 1724 + ] + ], + [ + [ + 653, + 151, + 2376 + ], + [ + 654, + 151, + 2419 + ], + [ + 655, + 151, + 2419 + ], + [ + 656, + 151, + 2450 + ], + [ + 657, + 151, + 2452 + ], + [ + 658, + 151, + 2483 + ], + [ + 660, + 151, + 2516 + ], + [ + 663, + 151, + 2517 + ], + [ + 664, + 152, + 2549 + ], + [ + 666, + 153, + 2550 + ], + [ + 669, + 153, + 2583 + ], + [ + 671, + 155, + 2584 + ], + [ + 673, + 156, + 2588 + ], + [ + 674, + 156, + 2616 + ], + [ + 677, + 157, + 2617 + ], + [ + 678, + 158, + 2650 + ], + [ + 680, + 159, + 2650 + ], + [ + 680, + 161, + 2653 + ], + [ + 681, + 161, + 2683 + ], + [ + 683, + 163, + 2683 + ], + [ + 684, + 164, + 2684 + ], + [ + 685, + 165, + 2716 + ], + [ + 687, + 167, + 2717 + ], + [ + 688, + 167, + 2749 + ], + [ + 689, + 168, + 2783 + ], + [ + 689, + 169, + 2784 + ], + [ + 691, + 170, + 2788 + ], + [ + 692, + 171, + 2815 + ], + [ + 692, + 172, + 2820 + ], + [ + 692, + 173, + 2849 + ], + [ + 692, + 174, + 2882 + ] + ] + ], + ".POINTS_PER_SECOND": 60, + ".SEGMENT": "CHARACTER", + ".VERSION": "1.0", + ".X_DIM": 1032, + ".X_POINTS_PER_INCH": 95, + ".Y_DIM": 263, + ".Y_POINTS_PER_INCH": 95 + }, + "0x043b": { + ".COORD": [ + "X", + "Y", + "T" + ], + ".HIERARCHY": "CHARACTER", + ".PEN": [ + [ + [ + 313, + 163, + 0 + ], + [ + 313, + 164, + 52 + ], + [ + 313, + 165, + 68 + ], + [ + 313, + 168, + 102 + ], + [ + 314, + 172, + 103 + ], + [ + 315, + 174, + 134 + ], + [ + 316, + 175, + 135 + ], + [ + 320, + 177, + 168 + ], + [ + 323, + 178, + 169 + ], + [ + 324, + 178, + 173 + ], + [ + 327, + 178, + 201 + ], + [ + 332, + 178, + 202 + ], + [ + 335, + 178, + 205 + ], + [ + 340, + 178, + 243 + ], + [ + 344, + 178, + 244 + ], + [ + 346, + 176, + 245 + ], + [ + 349, + 174, + 284 + ], + [ + 352, + 169, + 285 + ], + [ + 354, + 166, + 318 + ], + [ + 357, + 163, + 318 + ], + [ + 360, + 158, + 350 + ], + [ + 362, + 154, + 351 + ], + [ + 364, + 151, + 357 + ], + [ + 365, + 150, + 384 + ], + [ + 369, + 144, + 385 + ], + [ + 371, + 140, + 388 + ], + [ + 372, + 139, + 417 + ], + [ + 375, + 133, + 417 + ], + [ + 376, + 132, + 421 + ], + [ + 380, + 131, + 451 + ], + [ + 381, + 130, + 452 + ], + [ + 382, + 129, + 484 + ], + [ + 385, + 129, + 484 + ], + [ + 387, + 129, + 517 + ], + [ + 389, + 129, + 518 + ], + [ + 391, + 129, + 550 + ], + [ + 394, + 129, + 552 + ], + [ + 395, + 129, + 557 + ], + [ + 398, + 131, + 584 + ], + [ + 400, + 131, + 588 + ], + [ + 402, + 132, + 617 + ], + [ + 403, + 133, + 618 + ], + [ + 404, + 134, + 620 + ], + [ + 405, + 134, + 650 + ], + [ + 407, + 135, + 651 + ], + [ + 408, + 135, + 652 + ], + [ + 410, + 137, + 683 + ], + [ + 410, + 138, + 684 + ], + [ + 410, + 139, + 684 + ], + [ + 412, + 141, + 717 + ], + [ + 413, + 143, + 717 + ], + [ + 414, + 145, + 751 + ], + [ + 415, + 147, + 751 + ], + [ + 415, + 148, + 784 + ], + [ + 416, + 149, + 816 + ], + [ + 416, + 150, + 820 + ], + [ + 416, + 151, + 849 + ], + [ + 416, + 152, + 852 + ] + ] + ], + ".POINTS_PER_SECOND": 60, + ".SEGMENT": "CHARACTER", + ".VERSION": "1.0", + ".X_DIM": 1032, + ".X_POINTS_PER_INCH": 95, + ".Y_DIM": 263, + ".Y_POINTS_PER_INCH": 95 + }, + "0x0440": { + ".COORD": [ + "X", + "Y", + "T" + ], + ".HIERARCHY": "CHARACTER", + ".PEN": [ + [ + [ + 639, + 127, + 0 + ], + [ + 639, + 128, + 48 + ], + [ + 640, + 130, + 65 + ], + [ + 640, + 132, + 68 + ], + [ + 640, + 133, + 98 + ], + [ + 640, + 138, + 99 + ], + [ + 640, + 140, + 101 + ], + [ + 640, + 150, + 148 + ], + [ + 641, + 159, + 149 + ], + [ + 644, + 167, + 181 + ], + [ + 646, + 176, + 182 + ], + [ + 646, + 185, + 215 + ], + [ + 646, + 193, + 216 + ], + [ + 646, + 200, + 247 + ], + [ + 646, + 209, + 248 + ], + [ + 646, + 211, + 253 + ], + [ + 647, + 215, + 281 + ], + [ + 647, + 218, + 282 + ], + [ + 647, + 220, + 285 + ], + [ + 647, + 221, + 314 + ], + [ + 648, + 225, + 315 + ], + [ + 648, + 227, + 317 + ], + [ + 648, + 228, + 349 + ], + [ + 648, + 233, + 350 + ], + [ + 648, + 237, + 399 + ], + [ + 648, + 240, + 400 + ], + [ + 648, + 241, + 430 + ], + [ + 648, + 243, + 431 + ], + [ + 648, + 245, + 464 + ], + [ + 648, + 246, + 497 + ], + [ + 648, + 247, + 498 + ], + [ + 648, + 246, + 605 + ] + ], + [ + [ + 644, + 143, + 1072 + ], + [ + 644, + 142, + 1105 + ], + [ + 644, + 138, + 1126 + ], + [ + 644, + 135, + 1127 + ], + [ + 644, + 129, + 1168 + ], + [ + 644, + 126, + 1169 + ], + [ + 644, + 123, + 1173 + ], + [ + 645, + 122, + 1196 + ], + [ + 646, + 122, + 1196 + ], + [ + 648, + 120, + 1197 + ], + [ + 649, + 119, + 1229 + ], + [ + 654, + 117, + 1229 + ], + [ + 657, + 114, + 1262 + ], + [ + 660, + 113, + 1263 + ], + [ + 664, + 113, + 1295 + ], + [ + 668, + 113, + 1295 + ], + [ + 674, + 113, + 1328 + ], + [ + 677, + 113, + 1329 + ], + [ + 679, + 114, + 1333 + ], + [ + 680, + 114, + 1361 + ], + [ + 683, + 116, + 1362 + ], + [ + 685, + 117, + 1365 + ], + [ + 687, + 118, + 1395 + ], + [ + 689, + 122, + 1395 + ], + [ + 690, + 124, + 1396 + ], + [ + 690, + 126, + 1428 + ], + [ + 691, + 131, + 1429 + ], + [ + 691, + 136, + 1465 + ], + [ + 691, + 143, + 1467 + ], + [ + 690, + 145, + 1469 + ], + [ + 688, + 151, + 1511 + ], + [ + 687, + 158, + 1512 + ], + [ + 685, + 159, + 1516 + ], + [ + 684, + 160, + 1544 + ], + [ + 681, + 163, + 1545 + ], + [ + 680, + 164, + 1549 + ], + [ + 678, + 164, + 1577 + ], + [ + 674, + 166, + 1578 + ], + [ + 673, + 166, + 1581 + ], + [ + 671, + 166, + 1611 + ], + [ + 667, + 167, + 1612 + ], + [ + 666, + 167, + 1612 + ], + [ + 664, + 167, + 1644 + ], + [ + 663, + 168, + 1645 + ], + [ + 661, + 168, + 1645 + ], + [ + 658, + 168, + 1677 + ], + [ + 656, + 168, + 1678 + ], + [ + 654, + 168, + 1711 + ], + [ + 653, + 168, + 1712 + ], + [ + 651, + 168, + 1745 + ], + [ + 650, + 168, + 1745 + ], + [ + 650, + 167, + 1778 + ] + ] + ], + ".POINTS_PER_SECOND": 60, + ".SEGMENT": "CHARACTER", + ".VERSION": "1.0", + ".X_DIM": 1032, + ".X_POINTS_PER_INCH": 95, + ".Y_DIM": 263, + ".Y_POINTS_PER_INCH": 95 + }, + "0x0441": { + ".COORD": [ + "X", + "Y", + "T" + ], + ".HIERARCHY": "CHARACTER", + ".PEN": [ + [ + [ + 633, + 126, + 0 + ], + [ + 631, + 126, + 39 + ], + [ + 629, + 126, + 40 + ], + [ + 627, + 125, + 43 + ], + [ + 625, + 125, + 70 + ], + [ + 620, + 125, + 70 + ], + [ + 617, + 125, + 75 + ], + [ + 616, + 125, + 103 + ], + [ + 611, + 125, + 104 + ], + [ + 607, + 125, + 108 + ], + [ + 603, + 125, + 136 + ], + [ + 597, + 126, + 139 + ], + [ + 593, + 128, + 143 + ], + [ + 585, + 133, + 172 + ], + [ + 578, + 139, + 173 + ], + [ + 574, + 144, + 203 + ], + [ + 572, + 152, + 205 + ], + [ + 572, + 157, + 236 + ], + [ + 572, + 164, + 238 + ], + [ + 573, + 171, + 269 + ], + [ + 576, + 176, + 270 + ], + [ + 583, + 182, + 304 + ], + [ + 587, + 184, + 306 + ], + [ + 591, + 184, + 309 + ], + [ + 606, + 185, + 353 + ], + [ + 617, + 184, + 353 + ], + [ + 623, + 182, + 355 + ], + [ + 627, + 180, + 386 + ], + [ + 634, + 178, + 387 + ], + [ + 635, + 177, + 387 + ], + [ + 635, + 176, + 419 + ], + [ + 635, + 174, + 420 + ], + [ + 633, + 173, + 453 + ], + [ + 632, + 173, + 453 + ], + [ + 632, + 172, + 488 + ], + [ + 631, + 172, + 492 + ] + ] + ], + ".POINTS_PER_SECOND": 60, + ".SEGMENT": "CHARACTER", + ".VERSION": "1.0", + ".X_DIM": 1032, + ".X_POINTS_PER_INCH": 95, + ".Y_DIM": 263, + ".Y_POINTS_PER_INCH": 95 + }, + "0x044a": { + ".COORD": [ + "X", + "Y", + "T" + ], + ".HIERARCHY": "CHARACTER", + ".PEN": [ + [ + [ + 259, + 124, + 0 + ], + [ + 260, + 124, + 69 + ], + [ + 262, + 124, + 90 + ], + [ + 264, + 124, + 93 + ], + [ + 266, + 124, + 114 + ], + [ + 267, + 124, + 117 + ], + [ + 269, + 124, + 145 + ], + [ + 271, + 124, + 146 + ], + [ + 272, + 124, + 149 + ], + [ + 273, + 125, + 178 + ], + [ + 274, + 125, + 179 + ], + [ + 275, + 125, + 180 + ], + [ + 277, + 125, + 211 + ], + [ + 278, + 127, + 212 + ], + [ + 278, + 129, + 245 + ], + [ + 279, + 132, + 246 + ], + [ + 279, + 134, + 278 + ], + [ + 279, + 136, + 279 + ], + [ + 279, + 139, + 312 + ], + [ + 279, + 142, + 313 + ], + [ + 279, + 145, + 317 + ], + [ + 279, + 146, + 345 + ], + [ + 279, + 151, + 345 + ], + [ + 279, + 154, + 348 + ], + [ + 279, + 156, + 378 + ], + [ + 279, + 162, + 379 + ], + [ + 279, + 164, + 381 + ], + [ + 279, + 166, + 412 + ], + [ + 279, + 171, + 412 + ], + [ + 279, + 172, + 413 + ], + [ + 279, + 175, + 444 + ], + [ + 279, + 178, + 445 + ], + [ + 279, + 179, + 478 + ], + [ + 279, + 180, + 480 + ], + [ + 279, + 181, + 484 + ], + [ + 279, + 182, + 511 + ], + [ + 279, + 181, + 1037 + ], + [ + 279, + 178, + 1085 + ], + [ + 279, + 176, + 1086 + ], + [ + 279, + 173, + 1109 + ], + [ + 279, + 172, + 1110 + ], + [ + 279, + 171, + 1143 + ], + [ + 279, + 169, + 1144 + ], + [ + 279, + 167, + 1177 + ], + [ + 279, + 165, + 1177 + ], + [ + 280, + 163, + 1180 + ], + [ + 281, + 162, + 1210 + ], + [ + 282, + 156, + 1210 + ], + [ + 282, + 155, + 1212 + ], + [ + 282, + 152, + 1244 + ], + [ + 283, + 150, + 1246 + ], + [ + 285, + 149, + 1293 + ], + [ + 290, + 149, + 1293 + ], + [ + 293, + 149, + 1327 + ], + [ + 295, + 149, + 1327 + ], + [ + 298, + 149, + 1359 + ], + [ + 300, + 149, + 1360 + ], + [ + 302, + 149, + 1392 + ], + [ + 303, + 150, + 1393 + ], + [ + 304, + 150, + 1426 + ], + [ + 305, + 152, + 1426 + ], + [ + 305, + 153, + 1429 + ], + [ + 306, + 155, + 1459 + ], + [ + 306, + 157, + 1460 + ], + [ + 307, + 159, + 1461 + ], + [ + 308, + 160, + 1492 + ], + [ + 308, + 166, + 1493 + ], + [ + 309, + 169, + 1526 + ], + [ + 309, + 171, + 1526 + ], + [ + 309, + 173, + 1558 + ], + [ + 309, + 175, + 1592 + ], + [ + 309, + 176, + 1593 + ], + [ + 309, + 177, + 1597 + ], + [ + 308, + 178, + 1625 + ], + [ + 308, + 180, + 1626 + ], + [ + 307, + 180, + 1629 + ], + [ + 307, + 181, + 1659 + ], + [ + 306, + 182, + 1659 + ], + [ + 305, + 182, + 1661 + ], + [ + 303, + 182, + 1691 + ], + [ + 302, + 182, + 1692 + ], + [ + 301, + 182, + 1725 + ], + [ + 300, + 182, + 1726 + ], + [ + 298, + 182, + 1759 + ], + [ + 296, + 182, + 1759 + ], + [ + 294, + 182, + 1792 + ], + [ + 293, + 182, + 1797 + ], + [ + 291, + 182, + 1825 + ], + [ + 291, + 181, + 1858 + ], + [ + 289, + 181, + 1858 + ], + [ + 289, + 180, + 1891 + ], + [ + 288, + 180, + 1925 + ], + [ + 287, + 180, + 1965 + ], + [ + 286, + 180, + 2061 + ], + [ + 285, + 179, + 2108 + ], + [ + 284, + 179, + 2108 + ], + [ + 283, + 179, + 2140 + ], + [ + 283, + 178, + 2141 + ], + [ + 281, + 178, + 2174 + ], + [ + 280, + 177, + 2174 + ], + [ + 279, + 177, + 2223 + ] + ] + ], + ".POINTS_PER_SECOND": 60, + ".SEGMENT": "CHARACTER", + ".VERSION": "1.0", + ".X_DIM": 1032, + ".X_POINTS_PER_INCH": 95, + ".Y_DIM": 263, + ".Y_POINTS_PER_INCH": 95 + } +} diff --git a/tests/auto/inputpanel/data/tst_inputpanel.qml b/tests/auto/inputpanel/data/tst_inputpanel.qml index c60a0b30..66337fa7 100644 --- a/tests/auto/inputpanel/data/tst_inputpanel.qml +++ b/tests/auto/inputpanel/data/tst_inputpanel.qml @@ -1113,6 +1113,7 @@ Rectangle { { initHwrMode: true, initInputMethodHints: Qt.ImhNone, initLocale: "ja_JP", initInputMode: "JapaneseHandwriting", inputSequence: "\u65E5\u672C\u8A9E", outputText: "\u65E5\u672C\u8A9E" }, { initHwrMode: true, initInputMethodHints: Qt.ImhNone, initLocale: "ko_KR", initInputMode: "KoreanHandwriting", inputSequence: "\uD55C\uAD6D\uC5B4", outputText: "\uD55C\uAD6D\uC5B4" }, { initHwrMode: true, initInputMethodHints: Qt.ImhNone, initLocale: "el_GR", initInputMode: "Greek", inputSequence: "\u0395\u03BB\u03BB\u03B7\u03BD\u03B9\u03BA\u03AC", outputText: "\u0395\u03BB\u03BB\u03B7\u03BD\u03B9\u03BA\u03AC" }, + { initHwrMode: true, initInputMethodHints: Qt.ImhNone, initLocale: "bg_BG", initInputMode: "Cyrillic", inputSequence: "\u0431\u044A\u043B\u0433\u0430\u0440\u0441\u043A\u0438", outputText: "\u0411\u044A\u043B\u0433\u0430\u0440\u0441\u043A\u0438" }, ] } diff --git a/tests/auto/inputpanel/hwr_test_data/cyrillic/1072_100_0.txt b/tests/auto/inputpanel/hwr_test_data/cyrillic/1072_100_0.txt new file mode 100644 index 00000000..b9749e07 --- /dev/null +++ b/tests/auto/inputpanel/hwr_test_data/cyrillic/1072_100_0.txt @@ -0,0 +1,91 @@ +.VERSION 1.0 +.HIERARCHY CHARACTER +.COORD X Y T +.SEGMENT CHARACTER +.X_DIM 1032 +.Y_DIM 263 +.X_POINTS_PER_INCH 95 +.Y_POINTS_PER_INCH 95 +.POINTS_PER_SECOND 60 +.PEN_DOWN +531 128 0 +532 128 56 +534 127 72 +536 127 100 +538 124 100 +539 124 103 +541 123 133 +544 122 133 +546 122 136 +548 122 165 +554 122 166 +557 121 168 +561 121 199 +570 125 200 +575 130 232 +579 135 233 +583 141 266 +586 148 266 +586 154 298 +586 160 299 +586 163 303 +586 166 332 +587 171 333 +587 174 336 +587 176 366 +587 180 367 +587 181 368 +587 182 399 +587 183 399 +588 185 400 +589 188 432 +589 190 465 +589 189 511 +589 187 548 +.PEN_UP +.PEN_DOWN +572 155 892 +567 153 935 +565 152 935 +562 150 964 +559 150 965 +556 150 967 +553 150 997 +548 150 998 +546 150 1000 +544 150 1030 +541 150 1031 +540 152 1031 +537 153 1064 +535 155 1064 +531 158 1065 +527 163 1097 +526 166 1098 +524 168 1130 +524 172 1131 +524 173 1136 +524 175 1163 +526 178 1164 +526 180 1167 +527 180 1196 +530 183 1197 +532 184 1199 +534 185 1229 +539 187 1230 +541 187 1231 +544 187 1263 +546 187 1264 +551 187 1264 +555 187 1297 +562 186 1297 +567 184 1330 +575 180 1330 +578 178 1347 +579 176 1363 +580 175 1363 +580 174 1380 +581 173 1396 +582 173 1440 +583 173 1465 +582 173 1640 +.PEN_UP diff --git a/tests/auto/inputpanel/hwr_test_data/cyrillic/1073_100_0.txt b/tests/auto/inputpanel/hwr_test_data/cyrillic/1073_100_0.txt new file mode 100644 index 00000000..3709db8e --- /dev/null +++ b/tests/auto/inputpanel/hwr_test_data/cyrillic/1073_100_0.txt @@ -0,0 +1,102 @@ +.VERSION 1.0 +.HIERARCHY CHARACTER +.COORD X Y T +.SEGMENT CHARACTER +.X_DIM 1032 +.Y_DIM 263 +.X_POINTS_PER_INCH 95 +.Y_POINTS_PER_INCH 95 +.POINTS_PER_SECOND 60 +.PEN_DOWN +262 61 0 +260 61 5 +252 60 47 +246 60 49 +243 60 53 +239 60 86 +233 60 86 +229 60 118 +223 60 119 +216 60 151 +209 63 152 +204 64 156 +200 65 192 +192 67 193 +190 68 196 +188 70 218 +185 71 218 +180 74 220 +176 76 251 +170 81 252 +167 86 253 +162 94 289 +162 95 291 +160 98 292 +159 101 317 +157 107 318 +155 112 351 +154 119 352 +154 121 356 +154 125 384 +154 131 385 +154 134 388 +154 138 417 +154 143 418 +154 146 421 +155 148 450 +156 155 451 +156 157 452 +157 160 484 +158 170 485 +160 172 517 +164 178 518 +168 181 550 +173 185 551 +176 186 557 +178 187 584 +185 188 585 +188 188 589 +191 189 617 +196 189 618 +200 189 620 +202 189 650 +208 189 650 +210 188 652 +214 187 683 +218 184 684 +220 182 684 +221 180 717 +224 172 718 +226 166 757 +226 159 759 +226 158 783 +226 153 784 +226 151 789 +225 148 816 +224 145 817 +224 142 820 +224 141 849 +222 137 850 +221 136 852 +220 134 883 +216 130 883 +214 128 884 +211 127 916 +201 125 917 +194 122 949 +188 122 950 +183 121 983 +178 121 984 +173 121 1017 +169 121 1020 +168 121 1021 +162 121 1066 +160 121 1067 +157 121 1069 +156 122 1099 +154 122 1100 +152 122 1100 +151 123 1132 +149 124 1133 +147 124 1165 +.PEN_UP diff --git a/tests/auto/inputpanel/hwr_test_data/cyrillic/1073_100_1.txt b/tests/auto/inputpanel/hwr_test_data/cyrillic/1073_100_1.txt new file mode 100644 index 00000000..e3ba5b8d --- /dev/null +++ b/tests/auto/inputpanel/hwr_test_data/cyrillic/1073_100_1.txt @@ -0,0 +1,98 @@ +.VERSION 1.0 +.HIERARCHY CHARACTER +.COORD X Y T +.SEGMENT CHARACTER +.X_DIM 1032 +.Y_DIM 263 +.X_POINTS_PER_INCH 95 +.Y_POINTS_PER_INCH 95 +.POINTS_PER_SECOND 60 +.PEN_DOWN +214 62 0 +210 62 38 +207 62 39 +203 62 72 +197 62 73 +194 62 76 +192 62 106 +186 63 109 +184 65 110 +175 67 155 +169 69 156 +166 70 156 +163 70 188 +154 74 189 +148 77 221 +144 82 222 +140 87 255 +138 93 256 +136 98 288 +134 103 289 +134 107 293 +134 109 326 +134 120 327 +134 125 355 +134 128 355 +133 132 356 +133 134 387 +133 143 389 +133 148 421 +133 153 422 +134 158 454 +135 164 454 +136 167 488 +138 173 489 +139 175 493 +141 177 521 +142 183 522 +144 185 524 +146 189 554 +150 193 555 +153 193 557 +157 194 590 +168 194 592 +177 194 620 +186 194 622 +195 193 654 +205 191 655 +211 190 687 +221 184 688 +223 183 693 +234 169 737 +243 163 738 +243 161 741 +244 159 770 +244 154 771 +244 152 773 +243 144 812 +237 137 813 +233 131 836 +232 128 837 +225 127 870 +221 127 871 +215 127 903 +208 127 904 +203 127 908 +198 127 936 +188 126 936 +184 126 941 +179 126 969 +171 126 970 +167 126 973 +162 126 1003 +156 126 1004 +154 126 1004 +151 126 1036 +146 126 1036 +142 128 1069 +140 129 1070 +137 131 1107 +133 131 1108 +132 132 1110 +131 132 1136 +128 132 1137 +127 132 1141 +127 133 1169 +125 134 1170 +125 135 1202 +.PEN_UP diff --git a/tests/auto/inputpanel/hwr_test_data/cyrillic/1075_100_0.txt b/tests/auto/inputpanel/hwr_test_data/cyrillic/1075_100_0.txt new file mode 100644 index 00000000..8bd436ae --- /dev/null +++ b/tests/auto/inputpanel/hwr_test_data/cyrillic/1075_100_0.txt @@ -0,0 +1,60 @@ +.VERSION 1.0 +.HIERARCHY CHARACTER +.COORD X Y T +.SEGMENT CHARACTER +.X_DIM 1032 +.Y_DIM 263 +.X_POINTS_PER_INCH 95 +.Y_POINTS_PER_INCH 95 +.POINTS_PER_SECOND 60 +.PEN_DOWN +466 177 0 +466 176 60 +466 175 75 +466 173 105 +465 173 108 +465 172 134 +465 169 134 +464 167 167 +464 165 168 +463 161 200 +462 156 201 +462 154 203 +460 151 250 +460 148 251 +459 148 252 +459 147 283 +458 143 284 +458 140 316 +458 138 317 +458 136 350 +458 134 350 +458 133 383 +458 131 384 +458 129 417 +457 128 466 +457 127 466 +457 126 499 +457 125 533 +457 124 644 +459 124 749 +466 124 786 +469 124 787 +472 124 788 +481 124 815 +485 124 816 +488 125 820 +492 125 848 +499 125 849 +504 125 851 +508 125 881 +518 125 882 +523 125 883 +525 125 915 +532 125 916 +535 125 916 +540 125 948 +544 125 948 +547 125 997 +548 125 998 +.PEN_UP diff --git a/tests/auto/inputpanel/hwr_test_data/cyrillic/1080_100_0.txt b/tests/auto/inputpanel/hwr_test_data/cyrillic/1080_100_0.txt new file mode 100644 index 00000000..3e481cec --- /dev/null +++ b/tests/auto/inputpanel/hwr_test_data/cyrillic/1080_100_0.txt @@ -0,0 +1,80 @@ +.VERSION 1.0 +.HIERARCHY CHARACTER +.COORD X Y T +.SEGMENT CHARACTER +.X_DIM 1032 +.Y_DIM 263 +.X_POINTS_PER_INCH 95 +.Y_POINTS_PER_INCH 95 +.POINTS_PER_SECOND 60 +.PEN_DOWN +751 123 0 +751 124 48 +751 126 65 +751 127 68 +751 128 98 +751 131 99 +751 133 100 +751 136 131 +751 140 132 +751 146 133 +751 152 164 +753 158 165 +756 165 197 +759 169 198 +759 171 232 +761 172 232 +761 173 236 +763 174 264 +764 176 265 +764 177 268 +767 178 298 +768 178 331 +772 178 332 +773 178 332 +776 178 364 +779 178 366 +781 176 397 +785 172 398 +788 166 430 +790 162 431 +792 159 437 +794 154 464 +797 148 465 +799 146 468 +801 144 501 +802 138 503 +802 134 530 +802 132 531 +802 129 532 +804 128 564 +807 123 564 +807 120 597 +807 118 598 +807 117 630 +807 116 663 +807 117 741 +808 120 783 +808 123 783 +810 129 813 +810 131 814 +810 136 847 +810 139 847 +810 141 852 +810 144 879 +810 149 880 +810 153 884 +810 155 912 +810 162 914 +810 164 916 +810 167 946 +811 171 947 +811 173 948 +811 174 979 +813 179 980 +814 181 1012 +814 183 1013 +814 184 1046 +814 186 1047 +815 187 1079 +.PEN_UP diff --git a/tests/auto/inputpanel/hwr_test_data/cyrillic/1082_100_0.txt b/tests/auto/inputpanel/hwr_test_data/cyrillic/1082_100_0.txt new file mode 100644 index 00000000..2892d7b9 --- /dev/null +++ b/tests/auto/inputpanel/hwr_test_data/cyrillic/1082_100_0.txt @@ -0,0 +1,99 @@ +.VERSION 1.0 +.HIERARCHY CHARACTER +.COORD X Y T +.SEGMENT CHARACTER +.X_DIM 1032 +.Y_DIM 263 +.X_POINTS_PER_INCH 95 +.Y_POINTS_PER_INCH 95 +.POINTS_PER_SECOND 60 +.PEN_DOWN +649 124 0 +649 125 189 +649 126 214 +649 127 255 +649 128 256 +649 130 256 +649 131 260 +649 133 289 +649 136 293 +649 138 322 +649 142 323 +649 143 324 +649 145 355 +649 149 356 +649 151 356 +649 156 388 +649 162 389 +650 164 421 +651 167 423 +651 170 454 +651 172 455 +651 174 461 +651 175 488 +651 177 489 +651 179 492 +651 180 521 +651 182 522 +651 183 554 +651 184 588 +651 183 853 +651 182 887 +.PEN_UP +.PEN_DOWN +690 123 1328 +689 123 1369 +689 124 1373 +687 126 1402 +686 126 1435 +682 129 1436 +681 132 1469 +678 132 1470 +673 136 1518 +669 140 1519 +667 140 1524 +666 141 1552 +664 142 1553 +663 143 1556 +661 143 1585 +659 145 1586 +657 147 1589 +655 147 1618 +654 148 1651 +653 149 1685 +653 150 1718 +652 150 1724 +.PEN_UP +.PEN_DOWN +653 151 2376 +654 151 2419 +655 151 2419 +656 151 2450 +657 151 2452 +658 151 2483 +660 151 2516 +663 151 2517 +664 152 2549 +666 153 2550 +669 153 2583 +671 155 2584 +673 156 2588 +674 156 2616 +677 157 2617 +678 158 2650 +680 159 2650 +680 161 2653 +681 161 2683 +683 163 2683 +684 164 2684 +685 165 2716 +687 167 2717 +688 167 2749 +689 168 2783 +689 169 2784 +691 170 2788 +692 171 2815 +692 172 2820 +692 173 2849 +692 174 2882 +.PEN_UP diff --git a/tests/auto/inputpanel/hwr_test_data/cyrillic/1083_100_0.txt b/tests/auto/inputpanel/hwr_test_data/cyrillic/1083_100_0.txt new file mode 100644 index 00000000..47f48853 --- /dev/null +++ b/tests/auto/inputpanel/hwr_test_data/cyrillic/1083_100_0.txt @@ -0,0 +1,69 @@ +.VERSION 1.0 +.HIERARCHY CHARACTER +.COORD X Y T +.SEGMENT CHARACTER +.X_DIM 1032 +.Y_DIM 263 +.X_POINTS_PER_INCH 95 +.Y_POINTS_PER_INCH 95 +.POINTS_PER_SECOND 60 +.PEN_DOWN +313 163 0 +313 164 52 +313 165 68 +313 168 102 +314 172 103 +315 174 134 +316 175 135 +320 177 168 +323 178 169 +324 178 173 +327 178 201 +332 178 202 +335 178 205 +340 178 243 +344 178 244 +346 176 245 +349 174 284 +352 169 285 +354 166 318 +357 163 318 +360 158 350 +362 154 351 +364 151 357 +365 150 384 +369 144 385 +371 140 388 +372 139 417 +375 133 417 +376 132 421 +380 131 451 +381 130 452 +382 129 484 +385 129 484 +387 129 517 +389 129 518 +391 129 550 +394 129 552 +395 129 557 +398 131 584 +400 131 588 +402 132 617 +403 133 618 +404 134 620 +405 134 650 +407 135 651 +408 135 652 +410 137 683 +410 138 684 +410 139 684 +412 141 717 +413 143 717 +414 145 751 +415 147 751 +415 148 784 +416 149 816 +416 150 820 +416 151 849 +416 152 852 +.PEN_UP diff --git a/tests/auto/inputpanel/hwr_test_data/cyrillic/1088_100_0.txt b/tests/auto/inputpanel/hwr_test_data/cyrillic/1088_100_0.txt new file mode 100644 index 00000000..820a029e --- /dev/null +++ b/tests/auto/inputpanel/hwr_test_data/cyrillic/1088_100_0.txt @@ -0,0 +1,97 @@ +.VERSION 1.0 +.HIERARCHY CHARACTER +.COORD X Y T +.SEGMENT CHARACTER +.X_DIM 1032 +.Y_DIM 263 +.X_POINTS_PER_INCH 95 +.Y_POINTS_PER_INCH 95 +.POINTS_PER_SECOND 60 +.PEN_DOWN +639 127 0 +639 128 48 +640 130 65 +640 132 68 +640 133 98 +640 138 99 +640 140 101 +640 150 148 +641 159 149 +644 167 181 +646 176 182 +646 185 215 +646 193 216 +646 200 247 +646 209 248 +646 211 253 +647 215 281 +647 218 282 +647 220 285 +647 221 314 +648 225 315 +648 227 317 +648 228 349 +648 233 350 +648 237 399 +648 240 400 +648 241 430 +648 243 431 +648 245 464 +648 246 497 +648 247 498 +648 246 605 +.PEN_UP +.PEN_DOWN +644 143 1072 +644 142 1105 +644 138 1126 +644 135 1127 +644 129 1168 +644 126 1169 +644 123 1173 +645 122 1196 +646 122 1196 +648 120 1197 +649 119 1229 +654 117 1229 +657 114 1262 +660 113 1263 +664 113 1295 +668 113 1295 +674 113 1328 +677 113 1329 +679 114 1333 +680 114 1361 +683 116 1362 +685 117 1365 +687 118 1395 +689 122 1395 +690 124 1396 +690 126 1428 +691 131 1429 +691 136 1465 +691 143 1467 +690 145 1469 +688 151 1511 +687 158 1512 +685 159 1516 +684 160 1544 +681 163 1545 +680 164 1549 +678 164 1577 +674 166 1578 +673 166 1581 +671 166 1611 +667 167 1612 +666 167 1612 +664 167 1644 +663 168 1645 +661 168 1645 +658 168 1677 +656 168 1678 +654 168 1711 +653 168 1712 +651 168 1745 +650 168 1745 +650 167 1778 +.PEN_UP diff --git a/tests/auto/inputpanel/hwr_test_data/cyrillic/1089_100_0.txt b/tests/auto/inputpanel/hwr_test_data/cyrillic/1089_100_0.txt new file mode 100644 index 00000000..31275451 --- /dev/null +++ b/tests/auto/inputpanel/hwr_test_data/cyrillic/1089_100_0.txt @@ -0,0 +1,47 @@ +.VERSION 1.0 +.HIERARCHY CHARACTER +.COORD X Y T +.SEGMENT CHARACTER +.X_DIM 1032 +.Y_DIM 263 +.X_POINTS_PER_INCH 95 +.Y_POINTS_PER_INCH 95 +.POINTS_PER_SECOND 60 +.PEN_DOWN +633 126 0 +631 126 39 +629 126 40 +627 125 43 +625 125 70 +620 125 70 +617 125 75 +616 125 103 +611 125 104 +607 125 108 +603 125 136 +597 126 139 +593 128 143 +585 133 172 +578 139 173 +574 144 203 +572 152 205 +572 157 236 +572 164 238 +573 171 269 +576 176 270 +583 182 304 +587 184 306 +591 184 309 +606 185 353 +617 184 353 +623 182 355 +627 180 386 +634 178 387 +635 177 387 +635 176 419 +635 174 420 +633 173 453 +632 173 453 +632 172 488 +631 172 492 +.PEN_UP diff --git a/tests/auto/inputpanel/hwr_test_data/cyrillic/1098_100_0.txt b/tests/auto/inputpanel/hwr_test_data/cyrillic/1098_100_0.txt new file mode 100644 index 00000000..fe0e80f8 --- /dev/null +++ b/tests/auto/inputpanel/hwr_test_data/cyrillic/1098_100_0.txt @@ -0,0 +1,112 @@ +.VERSION 1.0 +.HIERARCHY CHARACTER +.COORD X Y T +.SEGMENT CHARACTER +.X_DIM 1032 +.Y_DIM 263 +.X_POINTS_PER_INCH 95 +.Y_POINTS_PER_INCH 95 +.POINTS_PER_SECOND 60 +.PEN_DOWN +259 124 0 +260 124 69 +262 124 90 +264 124 93 +266 124 114 +267 124 117 +269 124 145 +271 124 146 +272 124 149 +273 125 178 +274 125 179 +275 125 180 +277 125 211 +278 127 212 +278 129 245 +279 132 246 +279 134 278 +279 136 279 +279 139 312 +279 142 313 +279 145 317 +279 146 345 +279 151 345 +279 154 348 +279 156 378 +279 162 379 +279 164 381 +279 166 412 +279 171 412 +279 172 413 +279 175 444 +279 178 445 +279 179 478 +279 180 480 +279 181 484 +279 182 511 +279 181 1037 +279 178 1085 +279 176 1086 +279 173 1109 +279 172 1110 +279 171 1143 +279 169 1144 +279 167 1177 +279 165 1177 +280 163 1180 +281 162 1210 +282 156 1210 +282 155 1212 +282 152 1244 +283 150 1246 +285 149 1293 +290 149 1293 +293 149 1327 +295 149 1327 +298 149 1359 +300 149 1360 +302 149 1392 +303 150 1393 +304 150 1426 +305 152 1426 +305 153 1429 +306 155 1459 +306 157 1460 +307 159 1461 +308 160 1492 +308 166 1493 +309 169 1526 +309 171 1526 +309 173 1558 +309 175 1592 +309 176 1593 +309 177 1597 +308 178 1625 +308 180 1626 +307 180 1629 +307 181 1659 +306 182 1659 +305 182 1661 +303 182 1691 +302 182 1692 +301 182 1725 +300 182 1726 +298 182 1759 +296 182 1759 +294 182 1792 +293 182 1797 +291 182 1825 +291 181 1858 +289 181 1858 +289 180 1891 +288 180 1925 +287 180 1965 +286 180 2061 +285 179 2108 +284 179 2108 +283 179 2140 +283 178 2141 +281 178 2174 +280 177 2174 +279 177 2223 +.PEN_UP |