DisplayCaptureToolbar.cpp 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. #include "DisplayCaptureToolbar.hpp"
  2. #include "ui_device-select-toolbar.h"
  3. #include "moc_DisplayCaptureToolbar.cpp"
  4. #ifdef _WIN32
  5. #define get_os_module(win, mac, linux) obs_get_module(win)
  6. #define get_os_text(mod, win, mac, linux) obs_module_get_locale_text(mod, win)
  7. #elif __APPLE__
  8. #define get_os_module(win, mac, linux) obs_get_module(mac)
  9. #define get_os_text(mod, win, mac, linux) obs_module_get_locale_text(mod, mac)
  10. #else
  11. #define get_os_module(win, mac, linux) obs_get_module(linux)
  12. #define get_os_text(mod, win, mac, linux) obs_module_get_locale_text(mod, linux)
  13. #endif
  14. DisplayCaptureToolbar::DisplayCaptureToolbar(QWidget *parent, OBSSource source) : ComboSelectToolbar(parent, source) {}
  15. void DisplayCaptureToolbar::Init()
  16. {
  17. delete ui->activateButton;
  18. ui->activateButton = nullptr;
  19. obs_module_t *mod = get_os_module("win-capture", "mac-capture", "linux-capture");
  20. if (!mod)
  21. return;
  22. const char *device_str = get_os_text(mod, "Monitor", "DisplayCapture.Display", "Screen");
  23. ui->deviceLabel->setText(device_str);
  24. #ifdef _WIN32
  25. prop_name = "monitor_id";
  26. #elif __APPLE__
  27. prop_name = "display_uuid";
  28. #else
  29. is_int = true;
  30. prop_name = "screen";
  31. #endif
  32. ComboSelectToolbar::Init();
  33. }