Thin legacy app dialog shell
This commit is contained in:
@@ -1,6 +1,5 @@
|
|||||||
#include "pch.h"
|
#include "pch.h"
|
||||||
#include "app.h"
|
#include "app.h"
|
||||||
#include "app_core/app_dialog.h"
|
|
||||||
#include "legacy_app_dialog_services.h"
|
#include "legacy_app_dialog_services.h"
|
||||||
#include "legacy_document_layer_services.h"
|
#include "legacy_document_layer_services.h"
|
||||||
|
|
||||||
@@ -27,28 +26,18 @@ void open_legacy_document_layer_rename_dialog(App& app);
|
|||||||
|
|
||||||
std::shared_ptr<NodeProgressBar> App::show_progress(const std::string& title, int total /*= 0*/)
|
std::shared_ptr<NodeProgressBar> App::show_progress(const std::string& title, int total /*= 0*/)
|
||||||
{
|
{
|
||||||
const auto plan = pp::app::plan_app_progress_dialog(title, total);
|
return pp::panopainter::show_legacy_app_progress_dialog(*this, title, total);
|
||||||
const auto dialogs = pp::panopainter::make_legacy_app_dialog_factory(*this);
|
|
||||||
return pp::panopainter::legacy_progress_dialog_node(dialogs->show_progress_dialog(plan));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
std::shared_ptr<NodeMessageBox> App::message_box(const std::string &title, const std::string& text, bool cancel_button)
|
std::shared_ptr<NodeMessageBox> App::message_box(const std::string &title, const std::string& text, bool cancel_button)
|
||||||
{
|
{
|
||||||
const auto plan = pp::app::plan_app_message_dialog(title, text, cancel_button);
|
return pp::panopainter::show_legacy_app_message_dialog(*this, title, text, cancel_button);
|
||||||
const auto dialogs = pp::panopainter::make_legacy_app_dialog_factory(*this);
|
|
||||||
return pp::panopainter::legacy_message_dialog_node(dialogs->show_message_dialog(plan));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
std::shared_ptr<NodeInputBox> App::input_box(const std::string& title,
|
std::shared_ptr<NodeInputBox> App::input_box(const std::string& title,
|
||||||
const std::string& field_name, const std::string& ok_caption /*= "Ok"*/)
|
const std::string& field_name, const std::string& ok_caption /*= "Ok"*/)
|
||||||
{
|
{
|
||||||
const auto plan_result = pp::app::plan_app_input_dialog(title, field_name, ok_caption);
|
return pp::panopainter::show_legacy_app_input_dialog(*this, title, field_name, ok_caption);
|
||||||
if (!plan_result) {
|
|
||||||
LOG("input dialog skipped: %s", plan_result.status().message);
|
|
||||||
return nullptr;
|
|
||||||
}
|
|
||||||
const auto dialogs = pp::panopainter::make_legacy_app_dialog_factory(*this);
|
|
||||||
return pp::panopainter::legacy_input_dialog_node(dialogs->show_input_dialog(plan_result.value()));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void App::dialog_usermanual()
|
void App::dialog_usermanual()
|
||||||
|
|||||||
@@ -119,6 +119,14 @@ std::shared_ptr<NodeProgressBar> create_legacy_app_progress_dialog(
|
|||||||
return legacy_progress_dialog_node(make_legacy_app_dialog_factory(app)->show_progress_dialog(plan));
|
return legacy_progress_dialog_node(make_legacy_app_dialog_factory(app)->show_progress_dialog(plan));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::shared_ptr<NodeProgressBar> show_legacy_app_progress_dialog(
|
||||||
|
App& app,
|
||||||
|
const std::string& title,
|
||||||
|
int total)
|
||||||
|
{
|
||||||
|
return create_legacy_app_progress_dialog(app, pp::app::plan_app_progress_dialog(title, total));
|
||||||
|
}
|
||||||
|
|
||||||
std::shared_ptr<NodeMessageBox> create_legacy_app_message_dialog(
|
std::shared_ptr<NodeMessageBox> create_legacy_app_message_dialog(
|
||||||
App& app,
|
App& app,
|
||||||
const pp::app::AppMessageDialogPlan& plan)
|
const pp::app::AppMessageDialogPlan& plan)
|
||||||
@@ -126,6 +134,17 @@ std::shared_ptr<NodeMessageBox> create_legacy_app_message_dialog(
|
|||||||
return legacy_message_dialog_node(make_legacy_app_dialog_factory(app)->show_message_dialog(plan));
|
return legacy_message_dialog_node(make_legacy_app_dialog_factory(app)->show_message_dialog(plan));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::shared_ptr<NodeMessageBox> show_legacy_app_message_dialog(
|
||||||
|
App& app,
|
||||||
|
const std::string& title,
|
||||||
|
const std::string& text,
|
||||||
|
bool cancel_button)
|
||||||
|
{
|
||||||
|
return create_legacy_app_message_dialog(
|
||||||
|
app,
|
||||||
|
pp::app::plan_app_message_dialog(title, text, cancel_button));
|
||||||
|
}
|
||||||
|
|
||||||
std::shared_ptr<NodeInputBox> create_legacy_app_input_dialog(
|
std::shared_ptr<NodeInputBox> create_legacy_app_input_dialog(
|
||||||
App& app,
|
App& app,
|
||||||
const pp::app::AppInputDialogPlan& plan)
|
const pp::app::AppInputDialogPlan& plan)
|
||||||
@@ -133,6 +152,21 @@ std::shared_ptr<NodeInputBox> create_legacy_app_input_dialog(
|
|||||||
return legacy_input_dialog_node(make_legacy_app_dialog_factory(app)->show_input_dialog(plan));
|
return legacy_input_dialog_node(make_legacy_app_dialog_factory(app)->show_input_dialog(plan));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::shared_ptr<NodeInputBox> show_legacy_app_input_dialog(
|
||||||
|
App& app,
|
||||||
|
const std::string& title,
|
||||||
|
const std::string& field_name,
|
||||||
|
const std::string& ok_caption)
|
||||||
|
{
|
||||||
|
const auto plan_result = pp::app::plan_app_input_dialog(title, field_name, ok_caption);
|
||||||
|
if (!plan_result) {
|
||||||
|
LOG("input dialog skipped: %s", plan_result.status().message);
|
||||||
|
return nullptr;
|
||||||
|
}
|
||||||
|
|
||||||
|
return create_legacy_app_input_dialog(app, plan_result.value());
|
||||||
|
}
|
||||||
|
|
||||||
std::shared_ptr<NodeProgressBar> legacy_progress_dialog_node(
|
std::shared_ptr<NodeProgressBar> legacy_progress_dialog_node(
|
||||||
const std::shared_ptr<pp::app::AppProgressDialog>& dialog) noexcept
|
const std::shared_ptr<pp::app::AppProgressDialog>& dialog) noexcept
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -3,6 +3,7 @@
|
|||||||
#include "app_core/app_dialog.h"
|
#include "app_core/app_dialog.h"
|
||||||
|
|
||||||
#include <memory>
|
#include <memory>
|
||||||
|
#include <string>
|
||||||
|
|
||||||
class App;
|
class App;
|
||||||
class NodeInputBox;
|
class NodeInputBox;
|
||||||
@@ -17,14 +18,31 @@ namespace pp::panopainter {
|
|||||||
App& app,
|
App& app,
|
||||||
const pp::app::AppProgressDialogPlan& plan);
|
const pp::app::AppProgressDialogPlan& plan);
|
||||||
|
|
||||||
|
[[nodiscard]] std::shared_ptr<NodeProgressBar> show_legacy_app_progress_dialog(
|
||||||
|
App& app,
|
||||||
|
const std::string& title,
|
||||||
|
int total);
|
||||||
|
|
||||||
[[nodiscard]] std::shared_ptr<NodeMessageBox> create_legacy_app_message_dialog(
|
[[nodiscard]] std::shared_ptr<NodeMessageBox> create_legacy_app_message_dialog(
|
||||||
App& app,
|
App& app,
|
||||||
const pp::app::AppMessageDialogPlan& plan);
|
const pp::app::AppMessageDialogPlan& plan);
|
||||||
|
|
||||||
|
[[nodiscard]] std::shared_ptr<NodeMessageBox> show_legacy_app_message_dialog(
|
||||||
|
App& app,
|
||||||
|
const std::string& title,
|
||||||
|
const std::string& text,
|
||||||
|
bool cancel_button);
|
||||||
|
|
||||||
[[nodiscard]] std::shared_ptr<NodeInputBox> create_legacy_app_input_dialog(
|
[[nodiscard]] std::shared_ptr<NodeInputBox> create_legacy_app_input_dialog(
|
||||||
App& app,
|
App& app,
|
||||||
const pp::app::AppInputDialogPlan& plan);
|
const pp::app::AppInputDialogPlan& plan);
|
||||||
|
|
||||||
|
[[nodiscard]] std::shared_ptr<NodeInputBox> show_legacy_app_input_dialog(
|
||||||
|
App& app,
|
||||||
|
const std::string& title,
|
||||||
|
const std::string& field_name,
|
||||||
|
const std::string& ok_caption);
|
||||||
|
|
||||||
[[nodiscard]] std::shared_ptr<NodeProgressBar> legacy_progress_dialog_node(
|
[[nodiscard]] std::shared_ptr<NodeProgressBar> legacy_progress_dialog_node(
|
||||||
const std::shared_ptr<pp::app::AppProgressDialog>& dialog) noexcept;
|
const std::shared_ptr<pp::app::AppProgressDialog>& dialog) noexcept;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user