diff options
author | Jarkko Koivikko <jarkko.koivikko@code-q.fi> | 2018-08-22 16:35:31 +0300 |
---|---|---|
committer | Jarkko Koivikko <jarkko.koivikko@code-q.fi> | 2018-08-28 07:55:45 +0000 |
commit | 84f96372584c37149fe6df751f937b61e3b7abe5 (patch) | |
tree | a0b1d5111a8506704e73d1f8e9d26a3a09891a23 /tests/auto/inputpanel/data/inputpanel | |
parent | 9513bd4b5fc2adc1d7d3ab070040543b989d9ed3 (diff) |
Use enum class in the public API
This change was suggested in the API review.
All the "old" enums are backwards compatible in QML, since unscoped
values are enabled by default.
Added the following new enum values maintaining compatibility (in QML):
- QVirtualKeyboardInputEngine::PatternRecognitionMode::None (same as PatternRecognitionDisabled)
- QVirtualKeyboardInputEngine::PatternRecognitionMode::Handwriting (same as HandwritingRecoginition)
- QVirtualKeyboardSelectionListModel::Role::Display (same as DisplayRole)
- QVirtualKeyboardSelectionListModel::Role::WordCompletionLength (same as WordCompletionLengthRole)
Renamed the following enum values (new in 5.12):
- QVirtualKeyboardSelectionListModel::Role::Dictionary (was DictionaryTypeRole)
- QVirtualKeyboardSelectionListModel::Role::CanRemoveSuggestion (was CanRemoveSuggestionRole)
- QVirtualKeyboardSelectionListModel::DictionaryType::Default (was DefaultDictionary)
- QVirtualKeyboardSelectionListModel::DictionaryType::User (was UserDictionary)
Added missing Q_DECLARE_METATYPE for:
- QVirtualKeyboardInputEngine::PatternRecognitionMode
- QVirtualKeyboardInputEngine::ReselectFlag
- QVirtualKeyboardSelectionListModel::DictionaryType
The enums can be found in:
- src/virtualkeyboard/qvirtualkeyboardinputengine.h
- src/virtualkeyboard/qvirtualkeyboardselectionlistmodel.h
Added a test case for verifying QML enum values.
Change-Id: I16749af71aadd762e9c303b5c682b2888afaa672
Reviewed-by: Jarkko Koivikko <jarkko.koivikko@code-q.fi>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
Diffstat (limited to 'tests/auto/inputpanel/data/inputpanel')
-rw-r--r-- | tests/auto/inputpanel/data/inputpanel/inputpanel.qml | 107 |
1 files changed, 88 insertions, 19 deletions
diff --git a/tests/auto/inputpanel/data/inputpanel/inputpanel.qml b/tests/auto/inputpanel/data/inputpanel/inputpanel.qml index 2e183092..358c49ea 100644 --- a/tests/auto/inputpanel/data/inputpanel/inputpanel.qml +++ b/tests/auto/inputpanel/data/inputpanel/inputpanel.qml @@ -265,39 +265,39 @@ InputPanel { function mapInputMode(inputModeName) { if (inputModeName === "Latin") - return InputEngine.Latin + return InputEngine.InputMode.Latin else if (inputModeName === "Numeric") - return InputEngine.Numeric + return InputEngine.InputMode.Numeric else if (inputModeName === "Dialable") - return InputEngine.Dialable + return InputEngine.InputMode.Dialable else if (inputModeName === "Pinyin") - return InputEngine.Pinyin + return InputEngine.InputMode.Pinyin else if (inputModeName === "Cangjie") - return InputEngine.Cangjie + return InputEngine.InputMode.Cangjie else if (inputModeName === "Zhuyin") - return InputEngine.Zhuyin + return InputEngine.InputMode.Zhuyin else if (inputModeName === "Hangul") - return InputEngine.Hangul + return InputEngine.InputMode.Hangul else if (inputModeName === "Hiragana") - return InputEngine.Hiragana + return InputEngine.InputMode.Hiragana else if (inputModeName === "Katakana") - return InputEngine.Katakana + return InputEngine.InputMode.Katakana else if (inputModeName === "FullwidthLatin") - return InputEngine.FullwidthLatin + return InputEngine.InputMode.FullwidthLatin else if (inputModeName === "Greek") - return InputEngine.Greek + return InputEngine.InputMode.Greek else if (inputModeName === "Cyrillic") - return InputEngine.Cyrillic + return InputEngine.InputMode.Cyrillic else if (inputModeName === "Arabic") - return InputEngine.Arabic + return InputEngine.InputMode.Arabic else if (inputModeName === "Hebrew") - return InputEngine.Hebrew + return InputEngine.InputMode.Hebrew else if (inputModeName === "ChineseHandwriting") - return InputEngine.ChineseHandwriting + return InputEngine.InputMode.ChineseHandwriting else if (inputModeName === "JapaneseHandwriting") - return InputEngine.JapaneseHandwriting + return InputEngine.InputMode.JapaneseHandwriting else if (inputModeName === "KoreanHandwriting") - return InputEngine.KoreanHandwriting + return InputEngine.InputMode.KoreanHandwriting else return -1 } @@ -314,6 +314,75 @@ InputPanel { return true } + function testPublicEnums() { + // Scoped + testcase.verify(InputEngine.TextCase.Lower !== undefined) + testcase.verify(InputEngine.TextCase.Upper !== undefined) + testcase.verify(InputEngine.InputMode.Latin !== undefined) + testcase.verify(InputEngine.InputMode.Numeric !== undefined) + testcase.verify(InputEngine.InputMode.Dialable !== undefined) + testcase.verify(InputEngine.InputMode.Pinyin !== undefined) + testcase.verify(InputEngine.InputMode.Cangjie !== undefined) + testcase.verify(InputEngine.InputMode.Zhuyin !== undefined) + testcase.verify(InputEngine.InputMode.Hangul !== undefined) + testcase.verify(InputEngine.InputMode.Hiragana !== undefined) + testcase.verify(InputEngine.InputMode.Katakana !== undefined) + testcase.verify(InputEngine.InputMode.FullwidthLatin !== undefined) + testcase.verify(InputEngine.InputMode.Greek !== undefined) + testcase.verify(InputEngine.InputMode.Cyrillic !== undefined) + testcase.verify(InputEngine.InputMode.Arabic !== undefined) + testcase.verify(InputEngine.InputMode.Hebrew !== undefined) + testcase.verify(InputEngine.InputMode.ChineseHandwriting !== undefined) + testcase.verify(InputEngine.InputMode.JapaneseHandwriting !== undefined) + testcase.verify(InputEngine.InputMode.KoreanHandwriting !== undefined) + testcase.verify(InputEngine.PatternRecognitionMode.None !== undefined) + testcase.verify(InputEngine.PatternRecognitionMode.PatternRecognitionDisabled !== undefined) + testcase.verify(InputEngine.PatternRecognitionMode.Handwriting !== undefined) + testcase.verify(InputEngine.PatternRecognitionMode.HandwritingRecoginition !== undefined) + testcase.verify(InputEngine.ReselectFlag.WordBeforeCursor !== undefined) + testcase.verify(InputEngine.ReselectFlag.WordAfterCursor !== undefined) + testcase.verify(InputEngine.ReselectFlag.WordAtCursor !== undefined) + testcase.verify(SelectionListModel.Type.WordCandidateList !== undefined) + testcase.verify(SelectionListModel.Role.Display !== undefined) + testcase.verify(SelectionListModel.Role.WordCompletionLength !== undefined) + testcase.verify(SelectionListModel.Role.Dictionary !== undefined) + testcase.verify(SelectionListModel.DictionaryType.Default !== undefined) + testcase.verify(SelectionListModel.DictionaryType.User !== undefined) + // Unscoped + testcase.verify(InputEngine.Lower !== undefined) + testcase.verify(InputEngine.Upper !== undefined) + testcase.verify(InputEngine.Latin !== undefined) + testcase.verify(InputEngine.Numeric !== undefined) + testcase.verify(InputEngine.Dialable !== undefined) + testcase.verify(InputEngine.Pinyin !== undefined) + testcase.verify(InputEngine.Cangjie !== undefined) + testcase.verify(InputEngine.Zhuyin !== undefined) + testcase.verify(InputEngine.Hangul !== undefined) + testcase.verify(InputEngine.Hiragana !== undefined) + testcase.verify(InputEngine.Katakana !== undefined) + testcase.verify(InputEngine.FullwidthLatin !== undefined) + testcase.verify(InputEngine.Greek !== undefined) + testcase.verify(InputEngine.Cyrillic !== undefined) + testcase.verify(InputEngine.Arabic !== undefined) + testcase.verify(InputEngine.Hebrew !== undefined) + testcase.verify(InputEngine.ChineseHandwriting !== undefined) + testcase.verify(InputEngine.JapaneseHandwriting !== undefined) + testcase.verify(InputEngine.KoreanHandwriting !== undefined) + testcase.verify(InputEngine.None !== undefined) + testcase.verify(InputEngine.PatternRecognitionDisabled !== undefined) + testcase.verify(InputEngine.Handwriting !== undefined) + testcase.verify(InputEngine.HandwritingRecoginition !== undefined) + testcase.verify(InputEngine.WordBeforeCursor !== undefined) + testcase.verify(InputEngine.WordAfterCursor !== undefined) + testcase.verify(InputEngine.WordAtCursor !== undefined) + testcase.verify(SelectionListModel.WordCandidateList !== undefined) + testcase.verify(SelectionListModel.DisplayRole !== undefined) + testcase.verify(SelectionListModel.WordCompletionLengthRole !== undefined) + testcase.verify(SelectionListModel.DictionaryType !== undefined) + testcase.verify(SelectionListModel.Default !== undefined) + testcase.verify(SelectionListModel.User !== undefined) + } + function setExternalLanguageSwitchEnabled(enabled) { externalLanguageSwitchEnabled = enabled } @@ -612,8 +681,8 @@ InputPanel { function selectionListSuggestionIsFromUserDictionary() { if (!inputPanel.wordCandidateView.currentItem) return false - var dictionaryType = inputPanel.wordCandidateView.model.dataAt(inputPanel.wordCandidateView.currentIndex, SelectionListModel.DictionaryTypeRole) - return dictionaryType !== undefined && dictionaryType === SelectionListModel.UserDictionary + var dictionaryType = inputPanel.wordCandidateView.model.dataAt(inputPanel.wordCandidateView.currentIndex, SelectionListModel.Role.Dictionary) + return dictionaryType !== undefined && dictionaryType === SelectionListModel.DictionaryType.User } function openWordCandidateContextMenu() { |