mirror of
https://github.com/godotengine/godot.git
synced 2025-10-19 16:03:29 +00:00
Merge pull request #108658 from bruvzg/ed_pl_init
[EditorExportPlatform] Move initialization to a dedicated method.
This commit is contained in:
commit
5240f1c283
21 changed files with 56 additions and 31 deletions
|
@ -221,6 +221,12 @@
|
||||||
Returns [code]true[/code] if project configuration is valid.
|
Returns [code]true[/code] if project configuration is valid.
|
||||||
</description>
|
</description>
|
||||||
</method>
|
</method>
|
||||||
|
<method name="_initialize" qualifiers="virtual">
|
||||||
|
<return type="void" />
|
||||||
|
<description>
|
||||||
|
Initializes the plugin. Called by the editor when platform is registered.
|
||||||
|
</description>
|
||||||
|
</method>
|
||||||
<method name="_is_executable" qualifiers="virtual const">
|
<method name="_is_executable" qualifiers="virtual const">
|
||||||
<return type="bool" />
|
<return type="bool" />
|
||||||
<param index="0" name="path" type="String" />
|
<param index="0" name="path" type="String" />
|
||||||
|
|
|
@ -127,6 +127,7 @@ void EditorExport::_bind_methods() {
|
||||||
}
|
}
|
||||||
|
|
||||||
void EditorExport::add_export_platform(const Ref<EditorExportPlatform> &p_platform) {
|
void EditorExport::add_export_platform(const Ref<EditorExportPlatform> &p_platform) {
|
||||||
|
p_platform->initialize();
|
||||||
export_platforms.push_back(p_platform);
|
export_platforms.push_back(p_platform);
|
||||||
|
|
||||||
should_update_presets = true;
|
should_update_presets = true;
|
||||||
|
|
|
@ -349,6 +349,8 @@ public:
|
||||||
virtual void resolve_platform_feature_priorities(const Ref<EditorExportPreset> &p_preset, HashSet<String> &p_features) {}
|
virtual void resolve_platform_feature_priorities(const Ref<EditorExportPreset> &p_preset, HashSet<String> &p_features) {}
|
||||||
virtual String get_debug_protocol() const { return "tcp://"; }
|
virtual String get_debug_protocol() const { return "tcp://"; }
|
||||||
virtual HashMap<String, Variant> get_custom_project_settings(const Ref<EditorExportPreset> &p_preset) const { return HashMap<String, Variant>(); }
|
virtual HashMap<String, Variant> get_custom_project_settings(const Ref<EditorExportPreset> &p_preset) const { return HashMap<String, Variant>(); }
|
||||||
|
|
||||||
|
virtual void initialize() {}
|
||||||
};
|
};
|
||||||
|
|
||||||
VARIANT_ENUM_CAST(EditorExportPlatform::ExportMessageType)
|
VARIANT_ENUM_CAST(EditorExportPlatform::ExportMessageType)
|
||||||
|
|
|
@ -2815,8 +2815,7 @@ Error EditorExportPlatformAppleEmbedded::run(const Ref<EditorExportPreset> &p_pr
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
EditorExportPlatformAppleEmbedded::EditorExportPlatformAppleEmbedded(const char *p_platform_logo_svg, const char *p_run_icon_svg) {
|
void EditorExportPlatformAppleEmbedded::_initialize(const char *p_platform_logo_svg, const char *p_run_icon_svg) {
|
||||||
if (EditorNode::get_singleton()) {
|
|
||||||
Ref<Image> img = memnew(Image);
|
Ref<Image> img = memnew(Image);
|
||||||
const bool upsample = !Math::is_equal_approx(Math::round(EDSCALE), EDSCALE);
|
const bool upsample = !Math::is_equal_approx(Math::round(EDSCALE), EDSCALE);
|
||||||
|
|
||||||
|
@ -2832,7 +2831,6 @@ EditorExportPlatformAppleEmbedded::EditorExportPlatformAppleEmbedded(const char
|
||||||
_update_preset_status();
|
_update_preset_status();
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
EditorExportPlatformAppleEmbedded::~EditorExportPlatformAppleEmbedded() {
|
EditorExportPlatformAppleEmbedded::~EditorExportPlatformAppleEmbedded() {
|
||||||
#ifdef MACOS_ENABLED
|
#ifdef MACOS_ENABLED
|
||||||
|
|
|
@ -229,6 +229,8 @@ protected:
|
||||||
r_features->push_back("apple_embedded");
|
r_features->push_back("apple_embedded");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void _initialize(const char *p_platform_logo_svg, const char *p_run_icon_svg);
|
||||||
|
|
||||||
public:
|
public:
|
||||||
virtual Ref<Texture2D> get_logo() const override { return logo; }
|
virtual Ref<Texture2D> get_logo() const override { return logo; }
|
||||||
virtual Ref<Texture2D> get_run_icon() const override { return run_icon; }
|
virtual Ref<Texture2D> get_run_icon() const override { return run_icon; }
|
||||||
|
@ -279,7 +281,6 @@ public:
|
||||||
virtual void resolve_platform_feature_priorities(const Ref<EditorExportPreset> &p_preset, HashSet<String> &p_features) override {
|
virtual void resolve_platform_feature_priorities(const Ref<EditorExportPreset> &p_preset, HashSet<String> &p_features) override {
|
||||||
}
|
}
|
||||||
|
|
||||||
EditorExportPlatformAppleEmbedded(const char *p_platform_logo_svg, const char *p_run_icon_svg);
|
|
||||||
~EditorExportPlatformAppleEmbedded();
|
~EditorExportPlatformAppleEmbedded();
|
||||||
|
|
||||||
/// List the gdip files in the directory specified by the p_path parameter.
|
/// List the gdip files in the directory specified by the p_path parameter.
|
||||||
|
|
|
@ -81,6 +81,8 @@ void EditorExportPlatformExtension::_bind_methods() {
|
||||||
GDVIRTUAL_BIND(_get_platform_features);
|
GDVIRTUAL_BIND(_get_platform_features);
|
||||||
|
|
||||||
GDVIRTUAL_BIND(_get_debug_protocol);
|
GDVIRTUAL_BIND(_get_debug_protocol);
|
||||||
|
|
||||||
|
GDVIRTUAL_BIND(_initialize);
|
||||||
}
|
}
|
||||||
|
|
||||||
void EditorExportPlatformExtension::get_preset_features(const Ref<EditorExportPreset> &p_preset, List<String> *r_features) const {
|
void EditorExportPlatformExtension::get_preset_features(const Ref<EditorExportPreset> &p_preset, List<String> *r_features) const {
|
||||||
|
@ -358,6 +360,10 @@ String EditorExportPlatformExtension::get_debug_protocol() const {
|
||||||
return EditorExportPlatform::get_debug_protocol();
|
return EditorExportPlatform::get_debug_protocol();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void EditorExportPlatformExtension::initialize() {
|
||||||
|
GDVIRTUAL_CALL(_initialize);
|
||||||
|
}
|
||||||
|
|
||||||
EditorExportPlatformExtension::EditorExportPlatformExtension() {
|
EditorExportPlatformExtension::EditorExportPlatformExtension() {
|
||||||
//NOP
|
//NOP
|
||||||
}
|
}
|
||||||
|
|
|
@ -151,6 +151,9 @@ public:
|
||||||
virtual String get_debug_protocol() const override;
|
virtual String get_debug_protocol() const override;
|
||||||
GDVIRTUAL0RC(String, _get_debug_protocol);
|
GDVIRTUAL0RC(String, _get_debug_protocol);
|
||||||
|
|
||||||
|
virtual void initialize() override;
|
||||||
|
GDVIRTUAL0(_initialize);
|
||||||
|
|
||||||
EditorExportPlatformExtension();
|
EditorExportPlatformExtension();
|
||||||
~EditorExportPlatformExtension();
|
~EditorExportPlatformExtension();
|
||||||
};
|
};
|
||||||
|
|
|
@ -4250,7 +4250,7 @@ void EditorExportPlatformAndroid::get_platform_features(List<String> *r_features
|
||||||
void EditorExportPlatformAndroid::resolve_platform_feature_priorities(const Ref<EditorExportPreset> &p_preset, HashSet<String> &p_features) {
|
void EditorExportPlatformAndroid::resolve_platform_feature_priorities(const Ref<EditorExportPreset> &p_preset, HashSet<String> &p_features) {
|
||||||
}
|
}
|
||||||
|
|
||||||
EditorExportPlatformAndroid::EditorExportPlatformAndroid() {
|
void EditorExportPlatformAndroid::initialize() {
|
||||||
if (EditorNode::get_singleton()) {
|
if (EditorNode::get_singleton()) {
|
||||||
Ref<Image> img = memnew(Image);
|
Ref<Image> img = memnew(Image);
|
||||||
const bool upsample = !Math::is_equal_approx(Math::round(EDSCALE), EDSCALE);
|
const bool upsample = !Math::is_equal_approx(Math::round(EDSCALE), EDSCALE);
|
||||||
|
|
|
@ -279,7 +279,7 @@ public:
|
||||||
|
|
||||||
virtual void resolve_platform_feature_priorities(const Ref<EditorExportPreset> &p_preset, HashSet<String> &p_features) override;
|
virtual void resolve_platform_feature_priorities(const Ref<EditorExportPreset> &p_preset, HashSet<String> &p_features) override;
|
||||||
|
|
||||||
EditorExportPlatformAndroid();
|
virtual void initialize() override;
|
||||||
|
|
||||||
~EditorExportPlatformAndroid();
|
~EditorExportPlatformAndroid();
|
||||||
};
|
};
|
||||||
|
|
|
@ -33,14 +33,18 @@
|
||||||
#include "logo_svg.gen.h"
|
#include "logo_svg.gen.h"
|
||||||
#include "run_icon_svg.gen.h"
|
#include "run_icon_svg.gen.h"
|
||||||
|
|
||||||
|
#include "editor/editor_node.h"
|
||||||
|
|
||||||
Vector<String> EditorExportPlatformIOS::device_types({ "iPhone", "iPad" });
|
Vector<String> EditorExportPlatformIOS::device_types({ "iPhone", "iPad" });
|
||||||
|
|
||||||
EditorExportPlatformIOS::EditorExportPlatformIOS() :
|
void EditorExportPlatformIOS::initialize() {
|
||||||
EditorExportPlatformAppleEmbedded(_ios_logo_svg, _ios_run_icon_svg) {
|
if (EditorNode::get_singleton()) {
|
||||||
|
EditorExportPlatformAppleEmbedded::_initialize(_ios_logo_svg, _ios_run_icon_svg);
|
||||||
#ifdef MACOS_ENABLED
|
#ifdef MACOS_ENABLED
|
||||||
_start_remote_device_poller_thread();
|
_start_remote_device_poller_thread();
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
EditorExportPlatformIOS::~EditorExportPlatformIOS() {
|
EditorExportPlatformIOS::~EditorExportPlatformIOS() {
|
||||||
}
|
}
|
||||||
|
|
|
@ -63,6 +63,6 @@ public:
|
||||||
r_features->push_back("ios");
|
r_features->push_back("ios");
|
||||||
}
|
}
|
||||||
|
|
||||||
EditorExportPlatformIOS();
|
virtual void initialize() override;
|
||||||
~EditorExportPlatformIOS();
|
~EditorExportPlatformIOS();
|
||||||
};
|
};
|
||||||
|
|
|
@ -612,7 +612,7 @@ Error EditorExportPlatformLinuxBSD::run(const Ref<EditorExportPreset> &p_preset,
|
||||||
#undef CLEANUP_AND_RETURN
|
#undef CLEANUP_AND_RETURN
|
||||||
}
|
}
|
||||||
|
|
||||||
EditorExportPlatformLinuxBSD::EditorExportPlatformLinuxBSD() {
|
void EditorExportPlatformLinuxBSD::initialize() {
|
||||||
if (EditorNode::get_singleton()) {
|
if (EditorNode::get_singleton()) {
|
||||||
Ref<Image> img = memnew(Image);
|
Ref<Image> img = memnew(Image);
|
||||||
const bool upsample = !Math::is_equal_approx(Math::round(EDSCALE), EDSCALE);
|
const bool upsample = !Math::is_equal_approx(Math::round(EDSCALE), EDSCALE);
|
||||||
|
|
|
@ -89,5 +89,5 @@ public:
|
||||||
virtual Error run(const Ref<EditorExportPreset> &p_preset, int p_device, BitField<EditorExportPlatform::DebugFlags> p_debug_flags) override;
|
virtual Error run(const Ref<EditorExportPreset> &p_preset, int p_device, BitField<EditorExportPlatform::DebugFlags> p_debug_flags) override;
|
||||||
virtual void cleanup() override;
|
virtual void cleanup() override;
|
||||||
|
|
||||||
EditorExportPlatformLinuxBSD();
|
virtual void initialize() override;
|
||||||
};
|
};
|
||||||
|
|
|
@ -2814,7 +2814,7 @@ Error EditorExportPlatformMacOS::run(const Ref<EditorExportPreset> &p_preset, in
|
||||||
#undef CLEANUP_AND_RETURN
|
#undef CLEANUP_AND_RETURN
|
||||||
}
|
}
|
||||||
|
|
||||||
EditorExportPlatformMacOS::EditorExportPlatformMacOS() {
|
void EditorExportPlatformMacOS::initialize() {
|
||||||
if (EditorNode::get_singleton()) {
|
if (EditorNode::get_singleton()) {
|
||||||
Ref<Image> img = memnew(Image);
|
Ref<Image> img = memnew(Image);
|
||||||
const bool upsample = !Math::is_equal_approx(Math::round(EDSCALE), EDSCALE);
|
const bool upsample = !Math::is_equal_approx(Math::round(EDSCALE), EDSCALE);
|
||||||
|
|
|
@ -170,5 +170,5 @@ public:
|
||||||
virtual Error run(const Ref<EditorExportPreset> &p_preset, int p_device, BitField<EditorExportPlatform::DebugFlags> p_debug_flags) override;
|
virtual Error run(const Ref<EditorExportPreset> &p_preset, int p_device, BitField<EditorExportPlatform::DebugFlags> p_debug_flags) override;
|
||||||
virtual void cleanup() override;
|
virtual void cleanup() override;
|
||||||
|
|
||||||
EditorExportPlatformMacOS();
|
virtual void initialize() override;
|
||||||
};
|
};
|
||||||
|
|
|
@ -33,14 +33,18 @@
|
||||||
#include "logo_svg.gen.h"
|
#include "logo_svg.gen.h"
|
||||||
#include "run_icon_svg.gen.h"
|
#include "run_icon_svg.gen.h"
|
||||||
|
|
||||||
|
#include "editor/editor_node.h"
|
||||||
|
|
||||||
Vector<String> EditorExportPlatformVisionOS::device_types({ "realityDevice" });
|
Vector<String> EditorExportPlatformVisionOS::device_types({ "realityDevice" });
|
||||||
|
|
||||||
EditorExportPlatformVisionOS::EditorExportPlatformVisionOS() :
|
void EditorExportPlatformVisionOS::initialize() {
|
||||||
EditorExportPlatformAppleEmbedded(_visionos_logo_svg, _visionos_run_icon_svg) {
|
if (EditorNode::get_singleton()) {
|
||||||
|
EditorExportPlatformAppleEmbedded::_initialize(_visionos_logo_svg, _visionos_run_icon_svg);
|
||||||
#ifdef MACOS_ENABLED
|
#ifdef MACOS_ENABLED
|
||||||
_start_remote_device_poller_thread();
|
_start_remote_device_poller_thread();
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
EditorExportPlatformVisionOS::~EditorExportPlatformVisionOS() {
|
EditorExportPlatformVisionOS::~EditorExportPlatformVisionOS() {
|
||||||
}
|
}
|
||||||
|
|
|
@ -58,6 +58,6 @@ public:
|
||||||
r_features->push_back("visionos");
|
r_features->push_back("visionos");
|
||||||
}
|
}
|
||||||
|
|
||||||
EditorExportPlatformVisionOS();
|
virtual void initialize() override;
|
||||||
~EditorExportPlatformVisionOS();
|
~EditorExportPlatformVisionOS();
|
||||||
};
|
};
|
||||||
|
|
|
@ -916,7 +916,7 @@ Ref<Texture2D> EditorExportPlatformWeb::get_run_icon() const {
|
||||||
return run_icon;
|
return run_icon;
|
||||||
}
|
}
|
||||||
|
|
||||||
EditorExportPlatformWeb::EditorExportPlatformWeb() {
|
void EditorExportPlatformWeb::initialize() {
|
||||||
if (EditorNode::get_singleton()) {
|
if (EditorNode::get_singleton()) {
|
||||||
server.instantiate();
|
server.instantiate();
|
||||||
|
|
||||||
|
|
|
@ -148,6 +148,6 @@ public:
|
||||||
|
|
||||||
String get_debug_protocol() const override { return "ws://"; }
|
String get_debug_protocol() const override { return "ws://"; }
|
||||||
|
|
||||||
EditorExportPlatformWeb();
|
virtual void initialize() override;
|
||||||
~EditorExportPlatformWeb();
|
~EditorExportPlatformWeb();
|
||||||
};
|
};
|
||||||
|
|
|
@ -1094,7 +1094,7 @@ Error EditorExportPlatformWindows::run(const Ref<EditorExportPreset> &p_preset,
|
||||||
#undef CLEANUP_AND_RETURN
|
#undef CLEANUP_AND_RETURN
|
||||||
}
|
}
|
||||||
|
|
||||||
EditorExportPlatformWindows::EditorExportPlatformWindows() {
|
void EditorExportPlatformWindows::initialize() {
|
||||||
if (EditorNode::get_singleton()) {
|
if (EditorNode::get_singleton()) {
|
||||||
Ref<Image> img = memnew(Image);
|
Ref<Image> img = memnew(Image);
|
||||||
const bool upsample = !Math::is_equal_approx(Math::round(EDSCALE), EDSCALE);
|
const bool upsample = !Math::is_equal_approx(Math::round(EDSCALE), EDSCALE);
|
||||||
|
|
|
@ -97,5 +97,5 @@ public:
|
||||||
virtual Error run(const Ref<EditorExportPreset> &p_preset, int p_device, BitField<EditorExportPlatform::DebugFlags> p_debug_flags) override;
|
virtual Error run(const Ref<EditorExportPreset> &p_preset, int p_device, BitField<EditorExportPlatform::DebugFlags> p_debug_flags) override;
|
||||||
virtual void cleanup() override;
|
virtual void cleanup() override;
|
||||||
|
|
||||||
EditorExportPlatformWindows();
|
virtual void initialize() override;
|
||||||
};
|
};
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue