Route PPBR export directory policy through platform services
This commit is contained in:
@@ -187,6 +187,7 @@ public:
|
||||
[[nodiscard]] bool uses_prepared_file_writes() const;
|
||||
[[nodiscard]] bool uses_work_directory_document_export_collections() const;
|
||||
[[nodiscard]] bool disables_network_tls_verification() const;
|
||||
[[nodiscard]] bool uses_ppbr_export_data_directory_override() const;
|
||||
[[nodiscard]] bool platform_supports_sonarpen() const;
|
||||
void start_platform_sonarpen();
|
||||
void pick_dir(std::function<void(std::string path)> callback);
|
||||
|
||||
@@ -196,6 +196,11 @@ bool App::disables_network_tls_verification() const
|
||||
return active_platform_services().disables_network_tls_verification();
|
||||
}
|
||||
|
||||
bool App::uses_ppbr_export_data_directory_override() const
|
||||
{
|
||||
return active_platform_services().uses_ppbr_export_data_directory_override();
|
||||
}
|
||||
|
||||
bool App::platform_supports_sonarpen() const
|
||||
{
|
||||
return active_platform_services().supports_sonarpen();
|
||||
|
||||
@@ -780,16 +780,14 @@ void NodePanelBrushPreset::add_brush(std::shared_ptr<Brush> brush)
|
||||
|
||||
bool NodePanelBrushPreset::export_ppbr(const std::string& path_in, const PPBRInfo& info_data)
|
||||
{
|
||||
const auto data_directory_policy = App::I->uses_ppbr_export_data_directory_override()
|
||||
? pp::assets::PpbrDataDirectoryPolicy::override_directory
|
||||
: pp::assets::PpbrDataDirectoryPolicy::next_to_package;
|
||||
const auto export_paths = pp::assets::plan_ppbr_export_paths(
|
||||
path_in,
|
||||
info_data.dest_path,
|
||||
info_data.export_data,
|
||||
#if __OSX__
|
||||
pp::assets::PpbrDataDirectoryPolicy::override_directory
|
||||
#else
|
||||
pp::assets::PpbrDataDirectoryPolicy::next_to_package
|
||||
#endif
|
||||
);
|
||||
data_directory_policy);
|
||||
if (!export_paths) {
|
||||
LOG("export_ppbr invalid path: %s", export_paths.status().message);
|
||||
return false;
|
||||
|
||||
@@ -66,6 +66,7 @@ public:
|
||||
[[nodiscard]] virtual bool uses_prepared_file_writes() = 0;
|
||||
[[nodiscard]] virtual bool uses_work_directory_document_export_collections() = 0;
|
||||
[[nodiscard]] virtual bool disables_network_tls_verification() = 0;
|
||||
[[nodiscard]] virtual bool uses_ppbr_export_data_directory_override() = 0;
|
||||
[[nodiscard]] virtual bool supports_sonarpen() = 0;
|
||||
virtual void start_sonarpen() = 0;
|
||||
[[nodiscard]] virtual PreparedFileTarget prepare_writable_file(
|
||||
|
||||
@@ -455,6 +455,15 @@ public:
|
||||
return pp::platform::default_disables_network_tls_verification();
|
||||
}
|
||||
|
||||
[[nodiscard]] bool uses_ppbr_export_data_directory_override() override
|
||||
{
|
||||
#if defined(__OSX__)
|
||||
return true;
|
||||
#else
|
||||
return false;
|
||||
#endif
|
||||
}
|
||||
|
||||
[[nodiscard]] bool supports_sonarpen() override
|
||||
{
|
||||
#if __IOS__
|
||||
|
||||
@@ -464,6 +464,11 @@ public:
|
||||
return pp::platform::default_disables_network_tls_verification();
|
||||
}
|
||||
|
||||
[[nodiscard]] bool uses_ppbr_export_data_directory_override() override
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
[[nodiscard]] bool supports_sonarpen() override
|
||||
{
|
||||
return false;
|
||||
|
||||
Reference in New Issue
Block a user