A Thousand Ships
308dbb8c63
[Core] Add scalar versions of `Vector*` `min/max/clamp/snap(ped)`
...
Convenience for a number of cases operating on single values
2024-05-02 10:31:13 +02:00
Aaron Franke
1bcbbe96c4
Organize existing code for editor plugins
2024-04-27 11:59:58 -07:00
kobewi
2cac59fbfa
Add tooltips for tile source types
2024-04-26 14:38:45 +02:00
kobewi
6b69ae8dd0
Reuse single erase pattern in tile editor
2024-04-17 20:43:00 +02:00
Rémi Verschelde
0473f291a7
Merge pull request #90709 from kleonc/tile-set-editor-atlas-with-separation-rect-drawing
...
Fix selection rect drawing in `TileSet` editor when create/remove tiles with separation
2024-04-17 10:58:49 +02:00
kleonc
2dfc4f4487
Fix TileSet editor create/remove tiles selection rect drawing
2024-04-15 19:03:19 +02:00
Gilles Roudière
bb6a1cb5a8
Fix heap-use-after-free error in TileMapLayerEditor
2024-04-12 17:56:28 +02:00
Rémi Verschelde
f6a78f83aa
Merge pull request #90207 from groud/fix_no_cached_rect
...
Fix "no cached rect" errors in TileMapLayer editor
2024-04-04 17:09:26 +02:00
Gilles Roudière
c928273c6c
Fixes "no cached rect" errors in TileMapLayer editor
2024-04-04 16:28:31 +02:00
Gilles Roudière
256a6713f2
Correctly update TileMapLayer highlighting when disabling it
2024-04-04 15:25:42 +02:00
Rémi Verschelde
1dacd6a527
Merge pull request #89179 from groud/expose_tile_map_layer
...
Expose TileMapLayer
2024-04-04 14:31:16 +02:00
Gilles Roudière
3cd4b2859c
Expose TileMapLayer
2024-04-03 11:02:34 +02:00
Haoyu Qiu
479b7afa8e
Add context support for editor property name i18n
2024-03-31 18:40:14 +08:00
A Thousand Ships
79ba22a73f
Use `Vector*` component-wise `min/max/clamp` functions where applicable
2024-03-20 13:47:42 +01:00
Rémi Verschelde
006f5bc11c
Merge pull request #89437 from jsjtxietian/help-label
...
Fix help label will be partly outside the view area at 150% editor scale
2024-03-13 18:41:50 +01:00
jsjtxietian
856e071762
Fix help label will be partly outside the view area at 150% editor scale
2024-03-13 17:50:02 +08:00
jsjtxietian
f59c147d1f
Fix center view button appears outside the GenericTilePolygonEditor
2024-03-13 12:46:14 +08:00
kobewi
4e88fb87b6
Don't store values when loading them
2024-03-07 15:01:12 +01:00
Hugo Locurcio
8221e7546b
Add editor shortcuts to toggle bottom panel visibility
...
Default shortcuts use the first or second letter of each word.
This also adds a new shortcut to toggle the last opened bottom panel.
On editor startup, this defaults to the first panel in the list
(which is the Output panel).
2024-03-05 15:53:15 +01:00
Rémi Verschelde
8f3e2a6113
Merge pull request #88912 from AThousandShips/tile_drag_fix
...
[TileSet] Fix crash when deleting dragged polygon point
2024-02-27 16:37:10 +01:00
A Thousand Ships
fe203d7003
Prevent threading problems in `TileMap`
2024-02-27 15:38:25 +01:00
A Thousand Ships
0ba7463803
[TileSet] Fix crash when deleting dragged polygon point
2024-02-27 15:16:27 +01:00
Muller-Castro
1638c1b28f
Add const lvalue ref to editor/* container parameters
2024-02-26 15:28:15 -03:00
Aaron Franke
1cb531ddb6
Move 2D-only resources to their own folder
2024-02-26 05:22:45 -06:00
kit
eb6ca91ba6
Extract BottomPanel from EditorNode
2024-02-20 15:09:07 -05:00
kobewi
a031911c82
Use check_changed_settings_in_group() everywhere
2024-02-19 21:34:45 +01:00
Rémi Verschelde
36b88cbb8a
Merge pull request #86694 from KoBeWi/deugly_the_text
...
Tweak tile atlas help label positions
2024-02-19 00:07:37 +01:00
Michael Alexsander
7b42c24550
Make auto translation inheritable
2024-02-15 16:51:19 -03:00
Hugo Locurcio
53dce9a84e
Tweak TileMap editor's missing source message to use "bottom panel" term
...
This term is used throughout the editor (including EditorPlugin)
as these bottom panels are technically not tabs.
2024-02-13 18:27:42 +01:00
Rémi Verschelde
391a8e5327
Merge pull request #85868 from KoBeWi/knowyourtiles
...
Add descriptions for tile properties
2024-02-13 11:24:42 +01:00
Gilles Roudière
5a999d67ec
Change TileMapEditor to TileMapLayerEditor
2024-02-12 10:11:45 +01:00
A Thousand Ships
684752e75b
Replace error checks against `size` with `is_empty`
2024-02-09 12:50:15 +01:00
A Thousand Ships
dbcd82ba67
[Editor] Fix threading problems with `TileMap` preview
2024-01-22 13:44:36 +01:00
Yuri Sizov
635b8a1474
Split theme generation logic into several subroutines
...
This change introduces a new theme configuration struct to be
passed to the aforementioned routines to better control reuse
of styles and definitions in the generator.
Everything not passed and not explicitly shared is scoped so it
is not automatically accessible throughout the routine. This
should ensure that the decision to share styles is a conscious one.
In the future we will try to reduce the number of unique definitions
and share most of it. This PR is a stepping stone on this path.
This also puts the effort into separating redefinitions of
default theme items vs custom types introduced only by the editor.
In a few cases where editor-specific definitions need to reference
default definitions we simply fetch them from the theme. It's not
ideal and hides the dependency a bit, but hopefully these cases
will be abstracted properly in due time.
2024-01-16 11:57:45 +01:00
Yuri Sizov
95b27fe8c7
Reorganize code related to editor theming
...
This change introduces a new EditorThemeManager class
to abstract theme generatio and its subroutines.
Logic related to EditorTheme, EditorColorMap, and editor
icons has been extracted into their respective files with
includes cleaned up.
All related files have been moved to a separate folder to
better scope them in the project. This includes relevant
generated files as well.
2024-01-16 11:57:45 +01:00
kleonc
baa5504700
Fix some TileMap debug drawing truncating to ints
2024-01-14 02:02:46 +01:00
kobewi
0e8f90f4c8
Update deferred calls to use Callables
2024-01-09 16:11:47 +01:00
Sofox
3614aa971d
Made tooltip on TileSet Paint Button give more information when disabled.
2024-01-09 15:09:19 +00:00
Rémi Verschelde
dd487ebb0b
Merge pull request #86568 from jsjtxietian/fix-infinite-loop-tile
...
Fix potential infinite loop when calculating tile editor zoom level
2024-01-08 11:55:30 +01:00
jsjtxietian
42c672afd6
Fix infinite loop when calculating zoom level if tile_size * max_zoom < default
2024-01-06 16:11:26 +08:00
Muller-Castro
96a95cb974
Add const lvalue ref to container parameters
2024-01-05 14:49:57 -03:00
Rémi Verschelde
5eb22a317d
Merge pull request #83577 from DennisManaa/fix-translation-for-item-list
...
Add automatic translation of items to ItemList
2024-01-04 16:39:36 +01:00
Rémi Verschelde
6c390b620d
Merge pull request #84445 from Rubonnek/add-const-references-clang-tidy
...
Add const references detected by clang-tidy
2024-01-04 14:25:33 +01:00
kobewi
3058a4926f
Tweak tile atlas help label positions
2024-01-01 20:35:50 +01:00
jsjtxietian
1217d7d678
Fix `UndoRedo history mismatch` when creating a new tile atlas
2023-12-21 17:25:21 +08:00
Yuri Sizov
1c0be67952
Merge pull request #85452 from BleedingXiko/tilemap-typo
...
Fix typo in TileMap editor tooltip
2023-12-19 13:01:54 +01:00
Wilson E. Alvarez
a3cb1b096f
Add const references detected by clang-tidy
2023-12-16 13:36:44 -05:00
Yuri Sizov
a6c0c90058
Merge pull request #86066 from Wiltof/tilemapPaint
...
Reset TileMap editor `drag_type` when the toolbar mode is not selected
2023-12-14 17:38:57 +01:00
Yuri Sizov
203c8c31d3
Merge pull request #85071 from Rubonnek/remove-unnecessary-assignments
...
Remove unnecessary assignments
2023-12-14 17:38:34 +01:00
wilto938
5a3de5bc30
Reset TileMap editor `drag_type` by using the _stop_dragging() function when the toolbar mode is not selected
2023-12-14 11:58:36 +01:00
Gilles Roudière
18fe0bd025
Move tile transforms handling cache to TileData
2023-12-13 17:44:59 +01:00
Wilson E. Alvarez
80fb8db31f
Remove unnecessary assignments
...
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2023-12-13 11:06:26 -05:00
kobewi
6e31c413b6
Add descriptions for tile properties
2023-12-07 16:57:34 +01:00
Yuri Sizov
01888ae7ab
Fix theme application in various editor dialogs
...
99% of the time we shouldn't rely on the signal, we
should use the notification instead. I left some comments
in places where I couldn't quickly improve the code.
2023-12-04 13:18:48 +01:00
BleedingXiko
971b0a7bda
fix typo in tile_map_editor.cpp
2023-11-27 16:40:38 -08:00
DennisManaa
1a1c542836
Implement automatic translation for ItemList
2023-10-23 10:14:08 +02:00
OppositeNor
8f26cdcaef
Fix tileset out of screen
2023-10-22 13:39:14 -04:00
kobewi
291be2c66c
Swap TileMap and TileSet
2023-10-13 09:55:24 +02:00
Gilles Roudière
8b608f3e6e
Fixes undo/redo in tileset polygon editor
2023-10-10 10:33:05 +02:00
Rémi Verschelde
7513ae6d06
Merge pull request #81812 from MewPurPur/zoomies
...
Incorporate min and max zoom limits into the EditorZoomWidget
2023-10-09 15:31:49 +02:00
MewPurPur
44d782681c
Incorporate min and max zoom limits into the EditorZoomWidget
2023-10-07 20:41:59 +03:00
kobewi
09b30be86d
Add vararg call() method to C++ Callable
2023-10-05 11:35:29 +02:00
smix8
27267b62cb
Update TileMap to use new navigation polygon baking
...
Updates TileMap to use new navigation polygon baking.
2023-09-28 10:35:47 +02:00
Rémi Verschelde
8ddf73c74d
Merge pull request #81939 from YuriSizov/gui-flat-and-depressed
...
Replace flat buttons with flat-styled buttons with a visible pressed state
2023-09-25 17:18:29 +02:00
kobewi
07a00cf822
Don't allow transforming scene tiles
2023-09-20 14:10:21 +02:00
Rémi Verschelde
b7c524d358
Merge pull request #81925 from groud/fix_tilemap_editor_ctrl_deselect
...
Fix TileMap editor so that pressing control deselects cells correctly
2023-09-20 13:10:04 +02:00
Yuri Sizov
4bd569be95
Replace flat buttons with flat-styled buttons with a visible pressed state
2023-09-19 22:36:29 +02:00
Gilles Roudière
83f1e31483
Fix TileMap editor so that pressing control deselects cells correctly
2023-09-19 15:12:03 +02:00
ajreckof
6afadbaa9f
Replace Ctrl in editor shortcuts with Cmd or Ctrl depending on platform
2023-09-19 10:29:07 +02:00
Rémi Verschelde
01d9162a98
Merge pull request #81813 from MewPurPur/fix-paint-icon
...
Fix grayed out paint icons
2023-09-18 10:38:28 +02:00
MewPurPur
c094631ba0
Fix grayed out paint icons
2023-09-17 19:23:28 +03:00
A Thousand Ships
75ee58fd04
[Editor] Replace `ERR_FAIL_COND` with `ERR_FAIL_NULL` where applicable
2023-09-15 20:15:39 +02:00
Yuri Sizov
8ecc0c4f47
Fix accessing editor theme items throughout the UI
...
This also exposes `EditorInterface::get_editor_theme`.
2023-09-15 14:51:01 +02:00
kobewi
a9f3154da3
Add per-tile flipping and transposing
2023-09-09 00:56:38 +02:00
kobewi
6de34fde27
Add EditorStringNames singleton
2023-09-03 19:58:18 +02:00
Rémi Verschelde
3417f34a37
Merge pull request #80529 from KoBeWi/unfortunate_fix_is_unfortunate 🤦♂️
...
Fix TileSet not disappearing on deselecting TileMap
2023-08-29 12:43:10 +02:00
Rémi Verschelde
9229ea121c
Merge pull request #77986 from KoBeWi/outside_the_texture,_only_death_awaits
...
Cleanup tiles outside the texture
2023-08-28 20:37:04 +02:00
kobewi
52d41cc555
Add option to cleanup tiles outside the texture
2023-08-28 15:15:45 +02:00
Rémi Verschelde
6636ccc3ea
Merge pull request #80943 from rakkarage/tileset-atlas-merge-rgb8
...
Convert TileSet Atlas Merge input images to RGBA8 to match output, if needed
2023-08-28 15:04:16 +02:00
Rémi Verschelde
bcbe1fd5e0
Merge pull request #80754 from KoBeWi/TileSetImprovementsCollectionSource
...
Improve scene tiles workflow
2023-08-28 15:03:26 +02:00
Rémi Verschelde
a7ded904de
Merge pull request #79678 from thiagola92/auto_create_tilesets_for_multiple_atlas
...
Auto create tile for multiple atlases
2023-08-28 15:02:37 +02:00
Rémi Verschelde
2d42357464
Merge pull request #77316 from rakkarage/tileset_atlas_merge
...
Include animation frames in tile atlas merge.
2023-08-28 15:01:24 +02:00
Rémi Verschelde
0655a7d7d3
Merge pull request #80517 from YuriSizov/tsa-randomly-picked-you-for-mandatory-inspection-i-think-not
...
Avoid unnecessary inspector updates when loading or switching scenes
2023-08-28 12:05:06 +02:00
thiagola92
c8a94ea3e8
Support auto create tiles when adding multiple atlases
...
TileSet add button support multiple files
Join most of the code of `_drop_data_fw()` and `_texture_file_selected()` in a new function `_load_texture_files()`
Rename `init_source` to `init_new_atlases`
2023-08-27 10:45:03 -03:00
Yuri Sizov
6da4ad1662
Merge pull request #80968 from rakkarage/alternative-icon-scale
...
Call `add_child` after `set_rect` to fix size bug
2023-08-25 21:26:50 +02:00
Pippo Pesic
0044217a7f
Add `px` suffix to TileSet `Separation` value
...
Add px suffix to TileSet separation value
2023-08-25 08:58:11 -07:00
Rakka Rage
e93d2a04df
Call `add_child` after `set_rect` to fix size bug
2023-08-25 10:10:47 -04:00
Rakka Rage
dc2aa69c46
Convert TileSet Atlas Merge input images to RGBA8 to match output, if needed
2023-08-23 19:26:57 -04:00
Rakka Rage
c17848f07d
Include animation frames in tile atlas merge.
2023-08-23 16:19:24 -04:00
kobewi
a88e3b8604
Improve scene tiles workflow
2023-08-18 13:55:30 +02:00
Rémi Verschelde
8d0c9a4c87
Merge pull request #80317 from KoBeWi/taking_shortcuts
...
Ensure TileMap editor shortcuts are handled
2023-08-17 11:24:39 +02:00
Rémi Verschelde
c78be12f42
Merge pull request #80610 from lawnjelly/fix_tilemap_editor_plugin_crash2
...
Fix `TileMapEditorPlugin` crash by storing tilemap ID instead of pointer
2023-08-14 15:31:19 +02:00
lawnjelly
356fc728a4
Fix `TileMapEditorPlugin` crash by storing tilemap ID instead of pointer
...
Store the tilemap ObjectID instead of raw pointer, and check it is valid before access.
2023-08-14 12:56:52 +01:00
lawnjelly
fa7be20ee1
Fix crash on exit where TileSet calls destroyed TileSetAtlasSourceEditor
...
Removes signal from TileSet on destroying TileSetAtlasSourceEditor, to prevent TileSet calling function in destroyed TileSetAtlasSourceEditor.
2023-08-14 10:25:50 +01:00
Yuri Sizov
2445414aa0
Avoid unnecessary inspector updates when loading or switching scenes
...
This should result in some noticeable performance improvements,
aside from fixing bugs due to conflicts in logic.
This also simplifies some related code identified while debugging.
2023-08-12 13:32:59 +02:00
kobewi
6b7829b5ff
Fix TileSet not disappearing on deselecting TileMap
2023-08-12 00:47:26 +02:00
kobewi
f02133a4a2
Fix TileSet with TileMap handling
2023-08-09 23:50:45 +02:00
kobewi
181eecc51b
Ensure TileMap editor shortcuts are handled
2023-08-06 03:38:03 +02:00
kobewi
91328a86cd
Ignore null "id" in tile source proxy
2023-08-01 22:52:16 +02:00
Yuri Sizov
6731accf80
Merge pull request #79419 from KoBeWi/no_ID_for_you
...
Unexpose tile source ID
2023-08-01 17:25:11 +02:00