Commit Graph

552 Commits

Author SHA1 Message Date
ea7b497065 Replace more occurrences of NULL with nullptr 2020-04-02 14:56:01 +02:00
95a1400a2a Replace NULL with nullptr 2020-04-02 13:38:00 +02:00
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
b3080bc2f4 Popups have also been converted to windows
Controls using the old modal API have been replaced to use popups.
2020-03-26 15:49:44 +01:00
c7b4dcae2f Open sub-windows as embedded if the OS does not support them 2020-03-26 15:49:43 +01:00
441f1a5fe9 Popups are now windows also (broken!) 2020-03-26 15:49:42 +01:00
4758057f20 Working multiple window support, including editor 2020-03-26 15:49:40 +01:00
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
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
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
33b5c57199 Variant: Added 64-bit packed arrays, renamed Variant::REAL to FLOAT.
- Renames PackedIntArray to PackedInt32Array.
- Renames PackedFloatArray to PackedFloat32Array.
- Adds PackedInt64Array and PackedFloat64Array.
- Renames Variant::REAL to Variant::FLOAT for consistency.

Packed arrays are for storing large amount of data and creating stuff like
meshes, buffers. textures, etc. Forcing them to be 64 is a huge waste of
memory. That said, many users requested the ability to have 64 bits packed
arrays for their games, so this is just an optional added type.

For Variant, the float datatype is always 64 bits, and exposed as `float`.

We still have `real_t` which is the datatype that can change from 32 to 64
bits depending on a compile flag (not entirely working right now, but that's
the idea). It affects math related datatypes and code only.

Neither Variant nor PackedArray make use of real_t, which is only intended
for math precision, so the term is removed from there to keep only float.
2020-02-25 12:55:53 +01:00
69c95f4b4c Reworked signal connection system, added support for Callable and Signal objects and made them default. 2020-02-20 08:24:50 +01:00
cf8c679a23 ObjectID converted to a structure, fixes many bugs where used incorrectly as 32 bits. 2020-02-12 14:24:54 -03:00
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
dc9774b17b Merge pull request #32959 from georgwacker/control-node-anim-fix
Fix control node transform animation jitter with pivot offset
2020-02-05 17:06:49 +01:00
40542b0b0f Fix Control::_window_find_focus_neighbor
Due to a typo, the size of a candidate neighbor was confused with the
size of the control itself.

Fixes #34936.
2020-01-19 23:38:50 +01:00
100f50b7df Control/Light2D: Preventing setting 0 as scale as for Node2D
Triggers errors in `Transform2D::affine_invert()`.

Fixes #26510.
Fixes https://github.com/godotengine/godot/issues/24997#issuecomment-457951639.
2020-01-13 12:20:15 +01:00
b5251eb00f Don't compile editor-only function when tools=no 2020-01-09 22:15:48 +01: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
2f35cf4946 Fix issue with disconnecting events when font changes 2019-12-23 14:08:34 +01:00
32939ccd39 Prevent infinite loop when focus_next is invisible 2019-12-16 01:33:25 +01:00
e3d4b96ba7 Fixed crashes when renaming a state in AnimationNodeStateMachineEditor
Recursive calls to Control::_modal_stack_remove could cause a crash because of the list element not being invalidated while being erased from the list.

It happens in the state machine case by hiding a line edit control when it loses focus.

Fixes #23808
2019-10-22 16:28:11 +02:00
dfb7d46a2a Fix control node transform animation jitter with pivot offset
The workaround for moving the pivot is not needed anymore, in fact it causes all transforms applied to control nodes to jitter while animating (if a pivot offset is set).

This can be observed via AnimationPlayer and Tween.

The fix is to remove the obsolete workaround that causes this bug.

Fixes #28804
2019-10-21 16:52:45 +02:00
17344337a9 Fix crash in Control functions 2019-10-05 19:17:07 +02:00
a1b2364dba Altered rotation_degrees range 2019-09-30 20:43:57 +05:30
cefa56ef1f Merge pull request #31935 from aole/Change-minimum-size-when-theme-changed
Change minimum size when theme changed
2019-09-24 11:13:44 +02:00
a28d18f554 Load overrides if getting style from current class 2019-09-20 13:48:24 +02:00
7a27abae49 Change minimum size when theme changed
Need to call minimum_size_changed on controls whenever the theme is changed.

Fixes godotengine#29816
2019-09-03 14:56:56 -04:00
5e337b31eb Added is_inside_tree() check in both Timer and Tween
Tween now throws error and doesnt even execute.
2019-09-03 13:26:41 +02:00
a919f5e614 Fix return type of Control::get_drag_data in API json
Control::get_drag_data is a virtual method that returns Variant, but have the
Object type in its MethodInfo.

This changes the MethodInfo of Control::get_drag_data
2019-08-26 16:38:16 +00:00
5deb83e041 Increase control node's anchor precision 2019-08-22 11:04:24 -07:00
af5e0fff66 Remove ERR_EXPLAIN from scene/* code 2019-08-09 13:54:52 +02:00
e0b5b21863 Add some code changes/fixes proposed by Coverity and Clang Tidy 2019-08-07 12:54:30 +02:00
f494d5f10b Revert "Update Control margins when size is overridden by change to minsize" 2019-07-27 12:55:03 +02:00
4c74f50d1a Merge pull request #30351 from bojidar-bg/30288-override-global-theme
Keep track of default theme and project custom default theme seperatelly
2019-07-25 14:54:27 +02:00
ff7184c5cb Improve the node configuration warning display
- Refer to properties explicitly when possible
- When multiple warnings are returned, always separate them by one
  blank line to make them easier to distinguish
- Improve grammar and formatting
2019-07-09 00:18:00 +02:00
17901da1a8 Keep track of default theme and project custom default theme seperatelly
Fixes #30288
2019-07-05 23:32:52 +03:00
a0cc62f000 Add a configuration warning when using Ignore mouse filter with tooltip
This closes #30144.
2019-06-30 19:58:40 +02:00
4e5310cc60 Some code changed with Clang-Tidy 2019-06-26 15:08:25 +02:00
d61d1af64d Merge pull request #29489 from groud/fixes_nan
Fixes NaN errors with anchors mode
2019-06-18 09:53:25 +02:00
84d969a42a Cleanup some unecessary editor/ includes in scene/
Part of #29730, handles false positives.
2019-06-12 22:48:43 +02:00
df0a69bbac Fixes NaN errors with anchors mode 2019-06-04 21:58:21 +02:00
1d9bb73a15 Merge pull request #29040 from swarnimarun/fix_override_bug
Clear overrides on passing null
2019-05-21 15:23:18 +02:00
6ab7fb4976 Clear overrides on passing null 2019-05-21 10:50:43 +05:30
8c95e1aaf8 Merge pull request #28952 from jbuck3/update-margins
Update Control margins when size is overridden by change to minsize
2019-05-20 22:40:35 +02:00
5f5507cc62 Update Control margins when size is overridden by change to minsize 2019-05-16 21:56:17 -05:00
e875f05c3b Improve the anchors and margin workflow 2019-05-13 18:55:31 +02:00
9dc9434b1b Merge pull request #24437 from mateusfccp/single_quotes_option
Add settings for single-quotes on completion
2019-04-30 14:58:33 +02:00
8b391b9ab0 Fix inspector update after changing anchor via buttons 2019-03-19 18:37:28 +01:00
079ed007c8 Fixed wrong method binding in control
Control.get_parent_area_size() is now bound to
Control::get_parent_area_size() instead of Control::get_size()
2019-03-01 14:16:19 +01:00