menu_common.h 579 B

1234567891011121314151617181920212223242526272829
  1. // This file is part of Desktop App Toolkit,
  2. // a set of libraries for developing nice desktop applications.
  3. //
  4. // For license and copyright information please follow this link:
  5. // https://github.com/desktop-app/legal/blob/master/LEGAL
  6. //
  7. #pragma once
  8. namespace Ui::Menu {
  9. enum class TriggeredSource {
  10. Mouse,
  11. Keyboard,
  12. };
  13. struct CallbackData {
  14. QAction *action;
  15. int actionTop = 0;
  16. TriggeredSource source;
  17. int index = 0;
  18. bool selected = false;
  19. };
  20. not_null<QAction*> CreateAction(
  21. QWidget *parent,
  22. const QString &text,
  23. Fn<void()> &&callback);
  24. } // namespace Ui::Menu