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
ajreckof
8433ad5353
expose TileMap methods related to the name of custom data layers
2022-07-29 15:05:42 +02:00
Estelle Linkpy Reid
d5926b435e
Make the alternative tile control correctly handle right-click dragging.
2022-07-29 03:11:08 +02:00
Rémi Verschelde
2e05cc3314
Merge pull request #58361 from V-Sekai/tileset_editor_selection
...
Fix tileset editor visiblity and selection context
2022-07-28 17:31:21 +02:00
Rémi Verschelde
199ea349f5
Merge pull request #57698 from bluenote10/feature/rename_translated_to_translated_local
2022-07-28 10:03:07 +02:00
Rémi Verschelde
222e489dfd
Merge pull request #63496 from groud/fix_tile_set_not_saving
...
Fix TileSet not loading correctly when embedded in a scene
2022-07-26 18:27:05 +02:00
Gilles Roudière
8da2710911
Fix TileSet not loading correctly when embedded in a scene
2022-07-26 17:39:35 +02:00
Rémi Verschelde
90019676b0
Code quality: Fix header guards consistency
...
Adds `header_guards.sh` bash script, used in CI to validate future
changes. Can be run locally to fix invalid header guards.
2022-07-25 11:17:40 +02:00
luz paz
38aaaa3cf9
Fix various typos not caught by codespell
...
Revert upstream `core/input/gamecontrollerdb.txt`. Upstream fix: https://github.com/gabomdq/SDL_GameControllerDB/pull/600
2022-07-21 07:38:23 -04:00
FireForge
97dfbea6ad
Rename Control PRESET_WIDE to PRESET_FULL_RECT
2022-07-18 20:08:11 -05:00
Fabian Keller
2bf9e6090c
rename translate(d) to translate(d)_local in Transform 2D/3D
2022-07-16 11:47:54 +02:00
Rémi Verschelde
b942c1ffe3
Merge pull request #62827 from fire-forge/ok-cancel
...
Add `ok_button_text` to AcceptDialog and `cancel_button_text` to ConfirmationDialog
2022-07-13 14:10:38 +02:00
FireForge
e4067064ce
Add ok_button_text to AcceptDialog and cancel_button_text to ConfirmationDialog
2022-07-09 10:47:08 -05:00
kobewi
d2900429e8
Add static methods for creating Image and ImageTexture
2022-07-08 13:40:47 +02:00
bruvzg
344ba0ffaf
Refactor Font configuration and import UI, and Font resources.
2022-07-06 14:12:36 +03:00
kobewi
2ccef6616e
Fix crash when drawing invalid tiles
2022-06-23 14:34:23 +02:00
FireForge
88589c091b
Improve TileSet editor and add more suffixes
2022-06-20 15:28:19 -05:00
bruvzg
b5c96df277
Move duplicate AutoWrap, Overrun and VisibleChar behavior enums to the TextServer.
2022-06-16 16:49:37 +03:00
FireForge
b8720500b0
Improve TileMap editor layer selection button
2022-06-14 14:14:19 -05:00
Rémi Verschelde
d4f31e201d
Merge pull request #61809 from groud/terrain_center_bit
2022-06-13 17:06:34 +02:00
Gilles Roudière
62d2549e9e
Add terrain center bit
2022-06-10 14:37:39 +02:00
kobewi
cf2287a2b4
Add shortcuts to GenericTilePolygonEditor
2022-06-07 02:03:04 +02:00
FireForge
87cfe90f6e
Update viewport when toggling TileMap grid
2022-06-03 13:52:53 -05:00
Aaron Record
900c676b02
Use range iterators for RBSet in most cases
2022-05-19 12:09:16 +02:00
reduz
746dddc067
Replace most uses of Map by HashMap
...
* Map is unnecessary and inefficient in almost every case.
* Replaced by the new HashMap.
* Renamed Map to RBMap and Set to RBSet for cases that still make sense
(order matters) but use is discouraged.
There were very few cases where replacing by HashMap was undesired because
keeping the key order was intended.
I tried to keep those (as RBMap) as much as possible, but might have missed
some. Review appreciated!
2022-05-16 10:37:48 +02:00
Vitika9
aef3b5681d
Changed signals of ItemList
2022-05-06 13:09:04 +05:30
Rémi Verschelde
c273ddc3ee
Style: Partially apply clang-tidy's cppcoreguidelines-pro-type-member-init
...
Didn't commit all the changes where it wants to initialize a struct
with `{}`. Should be reviewed in a separate PR.
Option `IgnoreArrays` enabled for now to be conservative, can be
disabled to see if it proposes more useful changes.
Also fixed manually a handful of other missing initializations / moved
some from constructors.
2022-05-02 16:28:25 +02:00
kobewi
142d0e7d75
Change Place Random Tiles to an icon
2022-05-01 22:13:30 +02:00
Rémi Verschelde
8dfa12cae7
Merge pull request #59979 from bruvzg/cpp_check2
2022-04-27 10:08:26 +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
de4c97758a
Fix more issues found by cppcheck.
2022-04-20 10:34:00 +03:00
bruvzg
f851c4aa33
Fix some issues found by cppcheck.
2022-04-06 14:34:37 +03:00
Rémi Verschelde
f8ab79e68a
Zero initialize all pointer class and struct members
...
This prevents the pitfall of UB when checking if they have been
assigned something valid by comparing to nullptr.
2022-04-04 19:49:50 +02:00
Michael Alexsander
deb1342036
Make TabBar/Container
default their alignments to the left instead of center
2022-03-17 18:12:23 -03:00
kobewi
42078dec9f
Allow negative indexes in ItemList and PopupMenu
2022-03-12 01:14:03 +01:00
Igor Kordiukiewicz
ed0da06958
Added property hint to id property in tile set atlas source editor
2022-03-02 20:33:03 +01:00
bruvzg
74ff5921d6
Improve popup window handling.
...
Add window FLAG_POPUP and a platform specific routines to control popup auto-hiding and event forwarding.
2022-02-25 09:33:27 +02:00
kobewi
b727b81468
Fix source picking with sort
2022-02-24 01:20:21 +01:00
SaracenOne
04535bdc7d
Fix contextual tileset editor and ensure button is always visible when tileset is available
2022-02-21 13:34:11 +00:00
Rémi Verschelde
009254d87c
Merge pull request #58187 from jakobbouchard/notification-switch-chunk-c
...
Convert _notification methods to switch - Chunk C
2022-02-16 20:58:55 +01:00
Jakob Bouchard
6553f5c242
Convert _notification methods to switch - Chunk C
2022-02-16 13:03:05 -05:00
kobewi
547786650f
Automatically select source of the picked tile
2022-02-16 00:39:00 +01:00
Rémi Verschelde
11572c6e30
Editor: Cleanup some includes dependencies
...
Removes some unnecessary includes from `editor_node.h`, and instead add
those where they're used.
Removes unnecessary `editor_node.h` includes in various editor classes.
Renames `dynamicfont` to `dynamic_font` in a couple files.
Misc cleanup while jumping through that rabbit hole.
2022-02-15 14:54:15 +01:00
Rémi Verschelde
6d708dfd6a
Merge pull request #57329 from Ev01/tileset-editor-minimum-zoom
2022-02-15 14:20:22 +01:00
trollodel
05b56f316d
Remove most EditorNode constructor parameters and fields
2022-02-14 14:16:24 +01:00
Hendrik Brucker
b396fd4eef
Improve compilation speed (forward declarations/includes cleanup)
2022-02-12 02:46:22 +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
Rémi Verschelde
3db1d689ce
Merge pull request #57631 from groud/terrain_fix_with_empty_cells
2022-02-04 19:03:44 +01:00
Gilles Roudière
64e53cdc55
Fixes terrain painting on TileMaps when using empty terrain bits
2022-02-04 18:10:12 +01:00
bruvzg
244db37508
Cleanup and move char functions to the char_utils.h
header.
2022-02-04 11:35:01 +02:00
Markus Sauermann
51b5b51653
Fix TileMap Display Grid fadeout
2022-02-01 18:58:27 +01:00
Ev01
c66ab56544
Set a minimum zoom of 1% and a maximum zoom of 10,000% on the tileset editor
...
Fixes issue #57292 where zooming out too much stops
you from being able to zoom back in
2022-01-30 13:45:14 +11:00
Rémi Verschelde
e22a162003
Merge pull request #57365 from pycbouh/editor-icons-uniformity
2022-01-28 23:53:23 +01:00
Yuri Sizov
876345191f
Fix theme application in various curve editors
2022-01-29 01:03:43 +03:00
Rémi Verschelde
b8b33df178
TileSetAtlasSource: Make get_tile_data
return TileData *
...
This is now possible thanks to `Variant` changes.
Also unbind some `_` prefixed methods which don't need to be exposed.
2022-01-28 14:27:12 +01:00
Igor Kordiukiewicz
a6b20c1816
Fixes TileMap editor not disappearing
2022-01-27 02:49:29 +01:00
kobewi
e793331cd7
Allow sorting tileset sources
2022-01-26 13:58:32 +01:00
kobewi
98692d68c3
Minor tweaks and fixes to panning
2022-01-23 13:49:53 +01:00
kobewi
74bfe88267
Add ViewPanner to 2D editor
2022-01-21 18:35:06 +01:00
Rémi Verschelde
472b5b1167
Merge pull request #56249 from PucklaMotzer09/physics_layer_tooltip
2022-01-14 21:04:28 +01:00
luz paz
858bcd5058
Fix various typos
...
Found via `codespell -q 3 -S ./thirdparty,*.po,./DONORS.md -L ackward,ang,ans,ba,beng,cas,childs,childrens,dof,doubleclick,expct,fave,findn,gird,hist,inh,inout,leapyear,lod,nd,numer,ois,ony,paket,ro,seeked,sinc,switchs,te,uint,varn,vew`
2022-01-13 23:20:01 -05:00
PucklaMotzer09
56b47b673e
Add tooltips to all tile data editor properties
2022-01-13 16:04:54 +01:00
Rémi Verschelde
52c41e6cc0
Merge pull request #56253 from PucklaMotzer09/tile_editor_select
2022-01-13 11:45:15 +01:00
kobewi
ba7ed05792
Unify panning in sub-editors and make it configurable
2022-01-11 13:57:19 +01:00
kobewi
562fc4cc0d
Rename TextureRect.expand to ignore_texture_size
2022-01-07 20:21:17 +01:00
Rémi Verschelde
6994602e4f
Merge pull request #56429 from PucklaMotzer09/tile_set_editor_hide
2022-01-04 10:22:47 +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
PucklaMotzer09
65881a9734
Correctly show and hide tile set editor panel
2022-01-02 15:22:51 +01:00
PucklaMotzer09
d45cab99ec
Correctly deselect properties of TileDataCollisionEditor
2021-12-26 16:26:58 +01:00
Rémi Verschelde
4129c1d140
Merge pull request #55299 from nathanfranke/renames
2021-12-09 10:22:24 +01:00
Nathan Franke
41a20171eb
align to horizontal_alignment, valign to vertical_alignment, related
2021-12-09 01:38:46 -06:00
kobewi
3f4728fe54
Fix some containers disabling wrong scrollbars
2021-12-09 00:25:17 +01:00
kobewi
841a9ef820
ScrollContainer's scrollbar visibility is now enum
2021-12-07 18:27:12 +01:00
Aaron Franke
24f57886d0
Expose max_axis_index and max_axis_index for Vector2(i)
...
Some cleanup with Vector3(i)'s methods so that it is consistent with Vector2, for example it returns enums internally (GDScript still gets ints).
2021-12-02 23:45:41 -06:00
Fazil Babu
61c2d397d6
Right-clicking with copied tiles cancels it
2021-11-30 00:23:44 +05:30
Lightning_A
e078f970db
Rename remove()
to remove_at()
when removing by index
2021-11-23 18:58:57 -07:00
Yuri Roubinsky
eabf8f5edf
Added reset_size
method to Control
and Window
classes
2021-11-22 16:55:21 +03:00
Aaron Franke
3c0fdcc8ac
Use "enum class" for input enums
2021-11-12 15:37:54 -06:00
Gilles Roudière
1224d7a25c
Implement texture padding in TileSetAtlasSources
2021-11-12 15:14:10 +01:00
Rémi Verschelde
57ae154e86
Merge pull request #53987 from groud/tile_data_inspector_plugin
2021-11-12 15:10:54 +01:00
Brian Semrau
a90e318a19
Fix previews sometimes displaying wrong/blank image
2021-11-05 12:58:14 -04:00
Brian Semrau
ac24070056
Use Callable in RS::request_frame_drawn_callback
2021-11-05 01:59:38 -04:00
Rémi Verschelde
529968df30
Merge pull request #54396 from groud/implement_terrain_other_brushes
2021-11-01 22:27:06 +01:00
Gilles Roudière
699f020f1d
Fix TileSet editor drag and drop not working
2021-11-01 10:22:41 +01:00
Gilles Roudière
c609d39214
Implement missing TileMap brushes for terrains
2021-10-29 19:46:42 +02:00
Yuri Sizov
12838bd99d
Add focus font color to Button and derivatives
2021-10-26 17:42:40 +03:00