Commit graph

295 commits

Author SHA1 Message Date
Tomasz Chabora
a8105d73c7 Warn when setting Control size inside ready()
(cherry picked from commit 84da090a69)
2021-02-22 10:15:00 +01:00
kobewi
7ede2f36fe
Allow to override drop data in LineEdit
(cherry picked from commit a3a31591b5)
2021-01-26 17:24:55 +01:00
Nils Reid
349f25429b
Exposed find_next_valid_focus and find_prev_valid_focus.
(cherry picked from commit 3e94c23fa5)
2021-01-26 17:00:16 +01:00
Rémi Verschelde
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
Rémi Verschelde
05143ca39a
Tooltips: Improve code clarity and docs
The return type for `_make_custom_tooltip` is clarified as Control, and users
should make sure to return a visible node for proper size calculations.

Moreover in the current master branch, a PopupPanel will be added as parent
to the provided tooltip to make it a sub-window.

Clarifies documentation for `Control._make_custom_tooltip`, and shows how to
use the (until now undocumented) "TooltipPanel" and "TooltipLabel" theme types
to style tooltips.

Fixes #39677.

(cherry picked from commit c5d8dafec4)
2020-11-11 15:30:56 +01:00
Hugo Locurcio
e36587751f
Rename the type parameter to node_type in Theme and Control
This makes it clearer that it expects a node type as a string (such as "Label")
instead of a type like "TYPE_ARRAY". This is backwards-compatible since only
the name of the parameter is changed, not its order.

See https://github.com/godotengine/godot-proposals/issues/1495#issuecomment-691507839
2020-09-12 18:42:45 +02:00
Eric M
b7fbdf4bed Updated editor spin slider to have better behaviour and adjusted control's size_flags_stretch_ratio value range
(cherry picked from commit 915ab50673)
2020-05-06 23:30:28 +02:00
Rémi Verschelde
2bae35353d Revert "Fix control node transform animation jitter with pivot offset"
This reverts commit 15315f118c.

It caused a regression: #36087.
2020-03-04 09:50:21 +01:00
Georg Wacker
15315f118c 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

(cherry picked from commit dfb7d46a2a)
2020-02-06 13:02:07 +01:00
Ricardo Buring
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
Rémi Verschelde
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
Gilles Roudière
b5251eb00f Don't compile editor-only function when tools=no 2020-01-09 22:15:48 +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
Jonas Bernemann
2f35cf4946 Fix issue with disconnecting events when font changes 2019-12-23 14:08:34 +01:00
Tomasz Chabora
32939ccd39 Prevent infinite loop when focus_next is invisible 2019-12-16 01:33:25 +01:00
PouleyKetchoupp
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
qarmin
17344337a9 Fix crash in Control functions 2019-10-05 19:17:07 +02:00
Soumya Lahiri
a1b2364dba Altered rotation_degrees range 2019-09-30 20:43:57 +05:30
Rémi Verschelde
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
Tomasz Chabora
a28d18f554 Load overrides if getting style from current class 2019-09-20 13:48:24 +02:00
Bhupendra Aole
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
shaderbeast
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
toasteater
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
Cameron Reikes
5deb83e041 Increase control node's anchor precision 2019-08-22 11:04:24 -07:00
Tomasz Chabora
af5e0fff66 Remove ERR_EXPLAIN from scene/* code 2019-08-09 13:54:52 +02:00
qarmin
e0b5b21863 Add some code changes/fixes proposed by Coverity and Clang Tidy 2019-08-07 12:54:30 +02:00
Rémi Verschelde
f494d5f10b
Revert "Update Control margins when size is overridden by change to minsize" 2019-07-27 12:55:03 +02:00
Rémi Verschelde
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
Hugo Locurcio
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
Bojidar Marinov
17901da1a8
Keep track of default theme and project custom default theme seperatelly
Fixes #30288
2019-07-05 23:32:52 +03:00
Hugo Locurcio
a0cc62f000
Add a configuration warning when using Ignore mouse filter with tooltip
This closes #30144.
2019-06-30 19:58:40 +02:00
qarmin
4e5310cc60 Some code changed with Clang-Tidy 2019-06-26 15:08:25 +02:00
Rémi Verschelde
d61d1af64d
Merge pull request #29489 from groud/fixes_nan
Fixes NaN errors with anchors mode
2019-06-18 09:53:25 +02:00
Rémi Verschelde
84d969a42a Cleanup some unecessary editor/ includes in scene/
Part of #29730, handles false positives.
2019-06-12 22:48:43 +02:00
Gilles Roudière
df0a69bbac Fixes NaN errors with anchors mode 2019-06-04 21:58:21 +02:00
Rémi Verschelde
1d9bb73a15
Merge pull request #29040 from swarnimarun/fix_override_bug
Clear overrides on passing null
2019-05-21 15:23:18 +02:00
Swarnim Arun
6ab7fb4976 Clear overrides on passing null 2019-05-21 10:50:43 +05:30
Rémi Verschelde
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
James Buck
5f5507cc62 Update Control margins when size is overridden by change to minsize 2019-05-16 21:56:17 -05:00
Gilles Roudiere
e875f05c3b Improve the anchors and margin workflow 2019-05-13 18:55:31 +02:00
Rémi Verschelde
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
qarmin
8b391b9ab0 Fix inspector update after changing anchor via buttons 2019-03-19 18:37:28 +01:00
Justin Vesper
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
Bojidar Marinov
8dad5f1e10
Update controls when a stylebox or icon override changes; change to CONNECT_REFERENCE_COUNTED
Also, cleanup unnessesary calls to update() and NOTIFICATION_THEME_CHANGED.

Fixes #25904.
2019-02-25 17:42:38 +02:00
Rémi Verschelde
b16c309f82 Update copyright statements to 2019
Happy new year to the wonderful Godot community!
2019-01-01 12:58:10 +01:00
Mateus Felipe C. C. Pinto
ca1935d6f7 Add settings for single-quotes on completion 2018-12-18 12:48:36 -02:00
Rémi Verschelde
41d1dba35f
Merge pull request #22431 from DualMatrix/pivot
Fixed pivot tool not setting position of Controls correctly
2018-12-07 23:18:27 +01:00
Juan Linietsky
5f4485d4ff Always use default theme for overrides, closes #13071 2018-11-14 21:21:51 -03:00
Juan Linietsky
88bfb27abf Show theme values from default theme always, fixes #16011, fixes #13071 2018-11-14 18:02:21 +01:00
Juan Linietsky
f2e54057ae -Moved EditorDefaultValue to ClassDB, made it core
-Removed one and zero hints for properties, replaced by default value
2018-11-08 11:30:59 -03:00
Rémi Verschelde
ebdb374d80
Merge pull request #22844 from samgreen/fix_gui_dragging_spam
Fix spam when dragging in the editor
2018-10-11 17:48:19 +02:00
Sam Green
24a339245f Swap condition to prevent spam in editor. 2018-10-08 11:05:20 -07:00
Aaron Franke
37386f112b Remove redundant "== true" code
If it can be compared to a boolean, it can be evaluated as one in-place.
2018-10-06 16:12:36 -04:00
karroffel
a0f206aae8 fix enum cast warnings on clang 2018-10-04 09:17:59 +02:00
Hugo Locurcio
c4770a5b5d
Tweak some editor texts' capitalization, use "Go to" instead of "Goto"
This also fixes a typo in the `debugger/debug_with_external_editor`
shortcut.
2018-09-25 22:51:13 +02:00
DualMatrix
16cac24c9d Fixed pivot tool not setting position of Controls correctly
Fixed pivot tool not setting position of Controls correctly
2018-09-25 21:20:03 +02:00
Rémi Verschelde
1a16dabfb5
Merge pull request #21982 from luzpaz/misc-typos
Misc. typos
2018-09-13 10:59:00 +02:00
luz.paz
08bde5b2de Misc. typos
Found via `codespell -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po"`
2018-09-12 21:39:17 -04:00
Rémi Verschelde
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
Juan Linietsky
f6fbf841d5 Show a warning if you try to grab focus when not allowed, closes #15388 2018-09-06 13:32:34 -03:00
Michael Alexsander Silva Dias
cf183efbcf Change some instances of args named "ev" to "event" 2018-09-01 17:03:41 -03:00
Juan Linietsky
683c3f2fcf Avoid misuse of set_drag_preview() function where it shouldn't be. Closes #20100 2018-08-24 10:30:11 -03:00
Rémi Verschelde
e22f0515c9 Drop old ShaderGraph code, obsoleted by VisualShader 2018-08-24 11:49:08 +02:00
Juan Linietsky
c752c26427 Expose _clips_input as a virtual function, closes #15358 2018-07-29 12:48:17 -03:00
Guilherme Felipe
d1f5deabd8 Opens the menu with the same parent on mouse focus 2018-07-24 19:59:40 -03:00
Juan Linietsky
336db8bcd1 -Fix tooltips in inspector, now they show as rich text. 2018-07-20 18:16:19 -03:00
Max Hilbrunner
43748f67be
Merge pull request #19351 from guilhermefelipecgs/fix_reversed_text
Fixes to the new inspector
2018-07-05 03:50:31 +02:00
Guilherme Felipe
709948aa5a Fixes to the new inspector
- Fix inspector dock not updating tree for main resource;
- Fixes the inspector input text reverted during typing;
- Add method bind for "refresh" used by MultiNodeEdit;
2018-07-04 20:08:45 -03:00
groud
560deda207 Fixes control nodes size not updated when outside the tree 2018-07-04 15:14:42 +02:00
Rémi Verschelde
3724f1562b
Merge pull request #19782 from Calinou/fix-control-pixel-snap-rounding
Fix control pixel snap rounding using floor() instead of round()
2018-07-04 15:11:08 +02:00
Max Hilbrunner
b21c1f64cd
Merge pull request #18634 from groud/fix_control_child_of_node2d
Fixes the bad calculation of margin & anchors when child of Node2D
2018-07-03 18:06:15 +02:00
Guilherme Felipe
b2e78e117c Fix performance for godot's interface 2018-07-01 09:48:03 -03:00
Juan Linietsky
eeab3502d5 Changes to how node paths are selected from property, allowing setting a hint. 2018-06-27 20:50:25 -03:00
Hugo Locurcio
88c23e243f
Fix control pixel snap rounding using floor() instead of round()
This resulted in small leftwards/upwards movement of controls being
faster than it should be.

This closes #19763.
2018-06-26 17:55:23 +02:00
groud
4d78e16bc1 Fixes the bad calculation of margin & anchors when child of Node2D 2018-06-07 21:25:15 +02:00
Guilherme Felipe
7a3882723c Fix #16069, #19292, #19267 and #18940 2018-06-06 13:16:52 -03:00
Juan Linietsky
4b5227ff77 -Ability to open resources in the same window
-Plenty of fixes and improvements to new inspector
-Fixes that were needed to make inspector work better
2018-05-17 18:03:05 -03:00
Juan Linietsky
005b69cf6e -New inspector.
-Changed UI resizing code, gained huge amount of speed.
-Reorganized timer sync to clean up behavior (sorry forgot commit this before)

-
2018-05-15 17:14:31 -03:00
Juan Linietsky
1d15c5d726
Merge pull request #17502 from groud/2Deditor_rect
Remove the rect surrounding 2D nodes in 2D editor when it's not pertinent
2018-04-13 10:21:44 -03:00
Rémi Verschelde
7e2782e177
Merge pull request #17081 from endragor/no-press-when-scroll
Make Button not emit press when container is scrolled
2018-04-10 07:56:37 +02:00
Ruslan Mustakov
dcf5be92a3 Make BaseButton not emit press when container is scrolled
This fixes the problem described in #13996 in a proper way.

This also adds "deadzone" property to ScrollContainer. It can be used
on mobile, where taps are not as precise as mouse clicks. Player could
slightly move their finger when tapping, in which case we still want
the button to be pressed rather than the container to be scrolled.
2018-04-09 20:34:52 +07:00
Juan Linietsky
24cf58f917
Merge pull request #16574 from isaacremnant/better_grow_direction
Added GROW_DIRECTION_BOTH for controls
2018-04-08 16:42:16 -03:00
Gilles Roudiere
72ed1e4244 Remove the selection rect for nodes that do not require it 2018-04-03 22:04:19 +02:00
Rémi Verschelde
b93d6a001b
Merge pull request #16566 from groud/gui_input_rework
2D Editor GUI input rework
2018-02-19 20:05:35 +01:00
isaacremnant
cc902cf9ab Force controls to save rect_clip_content since they do not all default to false. 2018-02-18 22:24:05 -05:00
Gilles Roudiere
8dad41e395 2D editor GUI input rework. Changes are:
- The input handling is done into several distinct functions, and the
  code is more consistent.
- The actions' history is more precise ("Edited CanvasItem"
  is now "Rotated CanvasItem","Moved CanvasItem",etc...)
- Fixed a little bug about input key events not forwarded correctly to plugins
- IK is followed by default when you move a bone node, the alt-key allow
  you to move it normally
2018-02-16 10:14:52 +01:00
isaacremnant
4ef11eb3ed Implements #16546 by adding GROW_DIRECTION_BOTH which allows a control to grow from its center. 2018-02-12 01:39:18 -05:00
Rémi Verschelde
9f479f096c Fix typos in code and docs with codespell
Using v1.11.0 from https://github.com/lucasdemarchi/codespell
2018-01-18 22:01:42 +01:00
Ruslan Mustakov
0b632be4a9 Fix get_parent_range to return 0 when there is no parent
Fixes #15635
2018-01-13 16:48:07 +07:00
letheed
524ee14054 Small fix for Control bindings 2018-01-13 09:40:42 +01:00
Bojidar Marinov
9b8e8b2220
Bind many more properties to scripts
Notable potentially breaking changes:
- PROPERTY_USAGE_NOEDITOR is now PROPERTY_USAGE_STORAGE | PROPERTY_USAGE_NETWORK, without PROPERTY_USAGE_INTERNAL
- Some properties were renamed, and sometimes even shadowed by new ones
- New getter methods (some virtual) were added
2018-01-12 00:58:14 +02:00
Gilles Roudiere
00473e0897 Fixes nodes being resized or moved when changing an anchor 2018-01-11 23:39:49 +01:00
Fabio Alessandrelli
a63a82d5e5 Fix theme inheritance 2018-01-05 18:30:40 +01:00
Rémi Verschelde
e4213e66b2 Add missing copyright headers and fix formatting
Using `misc/scripts/fix_headers.py` on all Godot files.
Some missing header guards were added, and the header inclusion order
was fixed in the Bullet module.
2018-01-05 01:22:23 +01:00
Rémi Verschelde
b50a9114b1 Update copyright statements to 2018
Happy new year to the wonderful Godot community!
2018-01-01 14:40:47 +01:00
volzhs
ef32018d1f Fix Clip Content property is not saved 2017-12-17 23:10:59 +09:00
Bernhard Liebl
efc3ffb816 fix certain popup close clicks with popup buttons 2017-12-10 10:55:48 +01:00
Gilles Roudiere
8d1f2b1857 Rework the canvas_item API for further improves to the canvas item editor 2017-11-19 13:36:31 +01:00
Saracen
e4201734df Add manual overrides for focus_next and focus_previous on controls similar to what can already be done with focus neighbours. 2017-11-16 09:45:52 +00:00
letheed
482e07af7e Unify degree members and properties 2017-11-10 12:52:07 +01:00