You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

38 lines
726 B

3 years ago
3 years ago
3 years ago
3 years ago
  1. #include "preview-window.hpp"
  2. #include "obs-manager.hpp"
  3. PreviewWindow::PreviewWindow(OBSManager *obs)
  4. {
  5. set_title("Preview");
  6. set_default_size(obs->PreviewWidth, obs->PreviewHeight);
  7. mOBS = obs;
  8. }
  9. PreviewWindow::~PreviewWindow()
  10. {
  11. std::cout << "PreviewWindow::~PreviewWindow" << std::endl;
  12. }
  13. void PreviewWindow::on_realize()
  14. {
  15. Gtk::Widget::on_realize();
  16. mOBS->Initialize();
  17. mOBS->SetPreviewWindow(
  18. GDK_WINDOW_XID(get_window()->gobj()),
  19. GDK_WINDOW_XDISPLAY(get_window()->gobj())
  20. );
  21. }
  22. void PreviewWindow::on_show()
  23. {
  24. Gtk::Widget::on_show();
  25. mOBS->StartRecording();
  26. }
  27. void PreviewWindow::on_hide()
  28. {
  29. Gtk::Widget::on_hide();
  30. mOBS->StopRecording();
  31. }