72 Commits

Author SHA1 Message Date
1426cd3b3a One Copyright Update to rule them all
As many open source projects have started doing it, we're removing the
current year from the copyright notice, so that we don't need to bump
it every year.

It seems like only the first year of publication is technically
relevant for copyright notices, and even that seems to be something
that many companies stopped listing altogether (in a version controlled
codebase, the commits are a much better source of date of publication
than a hardcoded copyright statement).

We also now list Godot Engine contributors first as we're collectively
the current maintainers of the project, and we clarify that the
"exclusive" copyright of the co-founders covers the timespan before
opensourcing (their further contributions are included as part of Godot
Engine contributors).

Also fixed "cf." Frenchism - it's meant as "refer to / see".

Backported from #70885.
2023-01-10 15:26:54 +01:00
b200a011d1 Fix heap-use-after-free when closing a scene with its builtin script open
(cherry picked from commit 61bc7d6576)
2022-07-06 11:45:12 +02:00
6f7cef601a Use ScriptServer::get_global_class_base instead of script_class_get_base in script_class_is_parent. 2022-02-07 07:36:59 -06:00
a627cdafc5 Update copyright statements to 2022
Happy new year to the wonderful Godot community!
2022-01-13 15:54:13 +01:00
62c34a6be7 Fix a crash in editor's script parent class check 2021-11-30 17:12:23 +03:00
fe745e2fff Close built-in script from any scene
(cherry picked from commit 1a60509699)
2021-09-19 11:30:29 +02:00
140350d767 Style: Enforce braces around if blocks and loops
Using clang-tidy's `readability-braces-around-statements`.
https://clang.llvm.org/extra/clang-tidy/checks/readability-braces-around-statements.html
2021-05-05 15:02:01 +02:00
a828398655 Style: Replaces uses of 0/NULL by nullptr (C++11)
Using clang-tidy's `modernize-use-nullptr`.
https://clang.llvm.org/extra/clang-tidy/checks/modernize-use-nullptr.html
2021-05-04 16:30:23 +02:00
b5e1e05ef2 Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
6e600cb3f0 Style: Set clang-format Standard to c++14 2021-05-04 14:45:15 +02:00
4881d96ef0 Display scene file extensions in the editor only if there's ambiguity
This also simplifies the Editor Settings as the extension is now
automatically shown to avoid ambiguity.

(cherry picked from commit 218d124755)
2021-04-26 13:15:28 +02:00
5a290e0a3c Don't save project settings when not necessary
(cherry picked from commit 4db47eb32e)
2021-02-16 14:27:38 +01:00
e7ee561ca0 Detect external modification of scenes 2021-02-11 01:08:49 +01:00
49646383f1 Update copyright statements to 2021
Happy new year to the wonderful Godot community!

2020 has been a tough year for most of us personally, but a good year for
Godot development nonetheless with a huge amount of work done towards Godot
4.0 and great improvements backported to the long-lived 3.2 branch.

We've had close to 400 contributors to engine code this year, authoring near
7,000 commit! (And that's only for the `master` branch and for the engine code,
there's a lot more when counting docs, demos and other first-party repos.)

Here's to a great year 2021 for all Godot users 🎆

(cherry picked from commit b5334d14f7)
2021-01-13 16:17:06 +01:00
2997a3aa23 Fix cases of resources destroyed too early 2021-01-06 20:25:05 +01:00
b2897f1f7b Check for global script class information before clearing it
(cherry picked from commit 1ca501d7d4)
2020-10-05 22:09:49 +02:00
fcaf17824f Don't write global script class information if there is none
(cherry picked from commit 3163611f0c)
2020-10-04 20:53:50 +02:00
621c20db90 Implement undo-redo feature for Parameter Paste in the Inspector
EditorData::undo_redo.add_do_property and EditorData::undo_redo.add_undo_property is used in EditorData::paste_object_params to implement this feature. It's action name is set to "Paste Params"

Changes made
* Removed the call for clearing the history on paste params case.
* Instead of directly setting the properties value, EditorData::undo_redo is used.

(cherry picked from commit f817ba8379)
2020-03-04 12:40:15 +01:00
f61cd51643 Don't copy script with copy params 2020-01-09 06:34:47 +09:00
a7f49ac9a1 Update copyright statements to 2020
Happy new year to the wonderful Godot community!

We're starting a new decade with a well-established, non-profit, free
and open source game engine, and tons of further improvements in the
pipeline from hundreds of contributors.

Godot will keep getting better, and we're looking forward to all the
games that the community will keep developing and releasing with it.
2020-01-01 11:16:22 +01:00
ed1c4bc77d Removed unused variables, add some constants numbers 2019-12-10 05:13:02 +01:00
b777d9b34a Multi-selection restored properly after switching scenes
Fixes #33511
2019-11-10 09:32:07 +01:00
99cc4d246f Merge pull request #33343 from KoBeWi/scene_tree_dusting
Another scene tree dock menu cleanup
2019-11-07 15:17:14 +01:00
fb9ff92c29 Node create dialog filtering optimization
Avoid loading the same scripts again and parse them when updating the node type tree.
2019-11-06 17:21:14 +01:00
4ed2abb0bf Another scene tree dock menu cleanup 2019-11-04 16:45:16 +01:00
17732fe698 Added some obvious errors explanations 2019-09-25 10:28:50 +02:00
cedee8281b Allow to create scene from FileSystem dock 2019-08-15 19:47:21 +02:00
4f72178868 Make custom types more subtle and more useful
Implements #6067 (aaronfranke's idea)
Fixes #26980
2019-07-19 22:33:58 +03:00
0ac7715a27 Fix moving and renaming files
This commit fixes several issues related to moving scenes and resources
in an open project.

* Don't try to reload scenes while not all scenes are updated yet.
* Don't use the UndoRedo system to update non-user initiated editor
state.
* Resave scenes after moving files and updating resource path(s).
2019-06-04 16:24:32 +02:00
25f9aee005 Allow class_name scripts to have nested inheritance 2019-03-09 00:47:27 -03:00
b16c309f82 Update copyright statements to 2019
Happy new year to the wonderful Godot community!
2019-01-01 12:58:10 +01:00
af92b7dc14 Merge pull request #23060 from willnationsdev/inherit-non-class-script
Fix Script -> Script Class not in CreateDialog
2018-11-26 10:52:52 +01:00
911d3a4586 Check if setting exists to prevent warning
Fixes #23332
2018-11-16 15:26:55 +01:00
372f82e7a7 Fix Script -> Script Class not in CreateDialog 2018-10-16 13:47:12 -05:00
5436abefe4 Refactor editor icon retrieval 2018-09-14 09:27:56 -05:00
277b24dfb7 Make core/ includes absolute, remove subfolders from include path
This allows more consistency in the manner we include core headers,
where previously there would be a mix of absolute, relative and
include path-dependent includes.
2018-09-12 09:52:22 +02:00
6d9cc032e7 Add custom icons to script classes. 2018-08-14 14:18:05 -05:00
274d1bc683 Merge pull request #20233 from willnationsdev/gsc-editor
Add script class hierarchies & add-script button permanence/auto-derivation
2018-07-26 17:36:44 -03:00
0e29f7974b Reduce unnecessary COW on Vector by make writing explicit
This commit makes operator[] on Vector const and adds a write proxy to it.  From
now on writes to Vectors need to happen through the .write proxy. So for
instance:

Vector<int> vec;
vec.push_back(10);
std::cout << vec[0] << std::endl;
vec.write[0] = 20;

Failing to use the .write proxy will cause a compilation error.

In addition COWable datatypes can now embed a CowData pointer to their data.
This means that String, CharString, and VMap no longer use or derive from
Vector.

_ALWAYS_INLINE_ and _FORCE_INLINE_ are now equivalent for debug and non-debug
builds. This is a lot faster for Vector in the editor and while running tests.
The reason why this difference used to exist is because force-inlined methods
used to give a bad debugging experience. After extensive testing with modern
compilers this is no longer the case.
2018-07-26 00:54:16 +02:00
3de15363ab Add script hierarchies,add-script btn auto-derives 2018-07-25 15:18:45 -05:00
0a1c1c660f -Added AnimationGraphPlayer (still missing features)
-Added ability to edit resources from built-in inspector (wip, needs testing and feedback)
2018-06-18 22:12:08 -03:00
8a9e7ab6a6 Merge pull request #15489 from willnationsdev/gdnative-hook
Add EditorPlugin.build() build callbacks
2018-05-26 19:01:45 +02:00
64cb61619a Merge pull request #15928 from StateOff/feature_batch_rename
Implements "Batch Rename" editor tool.
2018-05-08 07:36:24 +02:00
d4cdee5f9e Merge pull request #15640 from willnationsdev/resource-saved-signal
Added EditorPlugin 'resource_saved' signal
2018-05-07 15:07:32 +02:00
31f28885f9 hide tab changed debug print 2018-04-30 18:41:11 +02:00
1c419531a0 Change ".." punctuation for "..." in editor strings (#16507) 2018-04-22 19:36:01 +02:00
97e77688bb Now the inspector will show the custom resources added via plugin 2018-02-25 01:41:26 +01:00
80595ba92b Added EditorPlugin 'resource_saved' signal 2018-01-31 09:06:09 -06:00
e58b10c883 Implements "Batch Rename" editor tool. 2018-01-22 00:43:19 -05:00
a26e6c8215 Renamed tree_exited to tree_exiting. tree_exited is now used for actual out of tree notification.
Updated doc accordingly.
2018-01-12 08:29:24 -03:00