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
Rémi Verschelde
47f00925dc
Merge pull request #28454 from homer666/popup-centered-maxsize
...
Add `popup_centered_clamped()` method to Popup
2019-05-28 11:36:41 +02:00
Matthias Schmitt
6b7c8ef327
Auto-expand current node type when replace node
2019-05-24 00:13:41 +02:00
Michael Alexsander Silva Dias
587986f654
Properly update script button when undoing a script addition
...
Fixes #28870 .
2019-05-13 22:58:41 -03:00
Michael Alexsander Silva Dias
699140000c
Revert "Merge pull request #28715 from YeldhamDev/inherent_scene_close_empty"
...
This reverts commit 0f8356d439
, reversing
changes made to 7b7a664a97
.
2019-05-08 00:46:40 -03:00
Michael Alexsander Silva Dias
648cc7c0f5
Make editor close empty scene when creating an inherited one
...
Fixes #28654 .
2019-05-06 02:01:01 -03:00
Rémi Verschelde
9591e587fe
Merge pull request #26022 from lupoDharkael/create-script
...
Add class tree selection to script inheritance selection
2019-04-30 13:43:53 +02:00
homer666
80e9e93e27
Add Popup::popup_centered_clamped method
...
- Also replace redundant duplicate code in editor dialogs with calls to popup_centered_clamped()
2019-04-30 05:35:43 +10:00
Tomasz Chabora
9dba47a743
Allow to keep local transform when reparenting
2019-04-29 19:24:12 +02:00
Tomasz Chabora
a93ff8d210
Add undo for Sprite Editor
2019-04-23 21:10:44 +02:00
Rémi Verschelde
04efa59868
Merge pull request #28292 from homer666/merge-from-scene-stuff
...
Minor "Merge From Scene" improvements
2019-04-23 12:08:55 +02:00
Rémi Verschelde
a342131eba
Merge pull request #27673 from qarmin/small_fixes
...
Small fixes, mostly duplicated code
2019-04-22 12:00:34 +02:00
homer666
36f955e4f3
Minor "Merge From Scene" improvements
2019-04-22 12:01:20 +10:00
Andrii Doroshenko (Xrayez)
824f68483f
Add ability to expand/collapse nodes recursively in scene tree dock
...
To expand or collapse the node recursively (all children), hold `Shift`
button and click on the node's folding arrow.
The popup menu option `Expand/Collapse All" checks whether any node
is expanded or collapsed first and performs the opposite operation. That
means if any children node is collapsed, it will first expand all nodes
at selected node.
Co-authored-by: Rikhardur Bjarni Einarsson (MunWolf) badulf96@gmail.com
2019-04-21 13:50:30 +03:00
JFonS
42043a22e8
Add grouping to 3D editor
2019-04-17 18:24:28 +02:00
Rémi Verschelde
0d87535dd7
Merge pull request #28011 from KoBeWi/rmb_housework
...
Small cleanup to SceneTree dock context menu
2019-04-15 11:46:01 +02:00
Rémi Verschelde
adb41c8bee
Merge pull request #26678 from YeldhamDev/hide_addscript_multiselected
...
Hide "Add Script" button in Scene dock when multiple nodes are selected
2019-04-15 11:42:09 +02:00
Tomasz Chabora
d532a3f710
Small cleanup to SceneTree context menu
2019-04-14 14:04:04 +02:00
Michael Alexsander Silva Dias
27e500d4b3
Hide "Add Script" button in Scene dock when multiple nodes are selected
2019-04-13 11:05:10 -03:00
Gio Aleman
f707266b52
Fixed scene tree bug when scripts are disabled
2019-04-12 11:44:45 -04:00
Tomasz Chabora
9432e06e05
Focus SceneTree dock after creating new node
2019-04-10 17:01:42 +02:00
Juan Linietsky
a20235aeb0
Add ability to edit editor feature profiles
...
Allows enabling/disabling parts of the editor and storing/loading profiles for that.
2019-04-08 19:18:51 -03:00
qarmin
856a8226a5
Small fixes, mostly dupicated code
2019-04-08 11:03:37 +02:00
Rémi Verschelde
612a109b81
Merge pull request #27228 from Kanabenki/preserve-binds-change-node
...
Preserve extra arguments for connected signals when changing node type
2019-04-02 11:30:45 +02:00
Rémi Verschelde
3c797248d0
Merge pull request #26970 from KoBeWi/custom_node_is_now_other_node
...
Changed 'Custom Node' to 'Other Node' to be less confusing
2019-04-01 10:13:27 +02:00
Kanabenki
a1e7febbb3
Keep binds for connected signals when changing node type
2019-03-19 10:21:52 +01:00
yakun.zhang
e25a50d690
add check for inherted nodes when instance
2019-03-18 19:40:36 +08:00
Rémi Verschelde
c1fae20400
Merge pull request #26706 from YeldhamDev/multinode_scriptclear_fix
...
Fix clearing scripts while multiple nodes are selected
2019-03-16 11:09:40 -07:00
Tomasz Chabora
c1ce5b87b4
Changed 'Custom Node' to 'Other Node' to be less confusing
2019-03-12 16:12:14 +01:00
George Marques
25f9aee005
Allow class_name scripts to have nested inheritance
2019-03-09 00:47:27 -03:00
Michael Alexsander Silva Dias
d3042d162d
Fix clearing scripts while multiple nodes are selected
2019-03-06 09:58:47 -03:00
Tomasz Chabora
63a2475f0f
Allow to attach script when there's no 'selected node', but selection exists
2019-03-05 16:28:39 +01:00
Michael Alexsander Silva Dias
3ef8238c1c
Make translatable some undo/redo operations in the editor
2019-02-21 16:41:01 -03:00
marxin
8d51618949
Add -Wshadow=local to warnings and fix reported issues.
...
Fixes #25316 .
2019-02-20 19:44:12 +01:00
lupoDharkael
76560c8afa
Add class tree selection to script inheritance selection
2019-02-18 19:16:09 +01:00
Juan Linietsky
cd45f05f7e
Forbid making root on inherited scenes, closes #24484
2019-01-22 13:49:03 -03:00
Juan Linietsky
e0336996ce
Add some checks to avoid disaster when making a node the scene root. Fixes #24484
2019-01-17 15:26:38 -03:00
Juan Linietsky
6f884cc884
Use SceneTreeDock to replace particles node properly, fixes #24162
2019-01-14 13:41:54 -03:00