Tomasz Chabora
44cf3c22ac
Keep property values when extending script
2022-07-29 16:57:50 +02:00
Juan Linietsky
d4433ae6d3
Remove Signal connect binds
...
Remove the optional argument p_binds from `Object::connect` since it was deprecated by Callable.bind().
Changed all uses of it to Callable.bind()
2022-07-29 16:26:13 +02:00
Silc Renew
063f66d738
fix unmarked unique when make local
...
Co-authored-by: Juan Linietsky reduzio@gmail.com
2022-07-26 20:56:35 +09:00
kobewi
b42bbca266
Fix node dragging not working when dock is moved
2022-07-21 23:57:52 +02:00
FireForge
97dfbea6ad
Rename Control PRESET_WIDE to PRESET_FULL_RECT
2022-07-18 20:08:11 -05:00
Rémi Verschelde
b942c1ffe3
Merge pull request #62827 from fire-forge/ok-cancel
...
Add `ok_button_text` to AcceptDialog and `cancel_button_text` to ConfirmationDialog
2022-07-13 14:10:38 +02:00
FireForge
af19501cc7
Seperate filter and description in FileDialog.add_filter()
2022-07-09 10:51:45 -05:00
FireForge
e4067064ce
Add ok_button_text to AcceptDialog and cancel_button_text to ConfirmationDialog
2022-07-09 10:47:08 -05:00
Rémi Verschelde
91b984a507
Merge pull request #61966 from Rindbee/fix-internal-nodes-owned
...
Fix setting owner on internal nodes when save branch as scene
2022-06-23 14:08:12 +02:00
FireForge
f85eb4164a
Expose PopupMenu set/get_item_horizontal_offset()
...
- Renames setter from set_item_h_offset()
- Adds getter
2022-06-15 02:08:44 -05:00
Rindbee
472d16be4f
Fix setting owner on internal nodes when save brach as scene
2022-06-12 13:57:42 +08:00
kobewi
ec6bbd486f
Don't handle pending clicks outside scene tree
2022-06-10 15:14:31 +02:00
FireForge
7f7244f04a
Use consistent casing in editor filter/search bars
2022-05-28 18:43:16 -05:00
Rémi Verschelde
3c9cc7914a
Merge pull request #61162 from KoBeWi/drag_nodes_like_a_boss
2022-05-23 22:08:03 +02:00
reduz
45af29da80
Add a new HashSet template
...
* Intended to replace RBSet in most cases.
* Optimized for iteration speed
2022-05-20 22:40:38 +02:00
kobewi
95bbffff48
Only switch to node when not dragging it
2022-05-18 23:25:32 +02:00
reduz
746dddc067
Replace most uses of Map by HashMap
...
* Map is unnecessary and inefficient in almost every case.
* Replaced by the new HashMap.
* Renamed Map to RBMap and Set to RBSet for cases that still make sense
(order matters) but use is discouraged.
There were very few cases where replacing by HashMap was undesired because
keeping the key order was intended.
I tried to keep those (as RBMap) as much as possible, but might have missed
some. Review appreciated!
2022-05-16 10:37:48 +02:00
kobewi
1dc7bcc83c
Cleanup metadata usage
2022-05-06 00:27:10 +02:00
Hugo Locurcio
180e5d3028
Remove `RES` and `REF` typedefs in favor of spelled out `Ref<>`
...
These typedefs don't save much typing compared to the full `Ref<Resource>`
and `Ref<RefCounted>`, yet they sometimes introduce confusion among
new contributors.
2022-05-03 01:43:50 +02:00
Rémi Verschelde
8dfa12cae7
Merge pull request #59979 from bruvzg/cpp_check2
2022-04-27 10:08:26 +02:00
reduz
8580f377a3
Implement Scene Unique Nodes
...
Implements https://github.com/godotengine/godot-proposals/issues/4096
* Nodes can be marked unique to the scene in the editor (or via code).
* Unique nodes can be accessed via the **%** prefix at any point in the path. From that point in the path (depending on whether the scene of the path is), the unique node will be fetched.
* Implementation is very optimal, as these nodes are cached.
2022-04-25 12:19:17 +02:00
bruvzg
de4c97758a
Fix more issues found by cppcheck.
2022-04-20 10:34:00 +03:00
bruvzg
9381acb6a4
Make FileAccess and DirAccess classes reference counted.
2022-04-11 13:28:51 +03:00
bruvzg
f851c4aa33
Fix some issues found by cppcheck.
2022-04-06 14:34:37 +03:00
bruvzg
d1207a0504
[Input] Add extra `shortcut_input` input processing step to process Unicode character input with Alt / Ctrl modifiers, after processing of shortcuts.
2022-04-05 13:46:45 +03:00
Hendrik Brucker
314430b868
Cleanup EditorNode and EditorData
...
Co-authored-by: Eric M <itsjusteza@gmail.com>
2022-03-30 20:12:26 +02:00
Haoyu Qiu
ccde2bf66f
Add property name style toggle to Inspector
2022-03-28 18:52:09 +08:00
Vitika9
46ca4737f1
Removed extra separator in absence of ChangeType and Rename
2022-03-18 14:42:48 +05:30
Aaron Franke
918b09cabc
Initialize bools in the headers in editor
2022-03-12 13:34:06 -06:00
kobewi
42078dec9f
Allow negative indexes in ItemList and PopupMenu
2022-03-12 01:14:03 +01:00
kobewi
2057ea2883
Remove duplicate editor settings definitions
2022-03-06 22:05:49 +01:00
Jakob Bouchard
6553f5c242
Convert _notification methods to switch - Chunk C
2022-02-16 13:03:05 -05:00
Rémi Verschelde
11572c6e30
Editor: Cleanup some includes dependencies
...
Removes some unnecessary includes from `editor_node.h`, and instead add
those where they're used.
Removes unnecessary `editor_node.h` includes in various editor classes.
Renames `dynamicfont` to `dynamic_font` in a couple files.
Misc cleanup while jumping through that rabbit hole.
2022-02-15 14:54:15 +01:00
trollodel
05b56f316d
Remove most EditorNode constructor parameters and fields
2022-02-14 14:16:24 +01:00
Hendrik Brucker
b396fd4eef
Improve compilation speed (forward declarations/includes cleanup)
2022-02-12 02:46:22 +01:00
Francois Belair
13a0d9177d
Implement drawing and editing all anim beziers
...
* Move bezier edit from track to button in toolbar
* Draw, edit all bezier curves simultaneously
* Add click on curve to select tracks
* Tie track editor's filter view to bezier editor
* Implement visibility and locking
* Fix editor spacing issues
* Fix track buttons spacing
* Add keyframe focus and (de)select all key handling
2022-02-09 19:48:22 -05:00
Rémi Verschelde
561fbe2175
Merge pull request #56923 from fire-forge/fix-create-root-node-scrolling
2022-02-08 13:17:35 +01:00
Rémi Verschelde
fc076ece3d
Revert "Add missing SNAME macro optimization to all theme methods call"
...
This reverts commit a988fad9a0
.
As discussed in #57725 and clarified in #57788 , `SNAME` is not meant to be used
everywhere but only in critical code paths. For theme methods specifically, it
was by design that only getters use `SNAME` and not setters.
2022-02-08 10:17:25 +01:00
jmb462
a988fad9a0
Add missing SNAME macro optimization to all theme methods call
2022-02-06 23:06:11 +01:00
Gilles Roudière
73e784de1e
Remove get_focus_owner() from Control, replaced by get_viewport()->gui_get_focus_owner()
2022-02-03 11:59:32 +01:00
Anilforextra
fc27636999
Vectors: Use clear() and has().
...
Use clear() instead of resize(0).
Use has() instead of "find(p_val) != -1".
2022-02-02 00:11:09 +05:45
kobewi
2cd0c3f8be
Improve 2D editor's right-click menu
2022-01-27 03:02:45 +01:00
Rémi Verschelde
e6170aae39
Merge pull request #55066 from trollodel/less_singletons_in_editornode
2022-01-20 22:29:17 +01:00
Rémi Verschelde
d681d99e12
Merge pull request #52134 from RandomShaper/fix_naming
2022-01-20 22:01:37 +01:00
trollodel
aa1102fc53
Store panels and docks singletons in their own classes
2022-01-20 20:13:26 +01:00
Pedro J. Estébanez
7b0ed2aa5e
Rename Variant::is_ref() to is_ref_counted()
2022-01-20 18:46:25 +01:00
Michael Alexsander
b3a82f8310
Make Scene dock menu button an actual `MenuButton`
2022-01-20 08:54:36 -03:00
fire540
f8dde5871c
Fix Create Root Node dialog expanding in favorites tab
2022-01-19 16:05:02 -06:00
kobewi
6630eb3b5a
Improve node pasting
2022-01-18 16:54:53 +01:00
Rémi Verschelde
5bc87025f4
Merge pull request #55809 from cdemirer/fix-reparenting-inherited-nodes
2022-01-18 10:54:59 +01:00
cdemirer
31a6ad83fd
Editor: Disallow reparenting inherited nodes
2022-01-18 00:37:17 +08:00
Rémi Verschelde
ae06511bf6
Merge pull request #55569 from KoBeWi/expand_all_was_a_mistake
2022-01-13 12:42:28 +01:00
kobewi
9e095bb68b
Fix some more wrong node names
2022-01-07 00:27:20 +01:00
SaracenOne
941ea38b9a
Prevent saving branches in foreign scenes
2022-01-06 15:04:12 +00:00
Rémi Verschelde
fe52458154
Update copyright statements to 2022
...
Happy new year to the wonderful Godot community!
2022-01-03 21:27:34 +01:00
kobewi
fe71a91de9
Move and rename Collapse/Expand All button
2021-12-23 22:19:56 +01:00
Rémi Verschelde
c972948c21
Merge pull request #55761 from KoBeWi/alt_hack
2021-12-21 11:35:14 +01:00
kobewi
bd6e9e0d6e
Allow to copy foreign nodes
2021-12-13 13:33:06 +01:00
Pedro J. Estébanez
18663aa305
Stop asuming a default value of NIL means there's no default
2021-12-11 14:03:48 +01:00
kobewi
acf563e59f
Add drag and drop for NodePaths
2021-12-09 18:50:57 +01:00
Nathan Franke
49403cbfa0
Replace String comparisons with "", String() to is_empty()
...
Also:
- Adds two stress tests to test_string.h
- Changes to .empty() on std::strings
2021-12-09 04:48:38 -06:00
Yuri Roubinsky
771491d358
Add `New Shader` option to the FileSystemDock popup menu.
2021-12-03 19:42:58 +03:00
Andreas Raddau
2b7eab7c87
Fix editor crash when expanding/collapsing empty scene tree
2021-12-01 20:18:20 +01:00
Hugo Locurcio
9c6032b46a
Fix scene tree dock icon not switching colors on theme change
...
This fixes the "three vertical dots" button at the right of the
scene tree dock when switching from a dark theme to a light theme
or vice versa.
2021-11-29 19:42:06 +01:00
Yuri Roubinsky
eabf8f5edf
Added `reset_size` method to `Control` and `Window` classes
2021-11-22 16:55:21 +03:00
Aaron Franke
3c0fdcc8ac
Use "enum class" for input enums
2021-11-12 15:37:54 -06:00
Hugo Locurcio
7cc33b14c9
Use Enter instead of F2 as an editor renaming shortcut on macOS
2021-11-12 20:50:23 +01:00
Rémi Verschelde
88c4380737
Modules: Make sure to include modules_enabled.gen.h where needed
2021-11-12 13:42:58 +01:00
kobewi
688f42c691
Fix node naming in scene tree dock
2021-11-11 22:30:41 +01:00
Pedro J. Estébanez
1806ec7c14
Unify determination of default property values
2021-11-07 15:27:47 +01:00
kobewi
e393c2a734
Add is_built_in() method to Resource
2021-11-04 12:45:58 +01:00
Rémi Verschelde
a2803f3d86
Merge pull request #54072 from KoBeWi/hrcr_is_ded
2021-11-03 17:31:48 +01:00
kobewi
07065d67e1
Infer shader type based on edited node
2021-11-03 15:27:38 +01:00
kobewi
de4f29f458
Remove node_hrcr hack
2021-10-28 01:43:34 +02:00
Rémi Verschelde
164dc11e04
Merge pull request #45699 from TokageItLab/implement-skeleton-editor-gizmo
...
Implement Skeleton Editor Gizmo
2021-10-06 21:11:20 +02:00
Silc Renew
f2e9867e9f
Implemented SkeletonEditorGizmo
...
Co-authored-by: Lyuma <xn.lyuma@gmail.com>
2021-10-07 01:07:46 +09:00
Rémi Verschelde
8f227e9da3
Merge pull request #51413 from KoBeWi/ 🚗
2021-10-04 20:31:47 +02:00
Lightning_A
c63b18507d
Use range iterators for `Map`
2021-09-30 15:09:12 -06:00
Hugo Locurcio
570cdc128f
Rename Node's `filename` property to `scene_file_path` for clarity
2021-09-30 16:50:25 +02:00
Rémi Verschelde
f410852f9c
Merge pull request #52172 from kleonc/scene-tree-dock-ensure-single-select
2021-09-29 09:15:43 +02:00
Aaron Franke
4fc639916c
Allow disabling the RegEx module in the editor
2021-09-15 12:08:53 -05:00
kobewi
d4f4cfbb40
Save branch as scene by dropping to filesystem
2021-09-09 00:59:10 +02:00
kleonc
5d25115e80
SceneTreeDock Ensure to deactivate multi edit when selection changes to a single node
2021-08-28 01:55:06 +02:00
reduz
5cecdfa8af
Entirely removes BIND_VMETHOD in favor of GDVIRTUAL
...
* `_gui_input`, `_input`, `_unhandled_input` and `_unhandled_key_input` are now regular C++ virutal functions.
* Everything else converted to GDVIRTUAL
* BIND_VMETHOD is gone, always use the new syntax from now on.
Creating `_gui_input` method and using the binder to register events will no longer work, simply override the virtual function now.
2021-08-23 08:10:13 -03:00
Lightning_A
285024e806
Focus the scene tree dock after hitting one of the "Create Root Node:" buttons
2021-08-11 18:15:24 -06:00
kobewi
6098403f07
Move the option to new menu
2021-08-12 01:34:52 +02:00
kobewi
e401cd58f1
Add option to not expand tree on node select
2021-08-12 00:36:56 +02:00
Yuri Roubinsky
5e5cd2495d
Added editor dialog for easily creating shaders.
2021-08-07 21:02:13 +03:00
Rémi Verschelde
ac3322b0af
Use const references where possible for List range iterators
2021-07-25 12:22:25 +02:00
Aaron Franke
4e6efd1b07
Use C++ iterators for Lists in many situations
2021-07-23 17:38:28 -04:00
Rémi Verschelde
6b1886f998
Merge pull request #50319 from nekomatata/optimize-node-path-check
...
Optimize NodePath update when renaming or deleting nodes in the editor
2021-07-22 12:13:10 +02:00
kobewi
31a81562a8
Fix Change Node Type after Add Node Here
2021-07-20 16:47:57 +02:00
Rémi Verschelde
b1eee24e26
Merge pull request #50517 from KoBeWi/ 🌳 💣
...
Assign value to property by dropping to scene tree
2021-07-19 18:08:47 +02:00
kobewi
5faf51a5aa
Assign value to property by dropping to scene tree
2021-07-19 16:16:50 +02:00
reduz
6631f66c2a
Optimize StringName usage
...
* Added a new macro SNAME() that constructs and caches a local stringname.
* Subsequent usages use the cached version.
* Since these use a global static variable, a second refcounter of static usages need to be kept for cleanup time.
* Replaced all theme usages by this new macro.
* Replace all signal emission usages by this new macro.
* Replace all call_deferred usages by this new macro.
This is part of ongoing work to optimize GUI and the editor.
2021-07-18 21:20:02 -03:00
kobewi
f4b361dd15
Add header theme type variations to labels
2021-07-13 15:42:09 +02:00
Rémi Verschelde
3c0c202bf6
Merge pull request #49725 from EricEzaM/multi-node-picking-fixes
...
Fixes for multi-node editing interactions.
2021-07-12 19:23:13 +02:00
PouleyKetchoupp
ff40c3f3c8
Optimize NodePath update when renaming or deleting nodes in the editor
...
Now the process uses a Map to lookup node pointers instead of iterating
over all modified node paths in a list and comparing them for each
property to check.
The process also avoids checking properties with empty node paths and
does an early exit on deleted nodes to avoid checking the node and its
descendants.
Also made a minor change in NodePath::rel_path_to() to avoid resizing a
Vector many times for long paths (with copy-on-write each time). Now
it's down to 2 resize calls in any case.
2021-07-09 11:42:39 -07:00
kobewi
36434cb2e6
Fix node list with Add Node Here
2021-07-08 00:52:49 +02:00
Hugo Locurcio
99909cb4f7
Add a root Node3D automatically if absent when adding preview sun and sky
...
This makes for a smoother prototyping process compared to displaying
an error message.
2021-07-07 01:59:46 +02:00
PouleyKetchoupp
62ce81ec15
Coding style fix in editor NodePath update
...
Added r_ prefix for reference arguments that can be modified.
2021-06-30 11:50:40 -07:00
Rémi Verschelde
dfdde2c598
Merge pull request #49812 from nekomatata/node-path-editor-update
...
NodePath properly updated in the editor in more cases when nodes are moved or renamed
2021-06-29 12:51:38 +02:00
PouleyKetchoupp
3e4e530523
NodePath properly updated in the editor in more cases
...
Fix more cases of node path needing an update when nodes are renamed or
moved in the editor.
Built-in node properties:
Before, node paths were checked only for script export variables. Now
all properties are checked from the node, which includes built-in node
properties.
Allows proper node path updates for nodes like remote transform, physics
joints, etc.
Arrays and dictionaries:
Node paths nested in array and dictionary properties are now also
updated in the editor.
Also update the documentation to be clear about node path update in the
editor and at runtime.
Co-authored-by: latorril <latorril@gmail.com>
2021-06-28 09:28:29 -07:00
Lightning_A
e28fd07b2b
Rename `instance()`->`instantiate()` when it's a verb
2021-06-19 20:49:18 -06:00
Eric M
83cb48e69e
Fixes for multi-node editing interactions.
...
1. When having 2 nodes selected, deselecting one in the ScemeTreeDock would keep the inspector in MultiNodeEdit rather than editing the one remaining node directly. This is now fixed. Closes #49451
2. In the Node3D editor, Shift-Selecting a region (drag selecting) would *deselect* nodes which were already selected, and select ones which were not, essentially inverting the selection. This is now fixed - shift-drag-selecting will only add nodes to the selection. To deselect, individual nodes can be clicked on. I am not sure if there is an issue open for this - it was a bug I found while testing other changes.
3. Other minor code cleanup.
2021-06-19 13:07:42 +10:00
Rémi Verschelde
80d057269f
Revert "Fix SceneTreeDock::_selection_changed to handle to single selection from Multiple Selection"
2021-06-16 02:12:01 +02:00
Aitor Cereceto
1ef9b8645c
[49451] fix: Control _selection_changed from Multiple Selection
2021-06-10 12:04:07 +02:00
kobewi
8e8398209e
Don't remap resources belonging to instance
2021-06-07 12:52:05 +02:00
trollodel
bca0d36fe6
Improve TreeItem API and allow to move nodes
2021-05-17 22:06:46 +02:00
Rémi Verschelde
0ec809462e
Merge pull request #47530 from likeich/add_instance_child_shortcut
...
Adds command+shift+a shortcut to instance a scene
2021-05-07 01:43:41 +02:00
Kyle
e168baf433
Remove extra separator
...
Removes an extra separator when Scene Tree Editing is disabled. Discussed in #48518
2021-05-06 17:37:12 -04:00
Kyle
10d5d4d3cd
Fixed cut/copy/paste visibility
...
Fixes #48514 by moving the visibility of these buttons into their own if statement that depends on if scene tree editing is allowed. Previously it was under the script editing setting which is unexpected as it works with nodes and the scene tree.
2021-05-06 16:01:36 -04:00
reduz
90056460ad
Implement Particle Trails
...
-Enable the trails and set the length in seconds
-Provide a mesh with a skeleton and a skin
-Or, alternatively use one of the built-in TubeTrailMesh/RibbonTrailMesh
-Works deterministically
-Fixed particle collisions (were broken)
-Not working in 2D yet (that will happen next)
2021-04-30 17:38:02 -03:00
Rémi Verschelde
f41e7779fd
Merge pull request #47611 from Bhu1-V/PR/instance-scene-fix
2021-04-19 10:38:56 +02:00
Bhuvan Vemula
9eb3546f38
instance-scene: make parent as edited_scene if no parent selected.
2021-04-17 19:16:18 +05:30
Hugo Locurcio
6d2f5ee244
Add a tooltip to document performance issues of the Remote scene tree
2021-04-12 17:49:51 +02:00
Rafał Mikrut
504bc5cc67
Fix crashes in *_input functions
2021-04-05 08:52:21 +02:00
Rémi Verschelde
4b6e9f3157
Merge pull request #46991 from madmiraal/rename-invert-reverse
...
Rename Array.invert() to Array.reverse()
2021-04-01 13:32:22 +02:00
Kyle
ea5445655c
Add ctrl+shift+a to instance scene in scenetree dock
...
Adds another key shortcut to instance a scene in the scentree dock. Complements ctrl+a to add a node.
2021-03-31 20:28:34 -04:00
Aaron Franke
10d7fccb54
Rename ButtonList enum and members to MouseButton
2021-03-23 07:13:23 -04:00
Hugo Locurcio
4c8f458c90
Tweak error messages for the Save Branch as Scene editor option
...
See https://github.com/godotengine/godot-proposals/issues/2433 .
2021-03-21 15:50:37 +01:00
Marcel Admiraal
755c70b871
Rename Array.invert() to Array.reverse()
...
Does the same internally for List and Vector<>, which includes all
PackedArray types.
2021-03-21 10:20:08 +00:00
Rémi Verschelde
27dea9366f
Merge pull request #46510 from hilfazer/nested_scene_duplication_4_0
...
Support for duplication of nested instanced scenes
2021-03-11 21:39:43 +01:00
hilfazer
72134a7f2a
Support for duplication of nested instanced scenes
2021-03-11 19:26:15 +01:00
Rémi Verschelde
ec7053259b
Merge pull request #41437 from KoBeWi/put_it_here
...
Allow to create a node at specific position
2021-03-01 15:48:53 +01:00
Oliver Dick
0559fc58d1
SceneTreeDock: Changed "Save Branch as Scene" to make use of Node::duplicate_from_editor, which is also used by "Duplicate" function of the SceneTreeDock
...
- Removed Node::duplicate_and_reown method as it is not used anymore
2021-02-28 17:19:01 +01:00
Tomasz Chabora
8df22a03c4
Allow to create a node at specific position
2021-02-26 14:40:28 +01:00
hilfazer
e28cc34db8
Prevent 'Change Type' on nodes from an instanced scene
2021-02-26 07:18:21 +01:00
Rémi Verschelde
72f74eb29e
Merge pull request #45943 from KoBeWi/YEEEET
...
Remove Merge From Scene
2021-02-18 15:15:19 +01:00
kobewi
6146d95a9d
Fix internal resource detecting when pasting nodes
2021-02-13 02:57:29 +01:00
kobewi
6b4faa355c
Remove Merge From Scene
2021-02-13 01:35:03 +01:00
Rémi Verschelde
e7ab3a4132
Merge pull request #34892 from KoBeWi/copy-pasta_v7
...
Yet another node copy-paste PR
2021-02-12 23:16:31 +01:00
kobewi
36494e8526
Duplicate resources pasted to other scenes
2021-02-12 22:38:38 +01:00
reduz
28537d8c84
Fix LineEdit minimum width
...
-Changed theme setting name to make more sense of what it does
-Reduced amount of minimum characters, so minimum size is smaller.
2021-02-12 17:04:38 +01:00
Tomasz Chabora
abe548d76d
Add node copy-paste
2021-02-09 20:53:06 +01:00
kobewi
05f29b16b6
Change how editable children data is stored
...
Co-authored-by: hilfazer <az13337@gmail.com>
2021-01-17 23:37:40 +01:00
kobewi
881c8da0a0
Unify single and multiscene instancing
2021-01-15 20:13:09 +01:00
Pedro J. Estébanez
6fbe0a494b
Fix cases of resources destroyed too early
2021-01-06 23:40:50 +01:00
kobewi
f5d51288b8
Properly edit the instanced node in the inspector
2021-01-05 14:14:45 +01:00
Rémi Verschelde
b5334d14f7
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 🎆
2021-01-01 20:19:21 +01:00
Marcel Admiraal
5b937d493f
Rename empty() to is_empty()
2020-12-28 10:39:56 +00:00
Marcel Admiraal
4b8b803931
Rename Control margin to offset
2020-12-23 06:25:56 +00:00
Marcel Admiraal
8509c8c8fc
Rename AcceptDialog get_ok() to get_ok_button()
...
Also renames:
- AcceptDialog add_cancel() to add_cancel_button()
- ConfirmationDiaglog get_cancel() to get_cancel_button()
2020-12-14 18:43:52 +00:00
Tomasz Chabora
2c048ea164
Cleanup unused engine code
2020-12-09 12:12:36 +01:00
Aaron Franke
1b348b3c17
Remove connect *_compat methods
2020-12-05 17:56:47 -05:00
Rémi Verschelde
a09846e015
Merge pull request #42109 from EricEzaM/PR/input-and-shortcuts-rework
...
Shortcuts rework - fixed issues with input propagation and triggering of unwanted shortcuts.
2020-11-28 09:04:25 +01:00
bruvzg
99666de00f
[Complex Text Layouts] Refactor Font class, default themes and controls to use Text Server interface.
...
Implement interface mirroring.
Add TextLine and TextParagraph classes.
Handle UTF-16 input on macOS and Windows.
2020-11-26 14:25:48 +02:00
Eric M
efe5c250d5
Implement new shortcuts system.
...
unhandled_key_input changed to unhandled_button_input. Controls can set a 'shortcut_context' which they can then use to determine if their shortcuts should be triggered or not, based on if the viewport's focused GUI control is a child of their 'shortcut context'.
2020-11-23 21:14:26 +10:00
Eric M
9d7d20a978
Added accept_event() calls for SceneTreeDock and BaseButton
2020-11-23 21:14:25 +10:00
Marcus Brummer
3629651ef8
Fixed deletion of nodes with exported node paths
2020-11-18 00:12:32 +01:00
Rémi Verschelde
b59a6fc40e
Merge pull request #38201 from Calinou/editor-f2-rename-node
...
Require Ctrl for switching between editors, bind F2 to Rename Node
2020-11-17 15:09:39 +01:00
Rémi Verschelde
d107fd4c9e
SceneTree: Fix reparent crash with animation tracks renaming disabled
...
This check was there since the first commit in 2014, but a later feature added in 2018
with #17717 did not properly update the code while adding non animation-related code
in `perform_node_renames`.
Fixes #40532 .
2020-11-13 13:41:33 +01:00
reduz
127458ed17
Reorganized core/ directory, it was too fatty already
...
-Removed FuncRef, since Callable makes it obsolete
-Removed int_types.h as its obsolete in c++11+
-Changed color names code
2020-11-07 20:17:12 -03:00
Gilles Roudière
6386bf60ea
Fix error on attaching script
2020-10-26 23:26:44 +01:00
Gabriel Van Eyck
a22275c8a2
Keep 'Editor Description' metadata when changing a Node's type
...
Also copy edit group/lock when replacing a Node3D
2020-10-18 11:22:54 -07:00
reduz
351a122029
Add ability to bind an unbind arguments to Callable.
2020-10-09 19:43:22 -03:00
Marcus Brummer
fdec257e58
Fixed renaming/moving of nodes with exported NodePaths
2020-09-25 16:33:58 +02:00
booer
3d69385655
Fix changing icons' colors when switch dark and light theme
2020-09-17 09:33:19 +07:00
SkyJJ
280d4e2965
Fix TTR misuse
2020-07-24 15:15:23 +02:00
Michael Alexsander
5643d2e3fe
Small naming and tooltip tweaks
2020-07-23 20:17:43 -03:00
Nehluxhes
c85d04a771
Remove duplicate node update call
2020-07-21 19:47:44 +02:00
Stijn Hinlopen
526e060b73
Resize dialogs (FileDialog, EditorFileDialog, Reparent, SceneTreeDialog and resource depency dialogs).
2020-07-14 14:35:22 +02:00
Rémi Verschelde
84c68ebb11
Merge pull request #40034 from hinlopen/fix-new-node-crash
...
Fix: Crash when trying to add new node
2020-07-02 16:26:40 +02:00
Stijn Hinlopen
81b6000812
Fix crash by calculating wrong size of array.
2020-07-02 10:58:41 +02:00
Juan Linietsky
f0e320decf
Fix some popups menu missing screen transform.
...
Closes #38591
2020-07-01 14:44:19 -03:00
Rémi Verschelde
435a4c117e
Merge pull request #39954 from hinlopen/delete-nodes-msg
...
Delete Nodes message
2020-07-01 15:17:38 +02:00
Stijn Hinlopen
8b046ed477
Deleting multiple nodes displays correct message.
2020-07-01 12:59:55 +02:00
Stijn Hinlopen
ec86d32684
Add Control to preferred types
2020-06-30 12:00:55 +02:00
Hugo Locurcio
31b7f02a29
Remove ToolButton in favor of Button
...
ToolButton has no redeeming differences with Button;
it's just a Button with the Flat property enabled by default.
Removing it avoids some confusion when creating GUIs.
Existing ToolButtons will be converted to Buttons, but the Flat
property won't be enabled automatically.
This closes https://github.com/godotengine/godot-proposals/issues/1081 .
2020-06-19 20:49:49 +02:00
Michael Alexsander
f30e4dbf54
Fix scene tree showing up when the root selection is present
2020-06-09 19:06:15 -03:00
Andrii Doroshenko (Xrayez)
52f3cfca6f
Prevent crash attaching a script with no languages registered
2020-05-31 21:01:42 +03:00
Michael Alexsander
d015e4d6fc
Keep "lock" metadata when changing a Node's type, if applicable
2020-05-19 10:42:15 -03:00
Dominik 'dreamsComeTrue' Jasiński
7f5c81c32f
Replace 'add_child_below_node' with 'add_sibling' in Node
...
Fixes : #19642
2020-05-15 22:02:00 +02:00
Rémi Verschelde
0ee0fa42e6
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
2020-05-14 21:57:34 +02:00
Rémi Verschelde
0be6d925dc
Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks
...
Which means that reduz' beloved style which we all became used to
will now be changed automatically to remove the first empty line.
This makes us lean closer to 1TBS (the one true brace style) instead
of hybridating it with some Allman-inspired spacing.
There's still the case of braces around single-statement blocks that
needs to be addressed (but clang-format can't help with that, but
clang-tidy may if we agree about it).
Part of #33027 .
2020-05-14 16:54:55 +02:00
Rémi Verschelde
62bf8b4dd6
Merge pull request #38594 from Calinou/rename-clear-script-action
...
Rename the Clear Script editor action to Detach Script
2020-05-11 11:31:31 +02:00
Rémi Verschelde
69de7ce38c
Style: clang-format: Disable AllowShortCaseLabelsOnASingleLine
...
Part of #33027 .
2020-05-10 13:13:54 +02:00
Rémi Verschelde
e956e80c1f
Style: clang-format: Disable AllowShortIfStatementsOnASingleLine
...
Part of #33027 , also discussed in #29848 .
Enforcing the use of brackets even on single line statements would be
preferred, but `clang-format` doesn't have this functionality yet.
2020-05-10 13:12:16 +02:00
Hugo Locurcio
7fc0e38e92
Rename the Clear Script editor action to Detach Script
...
This makes it more obvious that the script won't be modified
in any way.
See comments in #27813 .
2020-05-09 19:09:11 +02:00
Dominik 'dreamsComeTrue' Jasiński
278259b433
Proper naming and ordering when Duplicate nodes
...
Fixes : #38162
2020-05-01 10:45:55 +02:00
Rémi Verschelde
fdf58a5858
Rename InputFilter back to Input
...
It changed name as part of the DisplayServer and input refactoring
in #37317 , with the rationale that input no longer goes through the
main loop, so the previous Input singleton now only does filtering.
But the gains in consistency are quite limited in the renaming, and
it breaks compatibility for all scripts and tutorials that access
the Input singleton via the scripting language. A temporary option
was suggested to keep the scripting singleton named `Input` even if
its type is `InputFilter`, but that adds inconsistency and breaks C#.
Fixes godotengine/godot-proposals#639 .
Fixes #37319 .
Fixes #37690 .
2020-04-28 15:19:49 +02:00
Hugo Locurcio
79e4e26738
Require Ctrl for switching between editors, bind F2 to Rename Node
...
Switching between editors now requires holding Ctrl to avoid
conflicts with the new F2 shortcut.
The asset library can now be accessed by pressing Ctrl + F4
on Windows and Linux, or Alt + 4 on macOS.
This partially addresses #38139 .
2020-04-25 15:48:08 +02:00
Michael Alexsander
f1244ce944
Fix "Local" button not being pressed in the Scene dock on first run
2020-04-21 15:03:42 -03:00
Tomasz Chabora
c1023157eb
Remove Node.get_position_in_parent()
2020-04-06 01:19:20 +02:00
lupoDharkael
95a1400a2a
Replace NULL with nullptr
2020-04-02 13:38:00 +02:00
Juan Linietsky
a6f3bc7c69
Renaming of servers for coherency.
...
VisualServer -> RenderingServer
PhysicsServer -> PhysicsServer3D
Physics2DServer -> PhysicsServer2D
NavigationServer -> NavigationServer3D
Navigation2DServer -> NavigationServer2D
Also renamed corresponding files.
2020-03-27 15:21:27 -03:00
Rémi Verschelde
d1acbbce7f
Rename more 2D and 3D nodes to follow convention
...
Rename editor plugins to match the new node names.
2020-03-27 16:26:34 +01:00
Juan Linietsky
eaae4b6408
Renamed 2D and 3D nodes to make their types explicit
...
Fixes #30736 .
2020-03-27 14:54:04 +01:00
Juan Linietsky
c7b4dcae2f
Open sub-windows as embedded if the OS does not support them
2020-03-26 15:49:43 +01:00
Juan Linietsky
441f1a5fe9
Popups are now windows also (broken!)
2020-03-26 15:49:42 +01:00
Juan Linietsky
4758057f20
Working multiple window support, including editor
2020-03-26 15:49:40 +01:00
Juan Linietsky
8e6960a69e
Refactored input, goes all via windows now.
...
Also renamed Input to InputFilter because all it does is filter events.
2020-03-26 15:49:39 +01:00
Juan Linietsky
9e08742de8
Added a Window node, and made it the scene root.
...
Still a lot of work to do.
2020-03-26 15:49:38 +01:00
Juan Linietsky
f8a79a97c7
Effective DisplayServer separation, rename X11 -> LinuxBSD
2020-03-26 15:49:34 +01:00
Juan Linietsky
4396e98834
Refactored Input, create DisplayServer and DisplayServerX11
2020-03-26 15:49:32 +01:00
Rémi Verschelde
cb282c6ef0
Style: Set clang-format Standard to Cpp11
...
For us, it practically only changes the fact that `A<A<int>>` is now
used instead of the C++03 compatible `A<A<int> >`.
Note: clang-format 10+ changed the `Standard` arguments to fully
specified `c++11`, `c++14`, etc. versions, but we can't use `c++17`
now if we want to preserve compatibility with clang-format 8 and 9.
`Cpp11` is still supported as deprecated alias for `Latest`.
2020-03-17 07:36:24 +01:00
Rémi Verschelde
48ed841dd0
Signals: Fix some regressions from #36426
...
- Fix `callable_mp` bindings to methods which used to have default
arguments passed to `bind_method`. We now have to re-specify them
manually when connecting.
- Re-add `GroupsEditor::update_tree` binding.
- Misc code quality changes along the way.
2020-03-03 11:44:06 +01:00
Mateo Dev .59
b8f08b42e7
Signals: Fix signals error prints for the new signal system
2020-02-28 14:24:09 +01:00
Rémi Verschelde
f742dabafe
Signals: Manually port most of remaining connect_compat uses
...
It's tedious work...
Some can't be ported as they depend on private or protected methods
of different classes, which is not supported by callable_mp (even if
it's a class inherited by the current one).
2020-02-28 14:24:09 +01:00
Rémi Verschelde
01afc442c7
Signals: Port connect calls to use callable_mp
...
Remove now unnecessary bindings of signal callbacks in the public API.
There might be some false positives that need rebinding if they were
meant to be public.
No regular expressions were harmed in the making of this commit.
(Nah, just kidding.)
2020-02-28 14:24:09 +01:00
Fabio Alessandrelli
cbc450c0e5
Huge Debugger/EditorDebugger refactor.
2020-02-21 11:12:03 +01:00
Juan Linietsky
69c95f4b4c
Reworked signal connection system, added support for Callable and Signal objects and made them default.
2020-02-20 08:24:50 +01:00
follower
3cccbdf995
Fix typo/spelling: "exisiting" -> "existing"
...
Specifically: "exisiting_script_removable" -> "existing_script_removable"
2020-02-18 03:10:45 +13:00
Juan Linietsky
867d073b98
Changed logic and optimized ObjectID in ObjectDB and Variant, removed RefPtr.
2020-02-15 08:36:04 -03:00
Juan Linietsky
3f335ce3d4
Texture refactor
...
-Texture renamed to Texture2D
-TextureLayered as base now inherits 2Darray, cubemap and cubemap array
-Removed all references to flags in textures (they will go in the shader)
-Texture3D gone for now (will come back later done properly)
-Create base rasterizer for RenderDevice, RasterizerRD
2020-02-11 11:53:26 +01:00
Marcel Admiraal
5af3b4ca27
Remove duplicate ERR_PRINT macro.
2020-02-05 11:13:24 +01:00
volzhs
f20b3ff503
Fix error when closing Attach Node Script window
2020-01-02 12:31:31 +01:00
Rémi Verschelde
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
Haoyu Qiu
078c0d75f2
Cleans up headers included in editor_node.h
2019-12-24 21:46:05 +08:00
Shivansh Anand
9fee540e6e
fixes #33439 . The feature now changes according to the feature profile.
2019-11-11 01:13:56 +05:30
Tomasz Chabora
4ed2abb0bf
Another scene tree dock menu cleanup
2019-11-04 16:45:16 +01:00
Edi Cikovic
d14d57120d
Fix Batch Rename not opening
2019-11-01 13:03:57 +01:00
Anubhab Ghosh
4972ef801a
Add clear menu entries for extending and replacing scripts
2019-10-23 01:57:17 +05:30
Bojidar Marinov
cfc779ccf0
Fix "Make Scene Root" deleting previous root whenever focusing another scene
...
Hopefully fixes #24484 and fixes #27222 .
2019-09-28 15:29:09 +03:00
Rémi Verschelde
8868fd2d28
Merge pull request #31971 from aole/placeholder-confirmation-dialog-for-editable-children
...
Placeholder confirmation dialog for editable children
2019-09-27 22:02:15 +02:00
Bhupendra Aole
cb528e31d9
Placeholder dialog for editable children
...
Fire placeholder confirmation dialog box when editable children option is already checked.
Fixes #28863
2019-09-27 13:49:55 -04:00
Rémi Verschelde
de03ee94cc
Merge pull request #32296 from BenjaminRiley/save-original-scene-after-save-as-branch
...
'Save Branch as Scene' also saves original scene
2019-09-25 10:07:39 +02:00
Benjamin Riley
2115bced93
'Save Branch as Scene' adds to undo history
...
When saving a branch as a scene, can now undo replacing the original branch with the new branch scene. 'Save Branch as Scene' previously would not mark the original scene as changed, and therefore no prompt would appear if the scene was closed immediately after saving the branch.
The new branch scene is not deleted when undo-ing.
2019-09-25 17:08:08 +10:00
Rémi Verschelde
2f52d73c21
Merge pull request #31925 from bojidar-bg/31855-overriden-properties-docs
...
Add overriden properties to the documentation
2019-09-24 11:53:43 +02:00
Tomasz Chabora
48ca6ec657
Perform reparent if position changes
2019-09-22 12:44:59 +02:00
Rémi Verschelde
769a9c521a
Merge pull request #32094 from Calinou/improve-delete-node-confirmation-2
...
Improve the node deletion confirmation message
2019-09-20 23:17:29 +02:00
Michael Alexsander Silva Dias
e5d9c7dcb0
Fix some errors while reparenting nodes in the Scene dock
2019-09-14 21:07:55 -03:00
Hugo Locurcio
fd1b5cc39f
Improve the node deletion confirmation message
...
- Add "the root node" in the beginning if the selected node
is the current scene's root
- Add "and its children" at the end of the message if the node
has at least one child and is not an instanced scene
2019-09-11 23:29:34 +02:00
Bojidar Marinov
6c4407bae4
Add overriden properties to the documentation
...
Fixes #31855
2019-09-04 15:21:40 +03:00
Hugo Locurcio
284548c4b7
Improve the node deletion confirmation message
...
The confirmation message now displays the number of nodes to delete,
or the node's name if only one node is selected.
2019-09-03 23:14:59 +02:00
thimenesup
79a4930501
Expose SceneTreeDock::get_tree_editor()
...
This can be useful for plugins that rely on some signals emitted by it, Like my Networked Scene Editor plugin https://github.com/thimenesup/GodotNetworkedSceneEditor
2019-08-20 18:06:21 +02:00
Braden Bodily
71d71d55b5
Replace 'ERR_EXPLAIN' with 'ERR_FAIL_*_MSG' in 'core/' and 'editor/'
...
Condensed some if and ERR statements. Added dots to end of error messages
Couldn't figure out EXPLAINC. These files gave me trouble: core/error_macros.h, core/io/file_access_buffered_fa.h (where is it?),
core/os/memory.cpp,
drivers/png/png_driver_common.cpp,
drivers/xaudio2/audio_driver_xaudio2.cpp (where is it?)
2019-08-17 12:33:15 +02:00
Tomasz Chabora
9fbba73dd5
Improve node Change Type option
2019-08-09 16:31:31 +02:00
qarmin
aab8da25ad
Fix some code found by Coverity Scan and PVS Studio
2019-07-23 09:14:31 +02:00
Rémi Verschelde
3aeca70659
Merge pull request #30697 from bojidar-bg/6067-pale-customtype-script
...
Make custom types more subtle and more useful
2019-07-20 11:49:52 +02:00
Bojidar Marinov
4f72178868
Make custom types more subtle and more useful
...
Implements #6067 (aaronfranke's idea)
Fixes #26980
2019-07-19 22:33:58 +03:00
Julian Murgia
249fdd9f80
Adds contextual item in scene tree dock to wrap selection in a new node
...
Fixes #20187
2019-07-19 16:46:13 +02:00
hbina085
e9c1e5aa7c
Fix crash when changing Node type
...
Prevent the application from crashing by simply checking if current "selection" is not null before accessing it.
Fixes #30493
2019-07-15 09:17:14 -04:00
Kanabenki
6eb6895db8
Sort selected nodes in scene tree before duplication
2019-07-06 14:51:24 +02:00
Rémi Verschelde
a9ad1e6692
Merge pull request #30321 from KoBeWi/underdup
...
Smarter node placement after duplicating
2019-07-05 09:56:31 +02:00
Rémi Verschelde
26cff6ff92
Merge pull request #30316 from sparkart/master
...
Reparent selection without flattening
2019-07-05 09:56:06 +02:00
LikeLakers2
d2e915623a
SceneTreeDock will reset the ScriptCreateDialog's inheritance base type
2019-07-04 16:36:24 -04:00
Tomasz Chabora
0cd9a65aa4
Smarter node placement after duplicating
2019-07-04 18:16:19 +02:00
Emmanuel Barroga
839c3bd1bf
Resolves Issue #30271 Reparent selection without flattening
...
When reparenting a multi-selection via drag and drop, the hierarchy was flattened. This change resolves that issue.
2019-07-04 06:41:21 -07:00
Rémi Verschelde
e8b483ce21
Merge pull request #19936 from Xrayez/collapse-button
...
Expand/collapse nodes recursively in scene tree dock
2019-07-02 10:02:24 +02:00
Rémi Verschelde
0268a4869d
Merge pull request #30196 from LikeLakers2/scenetreedock-script-creation-bugfix
...
SceneTreeDock will now only attach scripts to the selected node if the ScriptCreateDialog was opened from the SceneTreeDock
2019-07-01 21:13:46 +02:00
qarmin
3c154eb93b
Remove unnecessary code and add some error explanations
2019-07-01 12:59:42 +02:00
LikeLakers2
410054db38
SceneTreeDock will now only attach scripts to the selected node if the ScriptCreateDialog was opened from the SceneTreeDock
2019-06-29 23:19:45 -04:00
Rémi Verschelde
ddba2e7b47
Merge pull request #26748 from raphael10241024/instance
...
Fix editor crash when saving a scene containing an inherited scene instance.
2019-06-19 16:28:15 +02:00
Cameron Reikes
63c2d1bce1
Hide remote scene tree when adding new scene
...
- Don't show create_root_dialog if remote scenetree visible
- Hide create_root_dialog on showing of remote scenetree
Fixes #29288
2019-05-30 23:56:08 -07:00
Rémi Verschelde
500fe89600
Merge pull request #28349 from KoBeWi/sprite_editor_mistake_eraser
...
Add undo for Sprite Editor
2019-05-28 18:39:14 +02:00
Rémi Verschelde
d4811e6897
Merge pull request #28862 from KoBeWi/editable_clones
...
Keep editable children on node duplicate
2019-05-28 18:38:46 +02:00
Rémi Verschelde
b71254a861
Merge pull request #28392 from KoBeWi/reparent_alt
...
Allow to keep local transform when reparenting in editor
2019-05-28 17:31:27 +02:00
Tomasz Chabora
7e9e023e5f
Keep editable children on node duplicate
2019-05-28 16:53:24 +02:00
Rémi Verschelde
6273e4d76d
Merge pull request #26487 from matzebond/master
...
Auto-expand current node type when changing node type
2019-05-28 12:52:21 +02:00