mirror of
https://github.com/Relintai/pandemonium_engine.git
synced 2025-03-12 07:58:52 +01:00
Add EditorPlugin::scene_saved
signal (3.x backport)
Matches the `EditorNode` one for parity with the exposed `resource_saved` signal 3.x backport: Adjusted documentation slightly, backported to 3.x branch Co-authored-by: t20kdc <asdd2808@gmail.com>
This commit is contained in:
parent
2e3af504a9
commit
38653c68ec
@ -539,6 +539,7 @@
|
||||
<signal name="resource_saved">
|
||||
<argument index="0" name="resource" type="Resource" />
|
||||
<description>
|
||||
Emitted when the given [code]resource[/code] was saved on disc. See also [signal scene_saved], which is used for edited scenes instead of this signal. The [PackedScene] does not count as a saved resource.
|
||||
</description>
|
||||
</signal>
|
||||
<signal name="scene_changed">
|
||||
@ -550,7 +551,13 @@
|
||||
<signal name="scene_closed">
|
||||
<argument index="0" name="filepath" type="String" />
|
||||
<description>
|
||||
Emitted when user closes a scene. The argument is file path to a closed scene.
|
||||
Emitted when user closes a scene. The argument is a file path to the closed scene.
|
||||
</description>
|
||||
</signal>
|
||||
<signal name="scene_saved">
|
||||
<argument index="0" name="filepath" type="String" />
|
||||
<description>
|
||||
Emitted when a scene was saved on disc. The argument is a file path to the saved scene. See also [signal resource_saved], used for other resources.
|
||||
</description>
|
||||
</signal>
|
||||
</signals>
|
||||
|
@ -390,6 +390,12 @@ void EditorData::notify_resource_saved(const Ref<Resource> &p_resource) {
|
||||
}
|
||||
}
|
||||
|
||||
void EditorData::notify_scene_saved(const String &p_path) {
|
||||
for (int i = 0; i < editor_plugins.size(); i++) {
|
||||
editor_plugins[i]->notify_scene_saved(p_path);
|
||||
}
|
||||
}
|
||||
|
||||
void EditorData::clear_editor_states() {
|
||||
for (int i = 0; i < editor_plugins.size(); i++) {
|
||||
editor_plugins[i]->clear();
|
||||
|
@ -242,6 +242,7 @@ public:
|
||||
Dictionary restore_edited_scene_state(EditorSelection *p_selection, EditorHistory *p_history);
|
||||
void notify_edited_scene_changed();
|
||||
void notify_resource_saved(const Ref<Resource> &p_resource);
|
||||
void notify_scene_saved(const String &p_path);
|
||||
|
||||
bool class_equals_or_inherits(const StringName &p_class, const StringName &p_inherits) const;
|
||||
bool script_class_is_parent(const StringName &p_class, const StringName &p_inherits) const;
|
||||
|
@ -1670,6 +1670,7 @@ void EditorNode::_save_scene(String p_file, int idx) {
|
||||
|
||||
// This needs to be emitted before saving external resources.
|
||||
emit_signal("scene_saved", p_file);
|
||||
editor_data.notify_scene_saved(p_file);
|
||||
|
||||
_save_external_resources();
|
||||
editor_data.save_editor_external_data();
|
||||
|
@ -626,6 +626,10 @@ void EditorPlugin::notify_resource_saved(const Ref<Resource> &p_resource) {
|
||||
emit_signal("resource_saved", p_resource);
|
||||
}
|
||||
|
||||
void EditorPlugin::notify_scene_saved(const String &p_scene_filepath) {
|
||||
emit_signal("scene_saved", p_scene_filepath);
|
||||
}
|
||||
|
||||
bool EditorPlugin::forward_canvas_gui_input(const Ref<InputEvent> &p_event) {
|
||||
if (get_script_instance() && get_script_instance()->has_method("forward_canvas_gui_input")) {
|
||||
return get_script_instance()->call("forward_canvas_gui_input", p_event);
|
||||
@ -971,6 +975,7 @@ void EditorPlugin::_bind_methods() {
|
||||
ADD_SIGNAL(MethodInfo("scene_closed", PropertyInfo(Variant::STRING, "filepath")));
|
||||
ADD_SIGNAL(MethodInfo("main_screen_changed", PropertyInfo(Variant::STRING, "screen_name")));
|
||||
ADD_SIGNAL(MethodInfo("resource_saved", PropertyInfo(Variant::OBJECT, "resource", PROPERTY_HINT_RESOURCE_TYPE, "Resource")));
|
||||
ADD_SIGNAL(MethodInfo("scene_saved", PropertyInfo(Variant::STRING, "filepath")));
|
||||
|
||||
BIND_ENUM_CONSTANT(CONTAINER_TOOLBAR);
|
||||
BIND_ENUM_CONSTANT(CONTAINER_SPATIAL_EDITOR_MENU);
|
||||
|
@ -234,6 +234,7 @@ public:
|
||||
void notify_scene_changed(const Node *scn_root);
|
||||
void notify_scene_closed(const String &scene_filepath);
|
||||
void notify_resource_saved(const Ref<Resource> &p_resource);
|
||||
void notify_scene_saved(const String &p_scene_filepath);
|
||||
|
||||
virtual bool forward_canvas_gui_input(const Ref<InputEvent> &p_event);
|
||||
virtual void forward_canvas_draw_over_viewport(Control *p_overlay);
|
||||
|
Loading…
Reference in New Issue
Block a user