qt-display.hpp 721 B

123456789101112131415161718192021222324252627282930313233
  1. #pragma once
  2. #include <QWidget>
  3. #include <obs.hpp>
  4. class OBSQTDisplay : public QWidget {
  5. Q_OBJECT
  6. Q_PROPERTY(QColor displayBackgroundColor WRITE SetDisplayBackgroundColor
  7. NOTIFY SetDisplayBackgroundColor)
  8. OBSDisplay display;
  9. void CreateDisplay();
  10. void resizeEvent(QResizeEvent *event) override;
  11. void paintEvent(QPaintEvent *event) override;
  12. signals:
  13. void DisplayCreated(OBSQTDisplay *window);
  14. void DisplayResized();
  15. public:
  16. OBSQTDisplay(QWidget *parent = 0, Qt::WindowFlags flags = 0);
  17. virtual QPaintEngine *paintEngine() const override;
  18. inline obs_display_t *GetDisplay() const {return display;}
  19. uint32_t backgroundColor;
  20. private slots:
  21. void SetDisplayBackgroundColor(const QColor &color);
  22. };