1
0

multitrack-video-error.cpp 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. #include "multitrack-video-error.hpp"
  2. #include <QMessageBox>
  3. #include "obs-app.hpp"
  4. MultitrackVideoError MultitrackVideoError::critical(QString error)
  5. {
  6. return {Type::Critical, error};
  7. }
  8. MultitrackVideoError MultitrackVideoError::warning(QString error)
  9. {
  10. return {Type::Warning, error};
  11. }
  12. MultitrackVideoError MultitrackVideoError::cancel()
  13. {
  14. return {Type::Cancel, {}};
  15. }
  16. bool MultitrackVideoError::ShowDialog(
  17. QWidget *parent, const QString &multitrack_video_name) const
  18. {
  19. QMessageBox mb(parent);
  20. mb.setTextFormat(Qt::RichText);
  21. mb.setWindowTitle(QTStr("Output.StartStreamFailed"));
  22. if (type == Type::Warning) {
  23. mb.setText(
  24. error +
  25. QTStr("FailedToStartStream.WarningRetryNonMultitrackVideo")
  26. .arg(multitrack_video_name));
  27. mb.setIcon(QMessageBox::Warning);
  28. mb.setStandardButtons(QMessageBox::StandardButton::Yes |
  29. QMessageBox::StandardButton::No);
  30. return mb.exec() == QMessageBox::StandardButton::Yes;
  31. } else if (type == Type::Critical) {
  32. mb.setText(error);
  33. mb.setIcon(QMessageBox::Critical);
  34. mb.setStandardButtons(
  35. QMessageBox::StandardButton::Ok); // cannot continue
  36. mb.exec();
  37. }
  38. return false;
  39. }