Plan recording export progress dialog

This commit is contained in:
2026-06-05 10:15:33 +02:00
parent 407297dc2e
commit b534c4a4da
8 changed files with 63 additions and 16 deletions

View File

@@ -1,5 +1,6 @@
#pragma once
#include "app_core/app_dialog.h"
#include "foundation/result.h"
#include <cstddef>
@@ -84,6 +85,12 @@ public:
};
}
[[nodiscard]] inline AppProgressDialogPlan plan_recording_export_progress_dialog(
const RecordingExportPlan& plan)
{
return plan_app_progress_dialog("Exporting MP4 movie", plan.progress_total);
}
[[nodiscard]] constexpr RecordingWorkerIterationPlan plan_recording_worker_iteration(
bool is_running_after_wake,
bool has_encoder,

View File

@@ -4,6 +4,7 @@
#include "app.h"
#include "canvas.h"
#include "legacy_app_dialog_services.h"
#include "node_progress_bar.h"
namespace pp::panopainter {
@@ -48,11 +49,11 @@ public:
void begin_export(int progress_total) override
{
progress_ = app_.layout[app_.main_id]->add_child<NodeProgressBar>();
progress_->m_progress->SetWidthP(0);
progress_->m_title->set_text("Exporting MP4 movie");
progress_->m_total = progress_total;
progress_->m_count = 0;
pp::app::RecordingExportPlan plan;
plan.progress_total = progress_total;
progress_ = pp::panopainter::create_legacy_app_progress_dialog(
app_,
pp::app::plan_recording_export_progress_dialog(plan)).get();
}
void write_mp4(std::string_view path) override