12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- #include "BackgroundTask.h"
- #include <QMessageBox>
- BackgroundTask::BackgroundTask(const std::string& shortDescription) :
- shortDescription{ shortDescription }
- {
- }
- ImageExportTask::ImageExportTask(const alm::ImageExportInfo& iei) :
- BackgroundTask{ "exporting image" },
- iei{ iei }
- {
- }
- void ImageExportTask::run(void)
- {
- alm::exportPng(iei, [this](float percentage) {
- emit progress(percentage);
- });
- emit finished(true);
- }
- VideoExportTask::VideoExportTask(MandelVideoGenerator mvg, mnd::MandelGenerator& generator) :
- BackgroundTask{ "exporting video" },
- mvg{ std::move(mvg) },
- generator{ generator }
- {
- }
- void VideoExportTask::run(void)
- {
- mvg.addProgressCallback([this](const MandelVideoProgressInfo& mvpi) {
- emit progress(0);
- });
- mvg.generate(generator);
- emit finished(true);
- QMessageBox* msgBox = new QMessageBox;
- msgBox->setText("Video successfully exported.");
- emit msgBox->exec();
- }
|