summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--core/io/resource_loader.h1
-rw-r--r--core/io/resource_saver.h2
-rw-r--r--editor/plugins/script_editor_plugin.cpp8
3 files changed, 11 insertions, 0 deletions
diff --git a/core/io/resource_loader.h b/core/io/resource_loader.h
index 7ade4a2dfc..a46a00203f 100644
--- a/core/io/resource_loader.h
+++ b/core/io/resource_loader.h
@@ -123,6 +123,7 @@ public:
static int get_import_order(const String &p_path);
static void set_timestamp_on_load(bool p_timestamp) { timestamp_on_load = p_timestamp; }
+ static bool get_timestamp_on_load() { return timestamp_on_load; }
static void notify_load_error(const String &p_err) {
if (err_notify) err_notify(err_notify_ud, p_err);
diff --git a/core/io/resource_saver.h b/core/io/resource_saver.h
index 6134d9db57..cdd43292a2 100644
--- a/core/io/resource_saver.h
+++ b/core/io/resource_saver.h
@@ -76,6 +76,8 @@ public:
static void add_resource_format_saver(ResourceFormatSaver *p_format_saver, bool p_at_front = false);
static void set_timestamp_on_save(bool p_timestamp) { timestamp_on_save = p_timestamp; }
+ static bool get_timestamp_on_save() { return timestamp_on_save; }
+
static void set_save_callback(ResourceSavedCallback p_callback);
};
diff --git a/editor/plugins/script_editor_plugin.cpp b/editor/plugins/script_editor_plugin.cpp
index ae6fa8e6bb..0bbe08821a 100644
--- a/editor/plugins/script_editor_plugin.cpp
+++ b/editor/plugins/script_editor_plugin.cpp
@@ -1815,6 +1815,10 @@ Ref<TextFile> ScriptEditor::_load_text_file(const String &p_path, Error *r_error
text_file->set_file_path(local_path);
text_file->set_path(local_path, true);
+ if (ResourceLoader::get_timestamp_on_load()) {
+ text_file->set_last_modified_time(FileAccess::get_modified_time(path));
+ }
+
if (r_error) {
*r_error = OK;
}
@@ -1844,6 +1848,10 @@ Error ScriptEditor::_save_text_file(Ref<TextFile> p_text_file, const String &p_p
file->close();
memdelete(file);
+ if (ResourceSaver::get_timestamp_on_save()) {
+ p_text_file->set_last_modified_time(FileAccess::get_modified_time(p_path));
+ }
+
_res_saved_callback(sqscr);
return OK;
}