summaryrefslogtreecommitdiff
path: root/editor/editor_fonts.cpp
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-04Use system fonts as fallback and improve system font handling.bruvzg
Add support for font weight and stretch selection when using system fonts. Add function to get system fallback font from a font name, style, text, and language code. Implement system font support for Android. Use system fonts as a last resort fallback.
2022-11-12Disable code font ligatures by default in the editorHugo Locurcio
2022-11-01Load and use system emoji font in the editor.bruvzg
2022-10-18Unify usage of GLOBAL/EDITOR_GETkobewi
2022-10-04Merge pull request #62860 from Calinou/editor-log-bold-italic-mono-fontsRémi Verschelde
Define bold, italics and mono fonts in editor log for `print_rich()`
2022-09-14Do not use horizontal hinting for the editor monospace font.bruvzg
2022-08-23Add font LCD sub-pixel anti-aliasing support.bruvzg
2022-07-21Rename OSX to macOS and iPhoneOS to iOS.bruvzg
2022-07-09Define bold, italics and mono fonts in editor log for `print_rich()`Hugo Locurcio
This is also used by the number indicator for message grouping, as it uses a bold font. Mono font does not actually turn proportional fonts into monospace. Instead, it's a more faint version of the regular font, intended to emulate the look of the "faint" ANSI escape code (and make `[code]` distinguishable from regular text). The custom code font will be used to generate the bold/italic/mono variants if specified in the Editor Settings.
2022-07-07Fix regressions from Font refactorbruvzg
Fixes `p_font.is_null()` errors due to incorrect resource type used. Fixes code editor font not set correctly, and OpenType features applied to the wrong font.
2022-07-06Refactor Font configuration and import UI, and Font resources.bruvzg
2022-04-30Improve the VisualShader/VisualScript editor UIHendrik Brucker
2022-04-11Make FileAccess and DirAccess classes reference counted.bruvzg
2022-03-22[Help] Add simulated slanted font support to the editor help.bruvzg
2022-03-14Generate simulated bold font from the custom font if no custom bold font set.bruvzg
2022-03-13Add simulated bold variant to the editor CJK fonts.bruvzg
2022-03-11Convert uses of `DirAccess *` to `DirAccessRef` to prevent memleaksRémi Verschelde
`DirAccess *` needs to be deleted manually, and this is often forgotten especially when doing early returns with `ERR_FAIL_COND`. `DirAccessRef` is deleted automatically when it goes out of scope. Co-authored-by: bruvzg <7645683+bruvzg@users.noreply.github.com>
2022-02-12Add sub-pixel glyph positioning support.bruvzg
2022-02-12Improve compilation speed (forward declarations/includes cleanup)Hendrik Brucker
2022-02-08Revert "Add missing SNAME macro optimization to all theme methods call"Rémi Verschelde
This reverts commit a988fad9a092053434545c32afae91ccbdfbe792. 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-06Add missing SNAME macro optimization to all theme methods calljmb462
2022-01-23[Editor] Disable contextual alternates (coding ligatures) outside of code ↵bruvzg
editor.
2022-01-20Merge pull request #36198 from Calinou/code-font-jetbrains-monoRémi Verschelde
2022-01-06Merge pull request #56376 from pycbouh/theme-tombe-les-theme-propertiesRémi Verschelde
2022-01-05Use JetBrains Mono as the editor's default code fontHugo Locurcio
This recently released font has been gaining popularity thanks to its readability and aesthetics. It also features font ligatures (enabled by default, but can be disabled in the Editor Settings). Its character set isn't as extensive as Hack's, but it should be sufficient for most uses. More information at <https://www.jetbrains.com/lp/mono/>. This also reorders the third-party font notices to be in alphabetical order.
2022-01-03Update copyright statements to 2022Rémi Verschelde
Happy new year to the wonderful Godot community!
2021-12-31Correctly use fallback Theme values as last resortYuri Sizov
2021-12-09Replace String comparisons with "", String() to is_empty()Nathan Franke
Also: - Adds two stress tests to test_string.h - Changes to .empty() on std::strings
2021-10-25Ignore empty Font resources as theme override.bruvzg
Add range hint to font_size properties. Remove excessive `base_size` Font property.
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-07-19[Editor Fonts] Add Noto Sans Bold font variant for supported languages.bruvzg
2021-07-13Add header theme type variations to labelskobewi
2021-06-19Rename `instance()`->`instantiate()` when it's a verbLightning_A
2021-06-11Core: Move DirAccess and FileAccess to `core/io`Rémi Verschelde
File handling APIs are typically considered part of I/O, and we did have most `FileAccess` implementations in `core/io` already.
2021-06-02Use bold fonts in editorreduz
* Labels are now bold * Categories in trees are bold * Main editor buttons are bold * Fixed section folding arrows in inspector
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-13[Complex Text Layouts] Add variable fonts support.bruvzg
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-07-03Change how default fonts are created, fixes #39235Juan Linietsky
Also fixes file dialog icons.
2020-04-10Improve shortcut formatting in docsYuri Sizov
2020-03-27Fix default editor font.bruvzg
Fix popup_centered_clamped definition typo.
2020-03-08Add rotation widget to 3D viewportjfons
2020-01-01Update copyright statements to 2020Rémi Verschelde
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.
2019-10-21Fix validating editor bold fontvolzhs
2019-10-04Fixed warnings text using custom font and color setting.Hanif Bin Ariffin
Fixes #31917 Added missing font and color override.
2019-08-14Add an "Auto" editor font hinting setting to match OS font renderingHugo Locurcio
The "Auto" setting picks the font hinting setting that best matches the operating system's font rendering settings. This font hinting setting is now the default.
2019-07-28Simplify editor settings related to font hinting and antialiasingHugo Locurcio
A single setting is now used to control the font hinting/antialiasing settings of both main and code fonts. This means there are 2 settings in total (instead of 4). Font settings were also reordered for clarity.
2019-06-15Add support for bold fonts in the editor helpHugo Locurcio
This also makes it possible to use the strikethrough tag (`[s]`) in the editor help.
2019-06-14Fix help source font setting and related cleanupRémi Verschelde
This was a regression from #28107 due to a typo in the `initial_set` call. I used the opportunity to harmonize the font settings by ensuring we only get values in `editor_fonts.cpp` and set them all with proper and consistent hint ranges in `editor_settings.cpp`. Fixes #29774.