VolumeMeterTimer.cpp 610 B

12345678910111213141516171819202122232425262728
  1. #include "VolumeMeterTimer.hpp"
  2. #include <widgets/VolumeMeter.hpp>
  3. #include "moc_VolumeMeterTimer.cpp"
  4. void VolumeMeterTimer::AddVolControl(VolumeMeter *meter)
  5. {
  6. volumeMeters.push_back(meter);
  7. }
  8. void VolumeMeterTimer::RemoveVolControl(VolumeMeter *meter)
  9. {
  10. volumeMeters.removeOne(meter);
  11. }
  12. void VolumeMeterTimer::timerEvent(QTimerEvent *)
  13. {
  14. for (VolumeMeter *meter : volumeMeters) {
  15. if (meter->needLayoutChange()) {
  16. // Tell paintEvent to update layout and paint everything
  17. meter->update();
  18. } else {
  19. // Tell paintEvent to paint only the bars
  20. meter->update(meter->getBarRect());
  21. }
  22. }
  23. }