Rubidium and rubidium42
8f9ceeec75
Codechange: add parameter and return documentation
2026-02-18 22:56:54 +01:00
Rubidium and rubidium42
c6c06e13eb
Codefix: wrong parameter names and partially missing parameters
2026-02-02 16:31:46 +01:00
Rubidium and rubidium42
6b3eaba308
Codechange: remove unneeded MacOSVersionIsAtLeast calls
2026-01-24 06:50:36 +01:00
Peter Nelson and GitHub
0a88c084ad
Codechange: Don't read font os_handle on MacOS. ( #14936 )
...
os_handle is never set, so there's no need to read it.
2025-12-21 15:08:55 +00:00
Peter Nelson and Peter Nelson
b03347f00c
Revert: "Change: Support side-by-side fallback FontCaches instead of hierarchical. ( #13303 )"
...
This reverts commit 1829f7926d .
2025-12-13 09:09:21 +00:00
Cyprian Klimaszewski and GitHub
99f04f27de
Doc: Update information for receiving a copy of GPL. ( #14869 )
2025-12-07 11:25:08 +00:00
Peter Nelson and GitHub
1829f7926d
Change: Support side-by-side fallback FontCaches instead of hierarchical. ( #13303 )
...
The text layouter system can now support using different fonts for different glyphs, including mixing scalable and sprite glyphs.
2025-12-06 10:47:12 +00:00
Rubidium and rubidium42
aa7eb089c6
Codechange: make all Providers fully const (Font/Screenshot/Sound)
2025-09-29 23:39:13 +03:00
Peter Nelson and Peter Nelson
e1a50abcbb
Codechange: Move fallback font detection to FontCacheFactory.
...
Provides a standard interface instead of relying on defines.
2025-08-07 19:38:00 +01:00
Peter Nelson and Peter Nelson
140f2b291a
Codechange: Use ProviderManager interface to register FontCache factories.
...
This removes use of #ifdefs to select the appropriate loader, and also replaces FontCache self-registration.
2025-08-07 19:38:00 +01:00
frosch and frosch
8571af9833
Codechange: Turn ZoomLevel into enum class.
2025-05-03 23:21:09 +02:00
Rubidium and rubidium42
26a4da9b01
Codechange: replace last strncmp uses
2025-05-03 21:51:01 +02:00
frosch and frosch
bb767608de
Codechange: Pass SpriteType as direct parameter to SpriteEncoder::Encoder.
2025-05-03 18:43:20 +02:00
Patric Stout and GitHub
86841ba1f0
Codechange: no longer add "src" to the include-path ( #13511 )
2025-02-09 19:43:15 +00:00
Peter Nelson and GitHub
ba20ea5d18
Codechange: Use EnumBitSet for SpriteComponent. ( #13509 )
2025-02-09 18:37:01 +00:00
Loïc Guilloux and GitHub
ef826a048a
Codechange: [WIN32] Use language isocode for fallback font detection ( #13310 )
2025-01-21 15:57:09 +01:00
Peter Nelson and GitHub
209b0320d5
Fix #12735 : Default fonts should use default font size as-is. ( #12814 )
...
Minimum readable font size should only apply to fallback and configured fonts.
2024-06-26 12:45:39 +01:00
Peter Nelson and Peter Nelson
48539992e8
Codechange: Use std::unordered_map for storing TrueTypeFontCache's GlyphEntry.
2024-05-30 20:16:28 +01:00
Peter Nelson and Peter Nelson
7b717fcccb
Codechange: Replace AllocatorProc with SpriteAllocator class.
...
This allows for state to be passed to or maintained by the allocator.
2024-05-30 20:16:28 +01:00
Peter Nelson and GitHub
3c42f701d7
Fix: Allow changing size of default OpenTTD font. ( #12641 )
...
* Fix: Allow changing size of default OpenTTD font.
Size configuration for default font was ignored as a different code path to load the font was followed.
Resolved by removing this additional path and conditionally selecting the default font.
2024-05-26 15:59:25 +01:00
Peter Nelson and GitHub
f87c6990b0
Fix: Memory leak in CoreTextFontCache. ( #12662 )
...
Temporary buffer for rendering glyphs was not freed after use. Instead let CGBitmapContextCreate() handle the buffer.
> data may be a pointer to pixels. If you pass NULL, the context will create its own buffer and free that buffer itself later. If you pass your own buffer, the context will not free it; it remains your buffer that you must free after you release the context, hopefully for the last time.
2024-05-23 21:07:11 +01:00
Peter Nelson and GitHub
980dcaac6e
Cleanup: Remove GetFontTable from FontCache. ( #12677 )
...
This interface is no longer used, so does not need to be implemented.
Removes manual memory management with malloc/free.
2024-05-14 21:13:26 +01:00
Peter Nelson and GitHub
d78f39a9df
Cleanup: Remove GetUnitsPerEM and units_per_em. ( #12656 )
...
GetUnitsPerEM is never called.
2024-05-11 14:50:34 +01:00
Peter Nelson and Peter Nelson
3c94e81665
Codechange: Use ZOOM_LVL_MIN to refer to first zoom level.
...
Many uses of ZOOM_LVL_NORMAL actually just want the first zoom level slot, so use ZOOM_LVL_MIN to make this clearer.
2024-04-04 22:27:03 +01:00
Patric Stout and GitHub
a3cfd23cf9
Codechange: rename byte to uint8_t ( #12308 )
2024-03-16 23:59:32 +01:00
Peter Nelson and GitHub
466e6bb524
Fix #12037 : Blurry OpenTTD font on Mac OS. ( #12047 )
2024-02-09 21:36:13 +01:00
Michael Lutz
36cf6b1d13
Feature: Scalable OpenTTD TrueType font made by Zephyris.
...
This uses the normal variant for the small font, not the all-caps version.
2024-01-14 22:50:56 +01:00
Michael Lutz
6e766a2e81
Change: Allow TrueType fonts to provide our private-use glyphs.
2024-01-14 22:50:56 +01:00
Peter Nelson and GitHub
b85ecf9ac2
Codechange: Replace pointer to Sprite array with reference to SpriteCollection. ( #11580 )
...
Add `SpriteLoader::SpriteCollection` type which is an array of `SpriteLoad::Sprite`.
This removes the ambiguity of what `SpriteLoader::Sprite *` is pointing to,
and cleans up mismatches using both dereference -> and array access [] for the
same object.
2023-12-20 20:38:21 +00:00
Peter Nelson and GitHub
1071acb483
Codechange: Redundant use of char * and c_str(). ( #11454 )
2023-11-10 00:17:36 +00:00
frosch and frosch
b6c8f301be
Codechange: Silence warnings about intentionally unused parameters.
2023-09-19 22:49:59 +02:00
Rubidium and rubidium42
eaae0bb5e7
Codechange: automatic adding of _t to (u)int types, and WChar to char32_t
...
for i in `find src -type f|grep -v 3rdparty/fmt|grep -v 3rdparty/catch2|grep -v 3rdparty/opengl|grep -v stdafx.h`; do sed 's/uint16& /uint16 \&/g;s/int8\([ >*),;[]\)/int8_t\1/g;s/int16\([ >*),;[]\)/int16_t\1/g;s/int32\([ >*),;[]\)/int32_t\1/g;s/int64\([ >*),;[]\)/int64_t\1/g;s/ uint32(/ uint32_t(/g;s/_uint8_t/_uint8/;s/Uint8_t/Uint8/;s/ft_int64_t/ft_int64/g;s/uint64$/uint64_t/;s/WChar/char32_t/g;s/char32_t char32_t/char32_t WChar/' -i $i; done
2023-07-19 19:30:14 +02:00
PeterN and GitHub
eda3defcb5
Codechange: Pass language for font detection as std::string. ( #10964 )
2023-06-06 20:55:56 +00:00
PeterN and GitHub
7a0b6b7ddf
Codechange: Remove Freetype bits on Win32/OSX. ( #10960 )
...
These platforms have their own specific font rendering.
2023-06-06 19:43:27 +01:00
Peter Nelson and PeterN
c38df2d589
Codechange: Use std::map instead of custom SmallMap.
2023-05-18 12:18:30 +01:00
Rubidium and rubidium42
68ff3fd062
Change: include fmt.h C++ headers in stdafx.h
...
This to prevent compilation issues between runs with and without precompiled
headers. Also remove the headers from the rest of the code base as they are
not needed there anymore, although they do relatively little harm.
2023-05-08 16:49:23 +02:00
Rubidium and rubidium42
f74e26ca7e
Codechange: replace error/usererror printf variant with fmt variant and rename
2023-04-25 17:55:09 +02:00
Rubidium and rubidium42
f5f6306af3
Codechange: use string/fmt instead of printf for ShowInfo(F)
2023-04-24 17:51:54 +02:00
PeterN and GitHub
e97bf271dc
Codechange: Make SpriteType, CargoSortType, SourceType and ScriptType enum classes. ( #10663 )
...
This avoids a (soft) namespace conflict between the four ST_* enums.
2023-04-16 20:00:55 +01:00
glx22 and Loïc Guilloux
af3df959c2
Codechange: reduce code duplication
2022-12-23 23:23:03 +01:00
Peter Nelson and Tyler Trahan
8599041ce4
Fix: GetDefaultFontHeight() is static, don't use ->
2022-12-18 11:46:01 -05:00
Peter Nelson and PeterN
9666e46739
Feature: Variable GUI scale.
...
GUI scale is now variable from 100% to 500%, and no longer restricted to
powers-of-2.
2022-11-12 18:28:39 +00:00
Peter Nelson and PeterN
062ea68422
Change: Scale position of font shadow.
2022-11-12 18:28:39 +00:00
Peter Nelson and PeterN
f6ad8e1c9c
Change: Rename some freetype things to fontcache.
...
The font cache supports more than just FreeType as a font provider, but still used freetype in some naming.
This now uses more suitable terms.
2022-09-25 18:34:24 +01:00
rubidium42 and rubidium42
55a11710a6
Codechange: convert printf DEBUG statements to fmt Debug statements
2021-06-13 12:45:45 +02:00
rubidium42 and rubidium42
77330d09fd
Codechange: move font settings to std::string
2021-05-13 23:13:17 +02:00
Michael Lutz
6776229047
Codechange: Make the simple Malloc sprite allocator globally usable.
2021-02-22 22:16:07 +01:00
Michael Lutz
70aa3b4011
Codechange: Give sprite encoders a hint which colour components of a sprite are filled with useful information.
2021-02-22 22:16:07 +01:00
Michael Lutz
b66e977acd
Change: [OSX] When auto-detecting a font, try for sans-serif first.
...
On a display, especially with small fonts or low pixel sizes, sans-serif
fonts are usually easier to read than serif fonts.
2021-02-14 11:48:58 +01:00
Michael Lutz
6755ff63e1
Add: [OSX] Native font rendering without using FreeType.
2021-02-14 11:48:58 +01:00