summaryrefslogtreecommitdiff
path: root/scene/main/canvas_item.h
AgeCommit message (Collapse)Author
2023-01-05One Copyright Update to rule them allRémi Verschelde
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".
2022-12-17Scale MSDF font outline with the font size and MSDF source size to match ↵bruvzg
dynamic font behavior.
2022-11-29Move z_index, z_as_relative and y_sort_enabled from Node2D to CanvasItemHendrik Brucker
2022-10-31Viewport canvas cull mask featureBimDav
Co-authored-by: Valentin Zagura <puthre@gmail.com>
2022-10-27Merge pull request #67043 from clayjohn/clip_childrenClay John
Improve behaviour of clip_children by clipping to parent alpha value but still retaining parent color
2022-10-19Add methods to get target filter and repeatkobewi
2022-10-14Implement multiple clip_children modes for CanvasItemsclayjohn
2022-09-06Rename raise() to move_to_front()kobewi
2022-08-29Rename `CanvasItem.update()` to `queue_redraw()`Micky
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-23Add font LCD sub-pixel anti-aliasing support.bruvzg
2022-07-28Remove `first_draw` and reset visibility when entering treeRindbee
2022-07-20Fix `CanvasItem` not exiting its canvas group on canvas exitkleonc
2022-07-15Use BitField hint for the TextServer enums. Add missing parts for BitField ↵bruvzg
support to the GDextension API.
2022-07-06Refactor Font configuration and import UI, and Font resources.bruvzg
2022-04-12Restore antialiasing for `draw_line`Yuri Roubinsky
2022-04-01Removed show_on_top property in CanvasItemVitika9
2022-03-18Merge pull request #58394 from bruvzg/rtl_hintRémi Verschelde
2022-02-22Fix invisible CanvasItem visibility issueMarkus Sauermann
2022-02-21Add RichTextLabel "hint" tag.bruvzg
2022-02-19Fix CanvasItem visibility propagationkobewi
2022-02-12Improve compilation speed (forward declarations/includes cleanup)Hendrik Brucker
2022-02-06Rework CanvasItem visibility propagationkobewi
2022-02-05Add visibility to CanvasLayerkobewi
2022-01-03Update copyright statements to 2022Rémi Verschelde
Happy new year to the wonderful Godot community!
2021-12-09align to horizontal_alignment, valign to vertical_alignment, relatedNathan Franke
2021-10-25Ignore empty Font resources as theme override.bruvzg
Add range hint to font_size properties. Remove excessive `base_size` Font property.
2021-10-01Implement TextServer GDExtension interface, remove TextServer GDNative ↵bruvzg
interface.
2021-08-27Makes FontData importable resource.bruvzg
Adds multi-channel SDF font texture generation and rendering support. Adds per-font oversampling support. Adds FontData import plugins (for dynamic fonts, BMFonts and monospaced image fonts), font texture cache pre-generation and loading. Adds BMFont binary format and outline support.
2021-08-22Replace BIND_VMETHOD by new GDVIRTUAL syntaxreduz
* New syntax is type safe. * New syntax allows for type safe virtuals in native extensions. * New syntax permits extremely fast calling. Note: Everything was replaced where possible except for `_gui_input` `_input` and `_unhandled_input`. These will require API rework on a separate PR as they work different than the rest of the functions. Added a new method flag METHOD_FLAG_OBJECT_CORE, used internally. Allows to not dump the core virtuals like `_notification` to the json API, since each language will implement those as it is best fits.
2021-08-13Fix some unnecessary includesAaron Franke
2021-07-20Editor StringName and Viewport optimizationsJoan Fons
* Added explicit return type to the SNAME macro. * Add some extra SNAME usages. * Change some ClassDB methods to use const StringName & arguments. * Cache the Window parent in Control because it's used in is_layout_rtl(), which is called often. * Only enable internal processing for viewports that need it. * Change CanvasItem::group to be a StringName because it's only used as that.
2021-06-17Implement animation slice drawing in CanvasItemreduz
* Added a function to ignore subsequent commands if they don't fall within the slice. * This will be used by the new TileMap to properly provide animated tiles.
2021-03-28Rename Texture.get_data() to get_image()Marcel Admiraal
2021-03-19Use real_t in non-physics 2D nodesAaron Franke
2021-02-09Initialize class variables with default values in scene/ [2/2]Rafał Mikrut
2021-01-06Added ability to visualize native shadersreduz
2021-01-01Update copyright statements to 2021Rémi Verschelde
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 🎆
2020-12-11Move initialization of some classes to headersTomasz Chabora
2020-11-28Merge pull request #43828 from Chaosus/restore_line_antialiasingYuri Roubinsky
Restored antialiased lines by emulation using triangle strips
2020-11-27Restored antialiased lines by emulation using triangle stripsYuri Roubinsky
2020-11-26[Complex Text Layouts] Refactor Font class, default themes and controls to ↵bruvzg
use Text Server interface. Implement interface mirroring. Add TextLine and TextParagraph classes. Handle UTF-16 input on macOS and Windows.
2020-10-28Implement CanvasGroup and CanvasItem clippingreduz
-Allows merging several 2D objects into a single draw operation -Use current node to clip children nodes -Further fixes to Vulkan barriers -Changed font texture generation to white, fixes dark eges when blurred -Other small misc fixes to backbuffer code.
2020-10-24Refactored 2D shader and lighting systemreduz
-Removed normal/specular properties from nodes -Create CanvasTexture, which can contain normal/specular channels -Refactored, optimized and simplified 2D shaders -Use atlas for light textures. -Use a shadow atlas for shadow textures. -Use both items aboves to make light rendering stateless (faster). -Reorganized uniform sets for more efficiency.
2020-10-02Updated getters and setters names for toplevelDuroxxigar
2020-10-01Renamed toplevel to be top_levelDuroxxigar
2020-09-12TileMap: Set texture_filter and texture_repeat to generated CanvasItems and ↵Mateo Dev .59
update when it changes
2020-07-10Add override keywords.Marcel Admiraal
2020-07-01Provide `draw_set_transform` defaults for rotation and scaleAndrii Doroshenko (Xrayez)
2020-05-14Style: Enforce braces around if blocks and loopsRémi Verschelde
Using clang-tidy's `readability-braces-around-statements`. https://clang.llvm.org/extra/clang-tidy/checks/readability-braces-around-statements.html
2020-05-14Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocksRémi Verschelde
Which means that reduz' beloved style which we all became used to will now be changed automatically to remove the first empty line. This makes us lean closer to 1TBS (the one true brace style) instead of hybridating it with some Allman-inspired spacing. There's still the case of braces around single-statement blocks that needs to be addressed (but clang-format can't help with that, but clang-tidy may if we agree about it). Part of #33027.