iv_delegate.h 709 B

123456789101112131415161718192021222324252627
  1. /*
  2. This file is part of Telegram Desktop,
  3. the official desktop application for the Telegram messaging service.
  4. For license and copyright information please follow this link:
  5. https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
  6. */
  7. #pragma once
  8. namespace Ui {
  9. class RpWindow;
  10. } // namespace Ui
  11. namespace Iv {
  12. class Delegate {
  13. public:
  14. virtual void ivSetLastSourceWindow(not_null<QWidget*> window) = 0;
  15. [[nodiscard]] virtual QRect ivGeometry() const = 0;
  16. virtual void ivSaveGeometry(not_null<Ui::RpWindow*> window) = 0;
  17. [[nodiscard]] virtual int ivZoom() const = 0;
  18. [[nodiscard]] virtual rpl::producer<int> ivZoomValue() const = 0;
  19. virtual void ivSetZoom(int value) = 0;
  20. };
  21. } // namespace Iv