Commit Graph

133 Commits

Author SHA1 Message Date
Michael Alexsander 245d70bec0 Fix `ItemList` selection visual when the scrollbar visibility changes
(cherry picked from commit e298144a41)
2022-08-24 17:23:59 +02:00
Rémi Verschelde a627cdafc5
Update copyright statements to 2022
Happy new year to the wonderful Godot community!
2022-01-13 15:54:13 +01:00
Paulb23 ea0456679a
Redraw on item list custom bg/fg colour change
(cherry picked from commit 738b0fdae5)
2021-08-12 16:42:16 +02:00
Rémi Verschelde 140350d767
Style: Enforce braces around if blocks and loops
Using clang-tidy's `readability-braces-around-statements`.
https://clang.llvm.org/extra/clang-tidy/checks/readability-braces-around-statements.html
2021-05-05 15:02:01 +02:00
Rémi Verschelde b5e1e05ef2
Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
Rafał Mikrut 06976c3e84 [3.x] Fix crashes when using _input functions 2021-04-27 16:51:29 +02:00
Rémi Verschelde 49646383f1
Update copyright statements to 2021
Happy new year to the wonderful Godot community!

2020 has been a tough year for most of us personally, but a good year for
Godot development nonetheless with a huge amount of work done towards Godot
4.0 and great improvements backported to the long-lived 3.2 branch.

We've had close to 400 contributors to engine code this year, authoring near
7,000 commit! (And that's only for the `master` branch and for the engine code,
there's a lot more when counting docs, demos and other first-party repos.)

Here's to a great year 2021 for all Godot users 🎆

(cherry picked from commit b5334d14f7)
2021-01-13 16:17:06 +01:00
Rafał Mikrut 724f5f3178 Don't allow to use too big index in ItemList 2020-01-14 20:17:48 +01:00
Rémi Verschelde a7f49ac9a1 Update copyright statements to 2020
Happy new year to the wonderful Godot community!

We're starting a new decade with a well-established, non-profit, free
and open source game engine, and tons of further improvements in the
pipeline from hundreds of contributors.

Godot will keep getting better, and we're looking forward to all the
games that the community will keep developing and releasing with it.
2020-01-01 11:16:22 +01:00
Haoyu Qiu 7a752215ba Improves ItemList
* Adds range hint for integer properties
* Adds missing descriptions in documentation
* Updates some method descriptions to match the actual behavior
* Fixes second param name of `set_item_icon_transposed` from `rect` to `transposed`
2019-12-31 08:44:55 +08:00
allkhor 2c559feb92 Fixed strange behaviour of scroll in the ItemList. 2019-12-09 01:54:10 +06:00
Rémi Verschelde bfd5e09879 Range: Fix cases where max was set to or below min value
It will now raise an error whenever this happens so that we can fix
these situations. `max == min` is not allowed as it could lead to
divisions by zero in ratios, and `max < min` doesn't make much sense.

Fixes #33907.
2019-11-26 10:25:41 +01:00
codecustard 71e79af1f1 Fixes ItemList max column update
When setting the max column of an ItemList, the layout does not update until it is resized.
2019-11-06 12:26:51 -08:00
Rémi Verschelde 45577e4233
Merge pull request #32571 from DavidSichma/rect_flip
Correctly flip texture src region
2019-10-08 16:15:45 +02:00
qarmin 17344337a9 Fix crash in Control functions 2019-10-05 19:17:07 +02:00
David Sichma f73e1fae37 Correctly flip texture src region 2019-10-05 16:51:06 +02:00
Cameron Reikes 597e6e1bd9 Give up finding item if started at beginning
When the current item is -1, then the loop will infinitely repeat,
constantly setting i to zero and never exiting.
2019-07-05 22:14:49 -07:00
Tomasz Chabora 59f403de0b Fixed get_item_at_position being weird 2019-06-02 14:32:32 +02:00
Rémi Verschelde 64a88e8ef3
Merge pull request #28841 from KoBeWi/option_button_options
Improvements to incremental search
2019-06-01 11:47:06 +02:00
Tomasz Chabora 9de912caf5 Improvements to incremental search 2019-05-31 14:56:49 +02:00
Tomasz Chabora 01491aaf32 Improvements to scroll handling 2019-05-24 14:56:39 +02:00
volzhs 68c3728b47 Revert "Merge pull request #26053 from qarmin/back_scroll_to_start"
This reverts commit b5deb1dc72, reversing
changes made to 2cc8848c3c.

This change causes unwanted regression.
It's too risky to have scroll back to top in ItemList.clear()
2019-05-09 03:51:08 +09:00
Rémi Verschelde b5deb1dc72
Merge pull request #26053 from qarmin/back_scroll_to_start
Back scroll bar to start when changing folder
2019-04-30 13:35:45 +02:00
marxin 8d51618949 Add -Wshadow=local to warnings and fix reported issues.
Fixes #25316.
2019-02-20 19:44:12 +01:00
qarmin 9bf1964dff Back scroll to start when changing folder 2019-02-19 13:31:39 +01:00
Rémi Verschelde 5fc86026ca Fix typos with codespell
Using codespell 1.14.0.

Method:
```
$ cat > ../godot-word-whitelist.txt << EOF
ang
doubleclick
lod
nd
numer
que
te
unselect
EOF
$ codespell -w -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po"
$ git diff // undo unwanted changes
```
2019-02-13 09:23:29 +01:00
homer666 5f47e18b0f ItemList: ignore `ui_select` action if Select Mode is not "Multi" 2019-01-18 01:54:24 +11:00
Rémi Verschelde b16c309f82 Update copyright statements to 2019
Happy new year to the wonderful Godot community!
2019-01-01 12:58:10 +01:00
Juan Linietsky f2e54057ae -Moved EditorDefaultValue to ClassDB, made it core
-Removed one and zero hints for properties, replaced by default value
2018-11-08 11:30:59 -03:00
groud 0ec448d21d Fixes icons in itemlist not working 2018-11-07 18:29:24 +01:00
groud bdb5282ea0 Enhance the tilemap transform buttons 2018-10-30 14:43:52 +01:00
Superwaitsum e5041ad0f5 Add some limits on the Editor Settings 2018-10-24 19:46:33 -05:00
Rémi Verschelde 277b24dfb7 Make core/ includes absolute, remove subfolders from include path
This allows more consistency in the manner we include core headers,
where previously there would be a mix of absolute, relative and
include path-dependent includes.
2018-09-12 09:52:22 +02:00
groud 5b5191ccf0 Fix a mistake in itemlist multiselect signal 2018-08-24 23:05:17 +02:00
Rémi Verschelde 099f74584a Bind ItemList's item_custom_fg_color methods
Fixes #21086.
2018-08-17 13:46:33 +02:00
Hein-Pieter van Braam 0e29f7974b Reduce unnecessary COW on Vector by make writing explicit
This commit makes operator[] on Vector const and adds a write proxy to it.  From
now on writes to Vectors need to happen through the .write proxy. So for
instance:

Vector<int> vec;
vec.push_back(10);
std::cout << vec[0] << std::endl;
vec.write[0] = 20;

Failing to use the .write proxy will cause a compilation error.

In addition COWable datatypes can now embed a CowData pointer to their data.
This means that String, CharString, and VMap no longer use or derive from
Vector.

_ALWAYS_INLINE_ and _FORCE_INLINE_ are now equivalent for debug and non-debug
builds. This is a lot faster for Vector in the editor and while running tests.
The reason why this difference used to exist is because force-inlined methods
used to give a bad debugging experience. After extensive testing with modern
compilers this is no longer the case.
2018-07-26 00:54:16 +02:00
Rémi Verschelde 13239cd4cc Export: Properly reload preset when opening dialog
Fixes #20119 where newly installed templates were not detected.

Also fix a bug with preset deletion where it would attempt to
edit an already removed preset. For this I made it so that
ItemList::deselect_all() also resets `current` to -1, as a manual
ItemList::deselect(idx) already does.
2018-07-18 13:49:34 +02:00
Guilherme Felipe b2e78e117c Fix performance for godot's interface 2018-07-01 09:48:03 -03:00
Rémi Verschelde 9dbfe5dc61
Merge pull request #17578 from endragor/ft-outlines
Perfect FreeType-based outlines for DynamicFonts
2018-05-08 15:37:00 +02:00
Juan Linietsky 47db64ac00
Merge pull request #15258 from RyanStein/bugfix-15241
Use exact positioning for the ItemList::get_tooltip method.
2018-05-08 10:36:22 -03:00
Ruslan Mustakov 5cd12f6649 Perfect FreeType-based outlines for DynamicFonts
- Implement outlines based on FreeType Stroker API. This allows
  artifact-free results, similar to what you will see in Web or any text
  editing tools. Outline is a part of DynamicFont rather than Label,
  because outlines have to be baked into the font's atlas. Font has a
  default outline_color and a Label can specify font_outline_modulator
  that will be multiplied with the Font's color to get the final result.

- draw_char now has to be called twice to fully render a text - first
  with p_outline == true for each character and then with
  p_outline == false for each character.

- Number of draw-calls is reduced from 5 to 2 per outlined character.

- Overall cleanup of DynamicFont code, extracted duplicated code pieces
  into separate methods.

- The change is backward-compatible - Labels still have outline
  properties that work exactly as they worked before.

Closes #16279.
2018-05-08 13:45:24 +07:00
ShyRed cbcb96ae85 ItemList selection: Check against item count
ItemList needs to check against the number of items available when the user moves the selection via "ui_right" action.
2018-04-14 14:36:53 +02:00
Poommetee Ketson 72aa87758a
Update classref and docs, fix missing parameters' name 2018-04-11 10:20:22 +07:00
Poommetee Ketson ed3b080ca6 Fix converting to tileset crashes Godot if existing file is not tileset
also make TileSetEditorPlgn tile list updates the preview modulate
2018-03-23 21:27:30 +07:00
Rémi Verschelde fe93459ef9
Merge pull request #17345 from AlexHolly/expose-itemlist-move-item
expose Itemlist.move_item and optimize functionality
2018-03-13 20:05:00 +01:00
Alexander Holland a3d2f59dbe expose itemlist.unselect_all() 2018-03-13 16:46:25 +01:00
Alexander Holland 73146af740 expose Itemlist.move_item and optimize functionality 2018-03-13 15:19:43 +01:00
Alexander Holland 11e40d3700 expose Itemlist.is_anything_selected 2018-03-11 03:01:16 +01:00
Rémi Verschelde d5daaa72fa
Merge pull request #15306 from poke1024/item-list-draw-speed
Boost drawing speed of ItemLists with many items
2018-02-19 21:53:59 +01:00
Michael Alexsander Silva Dias 4dbf6ac1b8 Added "allow_reselect" property to ItemList and enabled it for the method/help lists. 2018-02-14 03:38:07 -02:00