Juan Linietsky
e6a4debede
Change set_drag_forwarding() to use callables.
...
* This solution is much cleaner than the one in 3.x thanks to the use of callables.
* Works without issues in any language (no need to worry about camel or snake case).
* Editor code uses a compatibility function (too much work to redo).
Fixes #59899
2023-01-10 14:09:24 +01:00
kleonc
4276752608
TileAtlasView Update zoom and panning before emitting signal
2023-01-05 22:00:05 +01:00
Rémi Verschelde
d95794ec8a
One Copyright Update to rule them all
...
As many open source projects have started doing it, we're removing the
current year from the copyright notice, so that we don't need to bump
it every year.
It seems like only the first year of publication is technically
relevant for copyright notices, and even that seems to be something
that many companies stopped listing altogether (in a version controlled
codebase, the commits are a much better source of date of publication
than a hardcoded copyright statement).
We also now list Godot Engine contributors first as we're collectively
the current maintainers of the project, and we clarify that the
"exclusive" copyright of the co-founders covers the timespan before
opensourcing (their further contributions are included as part of Godot
Engine contributors).
Also fixed "cf." Frenchism - it's meant as "refer to / see".
2023-01-05 13:25:55 +01:00
Charles Crete
50e09bbaef
Fix "Double-click on the TileMap's pattern prints an error" ( #70892 )
2023-01-03 23:06:52 -05:00
Haoyu Qiu
1ac35c38be
Fix heap-use-after-free when using TileMap editor
2022-12-30 14:16:54 +08:00
Markus Sauermann
b736efa9c8
Use get_cursor_shape for identifying the cursor shape in TileSetAtlasSourceEditor
...
get_cursor_shape() is used in cases where a Control displays different cursors in different areas.
There is no need to set the default cursor shape on every mouse move event.
Was part of the reason for #58960 .
2022-12-29 02:07:39 +01:00
mara
5380e685d8
Keep terrain choice when changing layer in tilemap editor
...
Make `TileMapEditorTerrainsPlugin::edit` logic analogous to
`TileMapEditorTilesPlugin::edit`, in that the selection is only
cleared when switching to another tilemap.
Closes #70033 .
2022-12-26 21:45:06 +01:00
Silc Renew
060fb2d093
Add inspector plugin for key time edit & Change find key argument
2022-12-22 10:03:06 +09:00
Rémi Verschelde
fe1bb58e8f
Merge pull request #70238 from kleonc/tile-set-simplify-isometric-tile-polygon
...
`TileSet` Simplify isometric tile shape polygon to 4 vertices
2022-12-19 16:27:17 +01:00
kobewi
32b0770a73
Add a method to get global modulate
2022-12-19 11:51:37 +01:00
kleonc
3a34acdf55
TileSet Simplify tile shape polygons
2022-12-19 11:42:40 +01:00
kobewi
99a9401a2c
Use layer's modulate for tile previews
2022-12-18 17:31:29 +01:00
Rémi Verschelde
05aba48354
Merge pull request #70006 from timothyqiu/atlas-source-paint-scroll
...
Add scroll container for tile data editors
2022-12-13 10:12:53 +01:00
Rémi Verschelde
a720a8c136
Merge pull request #69893 from henrlin24/hide-scattering
...
Hide Scattering label and controls within TileMap editor window when "Place Random Tile" option is disabled
2022-12-13 10:10:28 +01:00
Haoyu Qiu
4fcbfcc665
Add scroll container for tile data editors
2022-12-13 15:14:01 +08:00
Rémi Verschelde
f5d14f874a
Merge pull request #69300 from timothyqiu/tile-set-atlas-source
...
Improve TileSetAtlasSourceEditor UI
2022-12-12 11:41:59 +01:00
henrlin24
afa38bd030
Hide Scattering label and controls within TileMap editor window when "Place Random Tile" is disabled
2022-12-11 13:16:36 -05:00
Haoyu Qiu
8a22d4cd44
Fix !tile_set.is_valid() error on startup
2022-12-10 13:09:20 +08:00
Haoyu Qiu
d8f5dcbf56
Improve TileSetAtlasSourceEditor UI
...
* Updates the overall layout, moving mode buttons to the top.
* Uses inspector category instead of a Label to show what's being edited. This also allows better scrolling behavior.
2022-12-10 12:27:48 +08:00
Rémi Verschelde
9a26ffa233
Merge pull request #67283 from KoBeWi/one_way_ticket
...
Add one-way indicator to tile collision editor
2022-12-09 18:05:55 +01:00
Rémi Verschelde
43bef98450
Merge pull request #60892 from KoBeWi/fat_selection
...
Improve tile editor selection appearance
2022-12-09 18:05:38 +01:00
kobewi
871278cdf0
Improve tile editor selection appearance
2022-12-09 14:46:17 +01:00
Haoyu Qiu
af3ef844d9
Update tile source icons when editor theme changes
2022-12-08 17:21:37 +08:00
Rémi Verschelde
de2d0f156e
Merge pull request #69713 from groud/rename_get_surrounding_tiles
...
Rename get_surrounding_tiles to get_surrounding_cells
2022-12-07 13:24:57 +01:00
Rémi Verschelde
04cd36612a
Merge pull request #69695 from timothyqiu/id-capitalization
...
Make ID capitalization in tiles editor consistent
2022-12-07 13:23:49 +01:00
Gilles Roudière
3ea54bb3a1
Rename get_surrounding_tiles to get_surrounding_cells
2022-12-07 11:09:10 +01:00
Haoyu Qiu
740d6f9447
Fix crash when deleting an alternative-level tile proxy
2022-12-07 14:26:54 +08:00
Haoyu Qiu
9893b04fda
Make ID capitalization in tiles editor consistent
2022-12-07 10:07:10 +08:00
Haoyu Qiu
7034992ace
Fix error when right clicking proxy list in TileProxiesManagerDialog
2022-12-06 09:37:07 +08:00
Haoyu Qiu
480d9d10ed
Fix heap-use-after-free when exiting editor after editing TileSet
2022-12-04 16:52:26 +08:00
Haoyu Qiu
6c5c773a27
Fix heap-use-after-free when changing alternative tile ID
2022-11-30 10:32:35 +08:00
Rémi Verschelde
3d2c3aae4e
Merge pull request #69062 from trollodel/lightweight_editor_mass
...
Use forward-declarations in big editor classes
2022-11-29 10:27:21 +01:00
trollodel
c90d0bd84f
Use forward-declarations in big editor classes
2022-11-29 09:59:43 +01:00
Haoyu Qiu
4a50f44cd2
Fix heap-use-after-free when removing a tile in TileSet editor
2022-11-29 09:22:35 +08:00
Haoyu Qiu
7bc0d0c177
Update TileSet preview when paint custom data changes
2022-11-27 18:35:47 +08:00
Rémi Verschelde
6e693368e1
Merge pull request #69124 from zaevi/tilemap_fix_alternative_tile
...
[TileMap] Fix alternative tile issues.
2022-11-25 19:27:37 +01:00
kobewi
8a3d2f4e0c
Cleanup remaining EditorUndoRedoManager usages
2022-11-24 18:56:22 +01:00
Zae
f6424e68ea
[TileMap] Fix alternative tile issues.
2022-11-25 00:44:02 +08:00
Markus Sauermann
28af870750
Code simplifications found by cppcheck
...
They are based on:
- Boolean arithmetic simplifications
- setting variables that are not accessed
- constant variables
2022-11-21 08:43:36 +01:00
Rémi Verschelde
0b27173919
Fixup TileSet build after #66557
...
Last rebase was too old, didn't include this API rename.
2022-11-17 13:54:15 +01:00
Rémi Verschelde
2ca972ad01
Merge pull request #66557 from MisterMX/fix/tileset-custom-data-type-reload-editor
...
fix(tileset): Recreate custom data editor if type has changed
2022-11-17 13:49:02 +01:00
Rémi Verschelde
4829911df2
Merge pull request #64368 from YeldhamDev/tile_editor_label_center
...
Properly center labels in the TileMap/Set editors
2022-11-17 13:48:53 +01:00
Markus Sauermann
3b14f0334c
Remove redundant Variant-types initializations
2022-11-14 19:35:19 +01:00
Michael Alexsander
02390693ce
Properly center labels in the TileMap/Set editors
2022-11-12 21:35:07 -03:00
clayjohn
3c1e5003ab
Fix pathological corner case in drawing tileset editor
...
Interleaving draw_rect calls with and without a texture forces every rect to
have its own draw call. In this case it meant that there is a draw call for every single
tile in the atlas. This change makes it so the renderer can batch draw calls
which reduced the draw call count by a factor of 512
2022-11-04 13:04:20 -07:00
Ninni Pipping
4b29f71685
Fix incorrect drawing of alternative tiles
2022-11-03 16:17:36 +01:00
kobewi
15831e381b
Unify usage of undo_redo in editor
2022-11-02 17:51:58 +01:00
Rémi Verschelde
5947f22be9
Merge pull request #67578 from KoBeWi/GEDITOR
...
Unify usage of GLOBAL/EDITOR_GET
2022-10-31 13:15:58 +01:00
Rémi Verschelde
420eb1aa34
Merge pull request #67445 from Zylann/rename_queue_delete
...
Rename queue_delete => queue_free
2022-10-31 10:51:18 +01:00
Rémi Verschelde
d0fbeec66a
Merge pull request #67580 from KoBeWi/little_things
...
Minor code improvements
2022-10-31 10:34:57 +01:00
Marc Gilleron
7543a5e014
Rename queue_delete => queue_free
...
# Conflicts:
# editor/plugins/tiles/tiles_editor_plugin.cpp
2022-10-24 22:07:02 +01:00
kobewi
1e14502f84
Add one-way indicator to tile collision editor
2022-10-24 12:03:39 +02:00
Gilles Roudière
fe65d7aa7b
Make terrain painting not change neighbors centers bits
2022-10-20 14:47:45 +02:00
kobewi
e48c5daddf
Unify usage of GLOBAL/EDITOR_GET
2022-10-18 19:01:48 +02:00
kobewi
4aaed4fee1
Minor code improvements
2022-10-18 16:44:57 +02:00
Marc Gilleron
9efb2e786e
Fix case where mutex is never unlocked
2022-10-15 13:06:00 +01:00
Rémi Verschelde
dc4b616596
Merge pull request #63332 from KoBeWi/static_images_aka_photos
...
Make some Image methods static
2022-10-15 12:56:57 +02:00
kobewi
985671012a
Separate Line and CurveLinear icons
2022-10-15 02:00:39 +02:00
kobewi
072f6feaba
Make some Image methods static
2022-10-14 14:34:15 +02:00
Rémi Verschelde
86a836f9e3
Merge pull request #59468 from EricEzaM/fix-zoom-shortcuts
...
Fix zoom in/out keyboard shortcuts not working
2022-10-13 09:03:58 +02:00
kobewi
386382d796
Fix source sort not saving in TileMap editor
2022-10-11 22:40:39 +02:00
Kongfa Waroros
e81e81a56e
Fix crashing when editing the `TileSet` field
2022-10-10 00:37:47 +07:00
bruvzg
0103af1ddd
Fix MSVC warnings, rename shadowed variables, fix uninitialized values, change warnings=all to use /W4.
2022-10-07 11:32:33 +03:00
kobewi
52435e6f90
Disconnect TileSet from source editor if no sources
2022-10-04 20:13:01 +02:00
Rémi Verschelde
380fba6272
Merge pull request #66713 from KoBeWi/remembuh_me
...
Remember tile source sort between sessions
2022-10-03 14:52:56 +02:00
Rémi Verschelde
88f70dfacd
Merge pull request #66656 from magian1127/4.0DelAutotile
...
TileMap mouse right can delete autotile
2022-10-03 09:19:58 +02:00
kobewi
7247606f64
Remember tile source sort between sessions
2022-10-02 22:41:12 +02:00
Rémi Verschelde
e69b7083d4
Merge pull request #65903 from groud/improve_terrain_painting
...
Right-click to erase TileSet terrains and bugfixes
2022-09-30 17:44:48 +02:00
Magian
7e30343a5c
TileMap mouse right can delete autotile
2022-09-30 21:15:15 +08:00
MisterMX
b6c1a03d6c
fix(tileset): Recreate custom data editor if type has changed
...
Signed-off-by: MisterMX <mbxd12@web.de>
2022-09-28 21:16:41 +02:00
Guilherme Sousa
1ae1a02098
Fix mouse release leaving dock area
2022-09-27 13:35:01 +02:00
Eric M
16a3cec71e
Fix zoom in/out keyboard shortcuts not working since the introduction of EditorZoomWidget. Add KP shortcuts to zoom in/out.
2022-09-24 18:24:59 +10:00
Rémi Verschelde
658bfb0395
Merge pull request #66159 from MewPurPur/fix-animated-tiles-offset-unit
...
Remove px unit from animation_separation in TileSet atlas editor
2022-09-20 15:45:41 +02:00
VolTer
6a1d1f1f75
Remove px unit from animation_separation in TileSet atlas editor (as it's tile-based, not pixel-based)
2022-09-20 15:04:26 +02:00
MinusKube
0ff2020bd4
Fix atlas view drawing roots having zoom applied twice
2022-09-17 19:07:56 +02:00
Gilles Roudière
68ffa9a2a1
Right-click to erase TileSet terrains and bugfixes
2022-09-16 15:22:55 +02:00
kobewi
aafe72fcec
Fix broken patterns on TileMap layer change
2022-09-10 16:45:51 +02:00
Michael Alexsander
c4c9e41073
Make `Vector2i` values paired with `EDSCALE` be just `Vector2`
2022-09-08 14:46:32 -03:00
Rémi Verschelde
69233093d7
Merge pull request #65241 from bruvzg/no_keymap_ambiguity
...
Fix key mapping changes when moving from macOS to other platform.
2022-09-08 09:24:24 +02:00
bruvzg
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
smix8
d7f75fab60
Remove / Replace old Navigation Debug Visualization
...
- removes / replaces leftovers from old navigation debug code
- cleanes SceneTree and ProjectSettings from old navigation debug
2022-09-07 18:30:35 +02:00
kobewi
35cae71842
Fix tile source selection from picking
2022-09-07 15:02:49 +02:00
Micky
dd26ecdd31
Rename CONNECT_ONESHOT TO CONNECT_ONE_SHOT
...
For consistency. Every other exposed `one_shot` is spaced out like this.
2022-09-06 19:00:33 +02:00
Rémi Verschelde
5fb84e5702
Merge pull request #64661 from Mickeon/rename-tilemap-world
...
Rename TileMap/GridMap.`world_to_map` and opposite to `local_to_map`
2022-09-06 17:01:16 +02:00
Micky
694190a354
Rename TileMap/GridMap.`world_to_map` and opposite to `local_to_map`
...
For both TileMap and GridMap:
- `world_to_map` -> `local_to_map`
- `map_to_world` -> `map_to_local`
Also changes any mention of "world" in this context to "local" to avoid future confusion.
Finally, updates the docs of both methods for consistency.
In particular, adding a note on how to convert the returned values from local to global coordinates and vice versa.
2022-09-05 18:08:39 +02:00
SaracenOne
15ccb319a9
Fix contextual visibility of tileset and tilemap editors
2022-09-05 16:34:09 +01:00
Aaron Franke
995b9f94e8
Replace Rect2(i) has_no_area with has_area
2022-09-04 23:03:36 -05:00
Jonathan Nicholl
15d057c521
Add `is_zero_approx` methods to `Vector2`, `3`, and `4`
2022-09-02 00:29:50 -04:00
Micky
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
Rémi Verschelde
fd6453c45e
Revert "Remove NOTIFICATION_ENTER_TREE when paired with NOTIFICATION_THEME_CHANGED"
...
This reverts commit 4b817a565c
.
Fixes #64988 .
Fixes #64997 .
This caused several regressions (#64988 , #64997 ,
https://github.com/godotengine/godot/issues/64997#issuecomment-1229970605 )
which point at a flaw in the current logic:
- `Control::NOTIFICATION_ENTER_TREE` triggers a *deferred* notification with
`NOTIFCATION_THEME_CHANGED` as introduced in #62845 .
- Some classes use their `THEME_CHANGED` to cache theme items in
member variables (e.g. `style_normal`, etc.), and use those member
variables in `ENTER_TREE`, `READY`, `DRAW`, etc. Since the `THEME_CHANGE`
notification is now deferred, they end up accessing invalid state and this
can lead to not applying theme properly (e.g. for EditorHelp) or crashing
(e.g. for EditorLog or CodeEdit).
So we need to go back to the drawing board and see if `THEME_CHANGED` can be
called earlier so that the previous logic still works?
Or can we refactor all engine code to make sure that:
- `ENTER_TREE` and similar do not depend on theme properties cached in member
variables.
- Or `THEME_CHANGE` does trigger a general UI update to make sure that any
bad theme handling in `ENTER_TREE` and co. gets fixed when `THEME_CHANGE`
does arrive for the first time. But that means having a temporary invalid
(and possibly still crashing) state, and doing some computations twice
which might be heavy (e.g. `EditorHelp::_update_doc()`).
2022-08-29 11:11:29 +02:00
Rémi Verschelde
f7f8af232c
Merge pull request #64885 from Mickeon/rename-tooltip-hint
...
Rename `hint_tooltip` to `tooltip_text` & setter getter
2022-08-28 17:43:01 +02:00
Aaron Record
4b817a565c
Remove NOTIFICATION_ENTER_TREE when paired with NOTIFICATION_THEME_CHANGED
2022-08-27 11:52:29 -06:00
Micky
ef5b9a06a9
Rename `hint_tooltip` to `tooltip_text` & setget
...
`hint_tooltip` -> `tooltip_text`
`set_tooltip` -> `set_tooltip_text`
`_get_tooltip` -> `get_tooltip_text`
Updates documentation, too.
2022-08-27 01:35:01 +02:00
Rémi Verschelde
dadebb95aa
Merge pull request #64601 from MinusKube/alternative-tile-popup-bug
...
Fix alternative tile popup menu not being openable
2022-08-26 10:35:43 +02:00
MinusKube
2abccb018e
Fix alternative tile popup menu not being openable
2022-08-25 16:20:56 +02:00
MinusKube
d71b02cd19
Fix tileset image and background sometimes disappearing
2022-08-25 16:18:39 +02:00
kobewi
ece3df3938
Add per-scene UndoRedo
2022-08-22 18:05:10 +02:00
Rémi Verschelde
6ba7dacf6b
Merge pull request #63415 from ajreckof/expose_tilemap_custom_data_methods
...
Expose TileMap methods related to the name of custom data layers
2022-07-29 19:43:55 +02:00
Rémi Verschelde
7199314eb3
Merge pull request #63595 from reduz/remove-signal-connect-binds
...
Remove Signal connect binds
2022-07-29 18:10:39 +02:00
Juan Linietsky
d4433ae6d3
Remove Signal connect binds
...
Remove the optional argument p_binds from `Object::connect` since it was deprecated by Callable.bind().
Changed all uses of it to Callable.bind()
2022-07-29 16:26:13 +02:00