Integrate dialog export and Apple service teams

This commit is contained in:
2026-06-12 20:18:20 +02:00
parent 90f5fb29a6
commit 46fb8efec4
21 changed files with 1271 additions and 122 deletions

View File

@@ -2,6 +2,7 @@
#include "foundation/result.h"
#include <memory>
#include <string>
#include <string_view>
@@ -34,6 +35,41 @@ struct AppInputDialogPlan {
std::string ok_caption = "Ok";
};
class AppDialog {
public:
virtual ~AppDialog() = default;
[[nodiscard]] virtual AppDialogKind kind() const noexcept = 0;
};
class AppProgressDialog : public AppDialog {
public:
~AppProgressDialog() override = default;
};
class AppMessageDialog : public AppDialog {
public:
~AppMessageDialog() override = default;
};
class AppInputDialog : public AppDialog {
public:
~AppInputDialog() override = default;
};
class AppDialogFactory {
public:
virtual ~AppDialogFactory() = default;
[[nodiscard]] virtual std::shared_ptr<AppProgressDialog> show_progress_dialog(
const AppProgressDialogPlan& plan) = 0;
[[nodiscard]] virtual std::shared_ptr<AppMessageDialog> show_message_dialog(
const AppMessageDialogPlan& plan) = 0;
[[nodiscard]] virtual std::shared_ptr<AppInputDialog> show_input_dialog(
const AppInputDialogPlan& plan) = 0;
};
[[nodiscard]] inline AppProgressDialogPlan plan_app_progress_dialog(
std::string_view title,
int total) noexcept

View File

@@ -492,9 +492,9 @@ public:
case DocumentExportExecutionKind::layers_stem:
case DocumentExportExecutionKind::animation_frames_collection:
case DocumentExportExecutionKind::animation_frames_stem:
case DocumentExportExecutionKind::depth:
case DocumentExportExecutionKind::cube_faces:
return true;
case DocumentExportExecutionKind::depth:
case DocumentExportExecutionKind::animation_mp4:
case DocumentExportExecutionKind::timelapse:
return false;