diff --git a/src/plotview.cpp b/src/plotview.cpp index 2240edb..914c2c9 100644 --- a/src/plotview.cpp +++ b/src/plotview.cpp @@ -21,17 +21,18 @@ #include #include #include +#include #include +#include +#include +#include #include #include -#include -#include +#include #include -#include -#include -#include +#include #include -#include +#include #include "plots.h" PlotView::PlotView(InputSource *input) : cursors(this), viewRange({0, 0}) @@ -349,7 +350,13 @@ void PlotView::exportSamples(std::shared_ptr src) // viewRange.length() is used as some less arbitrary step value size_t step = viewRange.length(); + QProgressDialog progress("Exporting samples...", "Cancel", start, end, this); + progress.setWindowModality(Qt::WindowModal); for (index = start; index < end; index += step) { + progress.setValue(index); + if (progress.wasCanceled()) + break; + size_t length = std::min(step, end - index); auto samples = sampleSrc->getSamples(index, length); if (samples != nullptr) {