testkeytrans.cpp 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. /*
  2. * SPDX-FileCopyrightText: 2020~2020 CSSlayer <wengxt@gmail.com>
  3. *
  4. * SPDX-License-Identifier: LGPL-2.1-or-later
  5. *
  6. */
  7. #include "qtkeytrans.h"
  8. #include <QApplication>
  9. #include <fcitx-utils/keysym.h>
  10. #include <fcitx-utils/log.h>
  11. int main(int argc, char *argv[]) {
  12. QCoreApplication app(argc, argv);
  13. int sym;
  14. unsigned int states;
  15. fcitx::keyQtToSym(Qt::Key_Space, {}, " ", sym, states);
  16. FCITX_ASSERT(sym == FcitxKey_space) << sym;
  17. FCITX_ASSERT(static_cast<fcitx::KeyState>(states) ==
  18. fcitx::KeyState::NoState);
  19. fcitx::keyQtToSym(Qt::Key_Space, {}, "", sym, states);
  20. FCITX_ASSERT(sym == FcitxKey_space) << sym;
  21. FCITX_ASSERT(static_cast<fcitx::KeyState>(states) ==
  22. fcitx::KeyState::NoState);
  23. fcitx::keyQtToSym(Qt::Key_Space, Qt::ControlModifier, "", sym, states);
  24. FCITX_ASSERT(sym == FcitxKey_space) << sym;
  25. FCITX_ASSERT(static_cast<fcitx::KeyState>(states) == fcitx::KeyState::Ctrl);
  26. fcitx::keyQtToSym(Qt::Key_F, Qt::ControlModifier, "", sym, states);
  27. FCITX_ASSERT(sym == FcitxKey_F) << sym;
  28. FCITX_ASSERT(static_cast<fcitx::KeyState>(states) == fcitx::KeyState::Ctrl);
  29. fcitx::keyQtToSym(Qt::Key_F, Qt::ControlModifier, "\x06", sym, states);
  30. FCITX_ASSERT(sym == FcitxKey_F) << sym;
  31. FCITX_ASSERT(static_cast<fcitx::KeyState>(states) == fcitx::KeyState::Ctrl);
  32. return 0;
  33. }