Commit Graph

623 Commits

Author SHA1 Message Date
df9eaf5f47 Tree recursive folding 2022-09-21 13:28:29 +02:00
6f4d233062 Fix key mapping changes when moving from macOS to other platform
Removes separate `Command` key (use `Meta` instead).
Adds an event flag to automatically remap `Command` <-> `Control` (cannot be set alongside `Control` or `Meta`).
2022-09-07 18:45:35 +02:00
43f03e2ce6 Improve naming of theme properties throughout GUI code
Rename ItemList's bg -> panel
Rename ItemList's bg_focus -> focus
Rename ProgressBar's bg -> background
Rename ProgressBar's fg -> fill
Rename Tree's bg -> panel
Rename Tree's bg_focus -> focus
Rename ScrollContainer's bg -> panel
Rename FileDialog's *_icon_modulate -> *_icon_color
Rename FileDialog's files_disabled -> file_disabled_color
Rename CheckButton's on/off -> checked/unchecked
Rename check_v_adjust -> check_v_offset
2022-09-06 22:53:17 +03:00
3b1aa240dc Add a lifecycle method for manual theme item caching to Control 2022-09-01 16:35:36 +03:00
ae349d8227 Merge pull request #64377 from Mickeon/rename-canvas-redraw
Rename `CanvasItem.update()` to `queue_redraw()`
2022-08-30 14:47:41 +02:00
97f8c9b97c Rename TreeItem's set_tooltip to set_tooltip_text
`set_tooltip` -> `set_tooltip_text`
`get_tooltip` -> `get_tooltip_text`

For consistency:
`get_button_tooltip` -> `get_button_tooltip_text`
And the `tooltip` parameter in `add_button` was renamed to `tooltip_text`
2022-08-30 11:16:23 +02:00
e31bb5ffeb Rename CanvasItem.update() to queue_redraw()
Affects a lot of classes. Very thoroughly checked signal connections and deferred calls to this method, add_do_method/add_undo_method calls, and so on.

Also renames the internal `_update_callback()` to `_redraw_callback()` for consistency.

Just a few comments have also been changed to say "redraw".

In CPUParticles2D, there was a private variable with the same name. It has been renamed to `do_redraw`.
2022-08-29 14:59:47 +02:00
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
4698dc67b5 Merge pull request #64082 from KoBeWi/array3k 2022-08-24 16:05:59 +02:00
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
0ba2e999df implemented right click on Tree control header 2022-08-24 08:10:40 -04:00
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
550616293a Account for TreeItem's Cell icon and center the text Popup vertically 2022-08-19 13:21:19 +02:00
4e6c8e00fc fixed Tree UI control bug corrupting child cache 2022-08-04 08:24:51 -04:00
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
6486d261aa Tree: Don't draw selection background of individual cells in Row mode 2022-07-26 10:09:11 +08:00
5315c9597f Fix negative indices in TreeItem 2022-07-25 22:15:15 +02:00
97dfbea6ad Rename Control PRESET_WIDE to PRESET_FULL_RECT 2022-07-18 20:08:11 -05:00
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
bed65894d3 Horizontal scroll for Tree 2022-07-07 12:58:44 +02:00
ed68f867fb Fix range slider in tree not updating text value 2022-07-06 17:43:16 +02:00
344ba0ffaf Refactor Font configuration and import UI, and Font resources. 2022-07-06 14:12:36 +03:00
5c29a7dbc5 Handle drawing of relationship lines better to take in to account invisible children 2022-06-01 00:23:33 +10:00
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
ee89c65b11 Add nullptr handling of argument pointer in Tree::scroll_to_item 2022-05-26 23:56:52 -03:00
d4aa6e5366 Check visibility of items before drawing their relationship lines 2022-05-26 23:25:42 +10:00
2d14164bca tree: always emit item_edited 2022-05-26 05:12:57 -05:00
2998be4f99 Merge pull request #60061 from monkeyman192/allow_treeitem_visible
Allow TreeItem nodes to toggle visibility
2022-05-24 10:53:41 +02:00
307427af89 Add the button pressed to some signals in Tree 2022-05-21 17:16:52 +02:00
31381f8c9e Allow TreeItem nodes to toggle visibility 2022-05-16 23:55:05 +10:00
96cd2d9f52 Fix tree button icon not centered vertically 2022-05-09 10:53:09 +08:00
02bb8e948f Merge pull request #60261 from fire-forge/theme-prop-renames 2022-04-25 16:20:19 +02:00
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
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
5974e1432e Merge pull request #60085 from YeldhamDev/relationships_are_hard 2022-04-11 23:36:13 +02:00
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
335068e89b Draw relationship lines for items offscreen 2022-04-09 20:59:17 -03:00
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
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
f2b0bd54b2 Double clicking scene tree icon focuses that node 2022-02-27 17:16:45 +05:30
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
0f5455230c Use switch consistently in _notification (scene folder) 2022-02-15 18:44:55 +01:00
374299c6fb Improve TreeItem button API 2022-02-08 23:56:13 +08:00
e26598b4a1 Merge pull request #40140 from hinlopen/tree-scroll-center 2022-02-08 13:43:19 +01:00
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
a988fad9a0 Add missing SNAME macro optimization to all theme methods call 2022-02-06 23:06:11 +01:00
1ce81dc5f2 Add missing SNAME macro optimization in some function calls 2022-02-06 15:54:04 +01:00
8acc8838c4 Add shortcut_cell double click functionality 2022-02-05 19:06:54 +08:00
31824420e4 Center when scrolling to tree item. 2022-02-05 10:59:33 +01:00