window-projector.hpp 640 B

1234567891011121314151617181920212223242526272829303132
  1. #pragma once
  2. #include <obs.hpp>
  3. #include "qt-display.hpp"
  4. #include "window-basic-main.hpp"
  5. class QMouseEvent;
  6. class OBSProjector : public OBSQTDisplay {
  7. Q_OBJECT
  8. private:
  9. OBSSource source;
  10. OBSSignal removedSignal;
  11. static void OBSRender(void *data, uint32_t cx, uint32_t cy);
  12. static void OBSSourceRemoved(void *data, calldata_t *params);
  13. void mousePressEvent(QMouseEvent *event) override;
  14. int savedMonitor = 0;
  15. bool isWindow = false;
  16. private slots:
  17. void EscapeTriggered();
  18. public:
  19. OBSProjector(QWidget *parent, obs_source_t *source, bool window);
  20. ~OBSProjector();
  21. void Init(int monitor, bool window, QString title);
  22. };