1 /* 2 * SPDX-FileCopyrightText: 2012~2020 CSSlayer <wengxt@gmail.com> 3 * 4 * SPDX-License-Identifier: LGPL-2.1-or-later 5 */ 6 #ifndef _COMMON_FCITXFLAGS_H_ 7 #define _COMMON_FCITXFLAGS_H_ 8 9 #include <cstdint> 10 11 namespace fcitx { 12 13 // This need to keep sync with fcitx5. 14 enum FcitxCapabilityFlag : uint64_t { 15 FcitxCapabilityFlag_Preedit = (1 << 1), 16 FcitxCapabilityFlag_Password = (1 << 3), 17 FcitxCapabilityFlag_FormattedPreedit = (1 << 4), 18 FcitxCapabilityFlag_ClientUnfocusCommit = (1 << 5), 19 FcitxCapabilityFlag_SurroundingText = (1 << 6), 20 FcitxCapabilityFlag_Email = (1 << 7), 21 FcitxCapabilityFlag_Digit = (1 << 8), 22 FcitxCapabilityFlag_Uppercase = (1 << 9), 23 FcitxCapabilityFlag_Lowercase = (1 << 10), 24 FcitxCapabilityFlag_NoAutoUpperCase = (1 << 11), 25 FcitxCapabilityFlag_Url = (1 << 12), 26 FcitxCapabilityFlag_Dialable = (1 << 13), 27 FcitxCapabilityFlag_Number = (1 << 14), 28 FcitxCapabilityFlag_NoOnScreenKeyboard = (1 << 15), 29 FcitxCapabilityFlag_SpellCheck = (1 << 16), 30 FcitxCapabilityFlag_NoSpellCheck = (1 << 17), 31 FcitxCapabilityFlag_WordCompletion = (1 << 18), 32 FcitxCapabilityFlag_UppercaseWords = (1 << 19), 33 FcitxCapabilityFlag_UppwercaseSentences = (1 << 20), 34 FcitxCapabilityFlag_Alpha = (1 << 21), 35 FcitxCapabilityFlag_Name = (1 << 22), 36 FcitxCapabilityFlag_GetIMInfoOnFocus = (1 << 23), 37 FcitxCapabilityFlag_RelativeRect = (1 << 24), 38 39 FcitxCapabilityFlag_Multiline = (1ull << 35), 40 FcitxCapabilityFlag_Sensitive = (1ull << 36), 41 FcitxCapabilityFlag_KeyEventOrderFix = (1ull << 37), 42 FcitxCapabilityFlag_ReportKeyRepeat = (1ull << 38), 43 FcitxCapabilityFlag_ClientSideInputPanel = (1ull << 39), 44 }; 45 46 enum FcitxTextFormatFlag : int { 47 FcitxTextFormatFlag_Underline = (1 << 3), /**< underline is a flag */ 48 FcitxTextFormatFlag_HighLight = (1 << 4), /**< highlight the preedit */ 49 FcitxTextFormatFlag_DontCommit = (1 << 5), 50 FcitxTextFormatFlag_Bold = (1 << 6), 51 FcitxTextFormatFlag_Strike = (1 << 7), 52 FcitxTextFormatFlag_Italic = (1 << 8), 53 FcitxTextFormatFlag_None = 0, 54 }; 55 56 enum class FcitxCandidateLayoutHint { NotSet, Vertical, Horizontal }; 57 58 } // namespace fcitx 59 60 #endif // _COMMON_FCITXFLAGS_H_ 61