timer.cpp 594 B

1234567891011121314151617181920212223242526272829303132333435
  1. #if defined(Hiro_Timer)
  2. namespace hiro {
  3. auto pTimer::construct() -> void {
  4. qtTimer = new QtTimer(*this);
  5. qtTimer->setInterval(0);
  6. qtTimer->connect(qtTimer, SIGNAL(timeout()), SLOT(onActivate()));
  7. }
  8. auto pTimer::destruct() -> void {
  9. delete qtTimer;
  10. }
  11. auto pTimer::setEnabled(bool enabled) -> void {
  12. if(enabled) {
  13. qtTimer->start();
  14. } else {
  15. qtTimer->stop();
  16. }
  17. }
  18. auto pTimer::setInterval(unsigned interval) -> void {
  19. qtTimer->setInterval(interval);
  20. }
  21. auto QtTimer::onActivate() -> void {
  22. if(Application::state().quit) return;
  23. p.self().doActivate();
  24. }
  25. }
  26. #endif