diff --git a/frameplaybackwindow.cpp b/frameplaybackwindow.cpp index 93515c1..10cce13 100644 --- a/frameplaybackwindow.cpp +++ b/frameplaybackwindow.cpp @@ -576,6 +576,7 @@ void FramePlaybackWindow::btnLoadLive() void FramePlaybackWindow::btnBackOneClick() { + if (!checkNoSeqLoaded()) return; forward = false; isPlaying = false; wantPlaying = false; @@ -593,6 +594,7 @@ void FramePlaybackWindow::btnPauseClick() void FramePlaybackWindow::btnReverseClick() { + if (!checkNoSeqLoaded()) return; forward = false; wantPlaying = true; if (!ui->ckWaitForTraffic->isChecked()) @@ -628,6 +630,7 @@ void FramePlaybackWindow::btnStopClick() void FramePlaybackWindow::btnPlayClick() { + if (!checkNoSeqLoaded()) return; forward = true; wantPlaying = true; if (!ui->ckWaitForTraffic->isChecked()) @@ -640,6 +643,7 @@ void FramePlaybackWindow::btnPlayClick() void FramePlaybackWindow::btnFwdOneClick() { + if (!checkNoSeqLoaded()) return; forward = true; isPlaying = false; wantPlaying = false; @@ -647,6 +651,16 @@ void FramePlaybackWindow::btnFwdOneClick() updateFrameLabel(); } +bool FramePlaybackWindow::checkNoSeqLoaded() +{ + if (seqItems.count() == 0) + { + QMessageBox::warning(this, "Warning", "Cannot begin playback until at\nleast one playback source is loaded."); + return false; + } + return true; +} + void FramePlaybackWindow::changePlaybackSpeed(int newSpeed) { playbackObject.setPlaybackInterval(newSpeed); diff --git a/frameplaybackwindow.h b/frameplaybackwindow.h index 860b614..a56bfc8 100644 --- a/frameplaybackwindow.h +++ b/frameplaybackwindow.h @@ -69,6 +69,7 @@ private: void readSettings(); void writeSettings(); void calculateWhichBus(); + bool checkNoSeqLoaded(); bool eventFilter(QObject *obj, QEvent *event); };