Rémi Verschelde
0a5f5c8558
Merge pull request #64536 from Mickeon/editor-tree-icon-size
...
Account for TreeItem's Cell icon and center the text Popup vertically
2022-08-25 09:56:08 +02:00
Rémi Verschelde
4698dc67b5
Merge pull request #64082 from KoBeWi/array3k
2022-08-24 16:05:59 +02:00
Yuri Sizov
5d14d08702
Merge pull request #59226 from Rindbee/better-setters-in-gui-controls
...
Improve the setters in gui, return directly if the value does not change.
2022-08-24 17:03:54 +03:00
derammo
0ba2e999df
implemented right click on Tree control header
2022-08-24 08:10:40 -04:00
kobewi
f7f4873ed0
Replace Array return types with TypedArray 3
2022-08-24 12:53:36 +02:00
风青山
e561c68256
Add some codes, returnes directly if the value is not changed.
...
Avoid executing the following value-changed logics if the value does not really change.
2022-08-23 23:25:22 +08:00
Micky
550616293a
Account for TreeItem's Cell icon and center the text Popup vertically
2022-08-19 13:21:19 +02:00
derammo
4e6c8e00fc
fixed Tree UI control bug corrupting child cache
2022-08-04 08:24:51 -04:00
Rémi Verschelde
c3dc887c41
Merge pull request #63472 from timothyqiu/tree-row-cell-bg
...
Tree: Don't draw selection background of individual cells in Row mode
2022-07-26 07:53:37 +02:00
Haoyu Qiu
6486d261aa
Tree: Don't draw selection background of individual cells in Row mode
2022-07-26 10:09:11 +08:00
kobewi
5315c9597f
Fix negative indices in TreeItem
2022-07-25 22:15:15 +02:00
FireForge
97dfbea6ad
Rename Control PRESET_WIDE to PRESET_FULL_RECT
2022-07-18 20:08:11 -05:00
Rémi Verschelde
207ef8a33d
Merge pull request #62781 from MinusKube/tree-slider-bug
...
Fix range slider in tree not updating text value
2022-07-13 14:13:38 +02:00
Ninni Pipping
bed65894d3
Horizontal scroll for Tree
2022-07-07 12:58:44 +02:00
MinusKube
ed68f867fb
Fix range slider in tree not updating text value
2022-07-06 17:43:16 +02:00
bruvzg
344ba0ffaf
Refactor Font configuration and import UI, and Font resources.
2022-07-06 14:12:36 +03:00
monkeyman192
5c29a7dbc5
Handle drawing of relationship lines better to take in to account invisible children
2022-06-01 00:23:33 +10:00
Rémi Verschelde
cf9aad63ba
Merge pull request #61453 from m3g4d1v3r/master
...
Fix #61444 : Executing Tree.scroll_to_item crashes Godot
2022-05-31 12:28:50 +02:00
m3g4d1v3r
ee89c65b11
Add nullptr handling of argument pointer in Tree::scroll_to_item
2022-05-26 23:56:52 -03:00
monkeyman192
d4aa6e5366
Check visibility of items before drawing their relationship lines
2022-05-26 23:25:42 +10:00
Nathan Franke
2d14164bca
tree: always emit item_edited
2022-05-26 05:12:57 -05:00
Rémi Verschelde
2998be4f99
Merge pull request #60061 from monkeyman192/allow_treeitem_visible
...
Allow TreeItem nodes to toggle visibility
2022-05-24 10:53:41 +02:00
trollodel
307427af89
Add the button pressed to some signals in Tree
2022-05-21 17:16:52 +02:00
monkeyman192
31381f8c9e
Allow TreeItem nodes to toggle visibility
2022-05-16 23:55:05 +10:00
Haoyu Qiu
96cd2d9f52
Fix tree button icon not centered vertically
2022-05-09 10:53:09 +08:00
Rémi Verschelde
02bb8e948f
Merge pull request #60261 from fire-forge/theme-prop-renames
2022-04-25 16:20:19 +02:00
FireForge
3073b85de9
Rename theme properties to include underscores
...
- check_vadjust -> check_v_adjust
- close_h_ofs -> close_h_offset
- close_v_ofs -> close_v_offset
- commentfocus -> comment_focus
- hseparation -> h_separation
- ofs -> offset
- selectedframe -> selected_frame
- state_machine_selectedframe -> state_machine_selected_frame
- table_hseparation -> table_h_separation
- table_vseparation -> table_v_separation
- vseparation -> v_separation
2022-04-23 11:16:18 -05:00
bruvzg
be611c1c05
Implement Label3D node.
...
Add "generate_mipmap" font import option.
Add some missing features to the Sprite3D.
Move BiDi override code from Control to TextServer.
Add functions to access TextServer font cache textures.
Add MSDF related flags and shader to the standard material.
Change standard material cache to use HashMap instead of Vector.
2022-04-22 12:08:46 +03:00
Rémi Verschelde
5974e1432e
Merge pull request #60085 from YeldhamDev/relationships_are_hard
2022-04-11 23:36:13 +02:00
reduz
6f401439f8
Implement Animation Libraries
...
* Instead of containing single animations, AnimationPlayer now contains libraries.
* Libraries, in turn, contain the animations.
This paves the way for implementing the possibility of importing scenes as animation libraries, finally allowing to import animations separate from the 3D models.
Missing (will be done on separate PRs):
* Make it possible to import scenes (dae/fbx/gltf) as animation libraries.
* Make it possible for AnimationTree to import animation libraries on its own, so it does not rely on AnimationPlayer for everything.
2022-04-11 12:51:54 +02:00
Michael Alexsander
335068e89b
Draw relationship lines for items offscreen
2022-04-09 20:59:17 -03:00
Pierre-Thomas Meisels
63f7f44ccb
Make vararg method bind no return and return
...
Type emit_signal exposed method return type
set UndoRedo add_do_method and add_undo_method exposed return void
Set TreeItem::_call_recursive_bind returns void
Set _rpc_bind and _rpc_id_bind returns void in Node
Set _call_group and _call_group_flags method returns void in SceneTree
Set godot-cpp-test CI flag to false
2022-03-30 11:43:12 +02:00
reduz
21637dfc25
Remove VARIANT_ARG* macros
...
* Very old macros from the time Godot was created.
* Limited arguments to 5 (then later changed to 8) in many places.
* They were replaced by C++11 Variadic Templates.
* Renamed methods that take argument pointers to have a "p" suffix. This was used in some places and not in others, so made it standard.
* Also added a dereference check for Variant*. Helped catch a couple of bugs.
2022-03-09 18:39:13 +01:00
Fazil Babu
f2b0bd54b2
Double clicking scene tree icon focuses that node
2022-02-27 17:16:45 +05:30
Rémi Verschelde
b8b4580448
Style: Cleanup single-line blocks, semicolons, dead code
...
Remove currently unused implementation of TextureBasisU, could be re-added
later on if needed and ported.
2022-02-16 14:06:29 +01:00
Rémi Verschelde
0f5455230c
Use `switch` consistently in `_notification` (`scene` folder)
2022-02-15 18:44:55 +01:00
Haoyu Qiu
374299c6fb
Improve TreeItem button API
2022-02-08 23:56:13 +08:00
Rémi Verschelde
e26598b4a1
Merge pull request #40140 from hinlopen/tree-scroll-center
2022-02-08 13:43:19 +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
jmb462
1ce81dc5f2
Add missing SNAME macro optimization in some function calls
2022-02-06 15:54:04 +01:00
Ger Hean
8acc8838c4
Add shortcut_cell double click functionality
2022-02-05 19:06:54 +08:00
Stijn Hinlopen
31824420e4
Center when scrolling to tree item.
2022-02-05 10:59:33 +01:00
Rémi Verschelde
f1bff648f2
Merge pull request #57355 from akien-mga/method-bindings-clearer-types
2022-02-01 14:24:35 +01:00
Nathan Franke
8a0a3accee
simplify formatting scripts, add a clang-tidy script, and run clang-tidy
2022-01-29 04:41:03 -06:00
Rémi Verschelde
7072b359b4
Improve some method bindings to use specific `Object` subtypes
...
This was made possible by changes to `VariantCaster` which now make
it possible to pass any `Object`-derived type as pointer.
2022-01-28 15:07:22 +01:00
Rémi Verschelde
e6caaf4c80
Merge pull request #57205 from TechnoPorg/variant-template-cast
...
Allow method binds to take Object subclasses as arguments
2022-01-27 23:46:37 +01:00
TechnoPorg
051ef479c9
Allow method binds to take Object subclasses as arguments
...
This commit adds a condition to VariantCaster that casts Variants of type OBJECT to any type T, if T is derived from Object.
This change enables a fair bit of code cleanup. First, the Variant implicit cast operators for Node and Control can be removed, which allows for some invalid includes to be removed. Second, helper methods in Tree whose sole purpose was to cast arguments to TreeItem * are no longer necessary.
A few small changes also had to be made to other files, due to the changes cascading down all the includes.
2022-01-25 09:03:36 -07:00
Rémi Verschelde
eacde082a5
Merge pull request #53276 from Phischermen/propagate_check
2022-01-20 16:37:16 +01:00
Kevin Fischer
a4bac268c9
Addded methods to propagate checks & refactored classes to use new methods.
2022-01-18 19:21:59 -08:00
Rémi Verschelde
46624388d4
Merge pull request #56322 from madmiraal/fix-42450
2022-01-11 11:33:59 +01:00
Rémi Verschelde
319c442771
Merge pull request #55791 from kleonc/tree-dont-consume-mouse-if-collapser-not-visible
2022-01-05 10:56:50 +01:00
Rémi Verschelde
0719deea8a
Merge pull request #56346 from pycbouh/control-treenteger
2022-01-05 10:47:05 +01:00
Rémi Verschelde
89f070065b
Merge pull request #56408 from eazrael/tree-fix-selectionmode-row
...
Tree: Fix de-select when selection mode set to SELECT_ROW
2022-01-05 09:22:00 +01: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
Christoph Nelles
185724e5e9
Tree: Fix de-select when selection mode set to SELECT_ROW
...
It no longer de-selects an already selected row if the SELECT_MODE is
set to SELECT_ROW.
Update scene/gui/tree.cpp
Co-authored-by: Michael Alexsander <michaelalexsander@protonmail.com>
2022-01-02 00:36:30 +00:00
Yuri Sizov
f1bc5c976a
Fix an incorrect exposed property type in Tree
2021-12-30 20:04:14 +03:00
Marcel Admiraal
3105d9b1f3
Rename speed to velocity when it's a directional Vector
2021-12-29 15:35:26 +00:00
kleonc
67dd4f15ee
Tree Don't consume mouse event by collapse arrow which isn't shown
2021-12-10 16:54:47 +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
Nathan Franke
41a20171eb
align to horizontal_alignment, valign to vertical_alignment, related
2021-12-09 01:38:46 -06:00
Rémi Verschelde
75ac048e4b
Merge pull request #55662 from KoBeWi/update_minimum_size_changed_to_update_minimum_size
2021-12-06 18:28:46 +01:00
jmb462
81efebb3a1
Fix bad popups offset in editor with single window off
...
Co-authored-by: Gil Arasa Verge <gilarasaverge@gmail.com>
Co-authored-by: Tomasz Chabora <kobewi4e@gmail.com>
2021-12-06 14:29:48 +01:00
kobewi
ea7cc1dea9
Rename minimum_size_changed() method
2021-12-06 14:02:34 +01:00
kobewi
7f6ab0006d
Bind column_titles_visible as property
2021-12-05 02:55:38 +01:00
Lightning_A
e078f970db
Rename `remove()` to `remove_at()` when removing by index
2021-11-23 18:58:57 -07:00
Hugo Locurcio
8fb7e622a6
Rename built-in `SGN()` macro to `SIGN()`
...
This matches the name of the GDScript function (except it's uppercase
here).
2021-11-16 20:40:49 +01:00
Aaron Franke
3c0fdcc8ac
Use "enum class" for input enums
2021-11-12 15:37:54 -06:00
bruvzg
ebbc25e89c
Ignore empty Font resources as theme override.
...
Add range hint to font_size properties.
Remove excessive `base_size` Font property.
2021-10-25 14:05:37 +03:00
Robin Arys
5c25497aa2
Fix possible crash when calling Tree.notification from _ready
2021-10-23 12:02:09 +02:00
Yuri Sizov
bdbb7b3999
Remove EDSCALE dependency from /scene/gui
2021-10-04 15:25:08 +03:00
jmb462
7fabbe2760
Fix tree title column size minimum width
2021-09-28 14:54:48 +02:00
floppyhammer
53efc55409
Fix minimum size of TreeItem
2021-09-26 17:02:54 +08:00
Rémi Verschelde
9293c76636
Merge pull request #53049 from AnilBK/dont-construct-2
2021-09-25 12:26:08 +02:00
Anilforextra
cdd912c48e
Construct values only when necessary.
2021-09-25 14:46:45 +05:45
Yuri Sizov
873443756d
Correctly calculate position of the folding arrow in Tree
2021-09-25 02:01:14 +03:00
Rémi Verschelde
0a8e137c61
Merge pull request #52313 from groud/cache_tree_item_size
2021-09-15 13:21:56 +02:00
Tomasz Chabora
e1cc70309c
Fix error when click edge of the tree icon
2021-09-13 18:03:03 +02:00
Gilles Roudière
ace19bd4c6
Cache TreeItem minimum size for performance.
2021-09-01 16:26:41 +02:00
kobewi
a913ae8d56
Add support for internal nodes
2021-08-28 02:07:23 +02:00
Max Hilbrunner
701195937d
Merge pull request #52096 from kleonc/tree-item-drag-drop-drawing
...
Tree Fix line rendering when drag and dropping TreeItem
2021-08-27 20:55:37 +02:00
bruvzg
4c3f7d1290
Makes FontData importable resource.
...
Adds multi-channel SDF font texture generation and rendering support.
Adds per-font oversampling support.
Adds FontData import plugins (for dynamic fonts, BMFonts and monospaced image fonts), font texture cache pre-generation and loading.
Adds BMFont binary format and outline support.
2021-08-27 15:43:18 +03:00
kleonc
d35ef5fab0
Tree Fix line rendering when drag and dropping TreeItem
2021-08-25 13:29:54 +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
Kevin Fischer
75866c81e7
Added icons and API for indeterminate checkmarks for the Tree class.
2021-08-16 10:13:06 -07: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
Rémi Verschelde
3adb129a54
Merge pull request #50135 from KoBeWi/ 🌲 .update()
...
Update Tree when modified
2021-07-13 09:03:40 +02:00
Hugo Locurcio
ce941397e5
Merge pull request #49890 from voxelv/fix_tree_range_click_timeout_crash_46648
...
Avoid using a nullptr root in Tree._range_click_timeout().
2021-07-07 01:21:32 +02:00
reduz
f4379cbc82
Clean up Tree
...
Fixes some problems introduced by #49917
* Tree used minimum size as a stretch ratio, so it forced a minimum size of 1.
* Minimum size redone, stretch ratio moved to a separate setting
* Fitting to contents was enforced, this is more intuitive, but in many situations this is undesired.
* Added a clip content option for situations where fit to contents does not apply.
* Icon would scroll with the item, making it invislbe if the item is too long.
* Made icon always appear to the right (or left if RTL is enabled) of the visible item space.
2021-07-04 13:13:53 -03:00
kobewi
9569729888
Update Tree when modified
2021-07-04 15:28:39 +02:00
voxelv
f17f3f8830
Avoid using a nullptr root in Tree._range_click_timeout().
...
Fixes #46648
2021-06-30 00:27:44 -07:00
Gilles Roudière
c5b65236d8
Fixes crash in case no column in tree is expanded and has minimum size
2021-06-29 11:27:09 +02:00
Gilles Roudière
d7d32ced5b
Implement Tree's internal minimum width calculation
2021-06-28 15:54:31 +02:00
Gilles Roudière
b2dddc3c82
Allow disabling scrolling in Tree
2021-06-25 21:19:46 +02:00
Yuri Sizov
483f8ffbe4
Make relationship lines draw on top of TreeItems
2021-06-21 16:46:43 +03:00
Aaron Franke
0ce49800ac
Use mouse and joypad enums instead of plain integers
...
Also MIDIMessage
2021-06-20 11:54:24 -04:00
Lightning_A
e28fd07b2b
Rename `instance()`->`instantiate()` when it's a verb
2021-06-19 20:49:18 -06:00
Gregory Basile
8ab13f8ace
Documentation search fixes
...
Updates rich_text_label so that the built-in documentation can be searched
Previously, it would only find the first result and would not select other results
Renames "_entered" functions to "_submitted"
2021-06-16 09:43:34 -07:00
reduz
d95bc3fa67
Use bold fonts in editor
...
* Labels are now bold
* Categories in trees are bold
* Main editor buttons are bold
* Fixed section folding arrows in inspector
2021-06-02 12:47:57 -03:00
floppyhammer
d202cf6899
fix-tree-item-dragging
2021-06-01 20:46:17 +08:00