fcitxflags.h 2.0 KB

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