Commit Graph

166 Commits

Author SHA1 Message Date
Dery Almas e4dcf1d852 Buildsystem: Simplify format_buffer utility method
This method is used to generate headers for embedding files into the binary
(think about the new `#embed` feature in C23 and C++26).

While the stringification step itself was plenty fast, it then proceeded
to wrap everything using the `textwrap` module. `textwrap` is *very*
slow, as it's apparently optimized for human text.

This patch reimplements the wrapping logic using a simple regex,
resulting in a tremendous speed improvement (~6x), and switches to `map`
for the stringification itself (thanks Rémi!)

It also removes a (practically) unused argument, `initial_indent`.

The generated files are pretty much the same, with a tiny difference in
line length (for some reason the old logic overshot the requested line
length)
2026-04-21 23:18:42 +02:00
Rémi Verschelde 4d1c5b9122 Merge pull request #112993 from vaner-org/tree-better-drag
Improve drag and drop in `Tree`
2026-03-26 16:00:52 +01:00
vaner-org 8c42aeb39f Improve Tree drag & drop 2026-03-24 04:41:36 +05:30
Giganzo ec11acd2e8 Fix PopupMenu sizing with search bar 2026-03-15 15:14:17 +01:00
Rémi Verschelde 8028b65442 Remove unused includes in scene with clangd-tidy 2026-03-10 16:40:00 +01:00
Rémi Verschelde 2dd1f4ef60 Decouple node.h from scene_tree.h, minimize its other includes 2026-03-05 13:54:46 +01:00
Thaddeus Crews 93bc47df38 Merge pull request #116428 from Kazox61/virtual-joystick-styling
Add Styleboxes for Virtual Joystick
2026-03-04 14:32:34 -06:00
Thaddeus Crews 891069d1cd Merge pull request #114236 from warriormaster12/san-popupmenu-search-bar
Implement search bar for `PopupMenu`
2026-03-04 11:20:49 -06:00
Rémi Verschelde eabb9a63d4 Rename callable_method_pointer.h to callable_mp.h and include it explicitly
This allows removing it from `class_db.h`, significantly reducing the amount of files
that include it transitively.

Also includes some include cleanup in `control.h` and `rich_text_label.h` done while
ensure they don't depend on `callable_mp`.
2026-03-04 16:23:23 +01:00
Rémi Verschelde 765362b033 Explicitly include core/config/engine.h where used 2026-03-04 10:17:10 +01:00
warriormaster12 18e989c49e Implement search bar to PopupMenu 2026-03-03 22:35:06 +02:00
StarryWorm 357fa00a4a rm class_db.h from resource.h 2026-02-27 19:08:29 -05:00
Thaddeus Crews e380a41752 Style: Add class_db.h includes explicitly 2026-02-26 15:50:28 -06:00
Rémi Verschelde f5a290ac46 Move RenderingServer enums to a dedicated RenderingServerEnums (RSE) namespace
A number of headers in the codebase included `rendering_server.h` just for
some enum definitions. This means that any change to `rendering_server.h` or
one of its dependencies would trigger a massive incremental rebuild.

With this change, we decouple a number of classes from `rendering_server.h`,
greatly speeding up incremental rebuilds for that area.

On my machine, this reduces incremental compilation time after an edit of
`rendering_server.h` by 60s (from 2m57s).
2026-02-25 19:43:03 +01:00
Kazox61 7fd953bf01 Adds Styleboxes for Virtual Joystick 2026-02-21 12:06:27 +01:00
Lukas Tenbrink c5df0cb82b Don't right-align escaped newlines, e.g. for #define. This has previously led to long diffs in the commit history. 2026-02-04 19:31:28 +01:00
kobewi f7b9703cbd Use actual class names in resource type hints 2026-01-29 21:07:56 +01:00
Thaddeus Crews 10aa2e3013 Merge pull request #111226 from PhairZ/copy-color
Add a copy button to the color picker dialog.
2026-01-28 12:27:16 -06:00
passivestar 6f0bd2efb9 Improve spacing in trees showing table data in modern theme 2026-01-12 00:01:49 +04:00
Michael Alexsander 8e305bb701 Add color theme for scroll hints 2026-01-08 14:10:55 -03:00
Seif El-Din Ahmed 95d07468bd Add a copy button to the color picker. 2025-12-19 21:12:19 +02:00
Michael Alexsander f187b8b2bf Enable scroll hints for several parts of the editor 2025-12-09 10:55:26 -03:00
Michael Alexsander 639e396d98 Add scroll hints to ScrollContainer and Tree 2025-11-26 11:04:49 -03:00
kit e2cbfb53f1 Deprecate TextEdit background_color 2025-11-13 22:48:04 -05:00
Haoyu Qiu 4694ee84f6 PopupMenu: Add theme option for merging icon and checkbox gutters 2025-11-09 13:09:14 +08:00
kobewi 682b0f7c54 Add switch on hover to TabBar 2025-10-22 00:34:57 +02:00
Thaddeus Crews ed4f4d275e Merge pull request #110904 from YeldhamDev/tree_drag_unfolding
Unfold tree items on hover while drag-n-dropping
2025-10-21 15:11:01 -05:00
Pāvels Nadtočajevs e31830db52 [TextEdit] Make wrap_right_offset adjustable theme constant. 2025-10-18 21:35:02 +03:00
Thaddeus Crews 0f7bf2913f Merge pull request #111249 from HolonProduction/owner-node
Store `ThemeOwner` owner directly as `Node*`
2025-10-07 17:15:08 -05:00
HolonProduction db9a0d82d9 Store ThemeOwner owner directly as Node* 2025-10-05 13:41:17 +02:00
Thaddeus Crews 38af23a654 Merge pull request #89409 from aaronfranke/server-folders
Move server files into their subfolders
2025-10-03 12:01:00 -05:00
Michael Alexsander 8973c91293 Add icon color theme items for TabBar and TabContainer 2025-10-03 10:41:28 -03:00
Aaron Franke 3d1c9fd5de Move server files into their subfolders 2025-09-30 19:39:39 -07:00
Michael Alexsander 26745b4b87 Unfold tree items on hover while drag-n-dropping
Co-authored-by: suddjian
2025-09-26 14:38:45 -03:00
Edward Moulsdale 12e97610a8 Add GDSOFTCLASS to six inheritors of Object 2025-09-21 16:22:29 +01:00
Pāvels Nadtočajevs 10e11ec87f Rename SVGTexture to DPITexture. 2025-08-21 11:39:16 +03:00
Luo Zhihao 65fd56832b Fix ColorPresetButton preset_focus is set to wrong type in default theme 2025-07-21 11:27:21 +08:00
Koyper 21144401c3 Add theme colors to touch dragger and fix touch dragger icon theme 2025-07-17 13:05:47 -05:00
Rémi Verschelde 95e72a36f3 Merge pull request #107347 from bruvzg/hr_hr_hr
[RTL] Decouple image width/height "in percent" properties. Add [hr] tag support.
2025-06-13 01:30:47 +02:00
Pāvels Nadtočajevs beb8398857 Move font related project settings definitions to TextServer. 2025-06-12 15:14:57 +03:00
Rémi Verschelde 986cc40c42 Merge pull request #103907 from beicause/slider-draw-tick-center
Slider: Add bottom and top ticks and tick offset
2025-06-12 01:15:39 +02:00
Pāvels Nadtočajevs a262747cdf [RTL] Decouple image width/height "in percent" properties. Add [hr] tag support. 2025-06-10 12:22:02 +03:00
Pāvels Nadtočajevs 1e2fc9bcad [RTL] Add paragraph separation theme property. 2025-06-10 12:13:48 +03:00
LuoZhihao 257c6ebe3c Slider: Add tick position property and tick offset theme item
Allow ticks to be placed at the top, bottom, or center with custom offset.
2025-06-09 12:36:08 +08:00
Rémi Verschelde 8e0c258408 Merge pull request #106300 from bruvzg/rtl_ualp
[RTL] Add options to override underline color and default alpha.
2025-06-05 13:11:39 +02:00
Rémi Verschelde b25f609eed Merge pull request #105994 from syntaxerror247/split_container
Add option for a touch-friendly drag handle in `SplitContainer`
2025-06-05 13:11:14 +02:00
Pāvels Nadtočajevs 332352d37f [RTL] Add options to override underline color and default alpha. 2025-06-05 12:39:25 +03:00
Anish Mishra bccf36b27b Add option for a touch-friendly drag handle in SplitContainer 2025-06-03 19:49:56 +05:30
kobewi 706bfd810b Add thumbnail mode to FIleDialog 2025-06-03 02:06:14 +02:00
kobewi f75c564d58 Add favorites and recent directories to FileDialog 2025-05-29 15:50:29 +02:00