reuk
15f05443d0
Graphics: Add missing JUCE_API annotation to ScopedSaveState
2025-06-03 16:12:00 +01:00
attila
c61158ed3a
Add GlyphArrangementOptions for addFittedText and drawFittedText
...
The new options can be used to affect line spacing.
2025-05-09 13:39:11 +02:00
Oli
250abe9cf4
LowLevelGraphicsContext: Add preferred image type for temporary images
...
Co-authored-by: Matt Gonzalez <matt@echoaudio.com>
2025-04-24 13:58:23 +01:00
reuk
19edd53842
EdgeTable: Fix issue where edges of paths could be anti-aliased incorrectly at edges of clip regions
2025-02-03 19:16:46 +00:00
reuk
56ea531298
CoreGraphics: Fix bug where subsection images were rendered incorrectly
2025-02-03 13:56:31 +00:00
Anthony Nicholls
880b76983e
Graphics: Use cached glyph shaping when only the position of text changes
2024-12-13 14:41:26 +00:00
reuk
80ac9a78a0
Singleton: Add new macros to simplify singleton creation
...
The INLINE macros allow singletons to be declared and defined in one
line, without requiring a separate JUCE_IMPLEMENT_SINGLETON statement.
2024-10-16 10:36:52 +01:00
reuk
8754d87900
Windows: Fix build warnings when JUCE_DISABLE_ASSERTIONS is set
2024-09-13 13:57:10 +01:00
reuk
cc52e9322d
LowLevelGraphicsPostScriptRenderer: Remove support
2024-06-27 18:10:22 +01:00
reuk
19061e6d17
Direct2D: Add initial support
2024-04-18 14:16:02 +01:00
reuk
1560f87111
LowLevelGraphicsContext: Replace glyph drawing functions with single drawGlyphs()
2024-04-18 14:16:01 +01:00
reuk
4533077b75
LookAndFeel: Allow specifying a default typeface metrics kind to use
2024-04-18 14:16:00 +01:00
reuk
c2fce879c5
Font: Allow switching between legacy non-portable metrics, and new portable metrics
2024-04-18 14:16:00 +01:00
reuk
4f2c287f9b
Font: Deprecate old Font constructors
2024-04-18 14:16:00 +01:00
reuk
c40da067cd
RenderingHelpers: Implement GlyphCache in terms of LruCache
2024-04-18 14:15:59 +01:00
reuk
080ac6e7e7
LruCache: Factor out of GlyphArrangementCache
2024-04-17 14:41:00 +01:00
Tom Poole
94d98a2b10
Update licensing information
2024-04-16 11:39:35 +01:00
Tom Poole
7d45d498b9
Removed some superfluous consts from definitions
2023-09-20 16:31:10 +01:00
Tom Poole
9b041f3d74
Add a base clang-tidy configuration
2023-09-18 11:24:19 +01:00
reuk
28414a6af8
Global: Avoid floating-point equality checks where possible
2023-04-04 19:55:11 +01:00
attila
c0f31aa12a
CoreGraphics: fillAll() fills a larger area to avoid alpha blended edges
...
Alternatively we could disable antialiasing before the fill operation
but this could cause neighbouring Components to overlap on the screen
even if their coordinates don't.
2022-09-12 15:39:05 +02:00
Tom Poole
2ec861d99e
Update licensing banners to JUCE 7
2022-05-16 17:55:48 +01:00
reuk
3bf635e004
Warnings: Always supply all field initialisers
...
This also fixes an issue where the requested font style could be
incorrectly overwritten.
2022-04-22 14:18:48 +01:00
Tom Poole
68514d626c
Graphics: Added a global GlyphArrangement cache
2022-04-04 12:36:33 +01:00
Tom Poole
dea3fe60e4
Update copyright banners
2022-04-04 12:36:32 +01:00
reuk
ebac835673
Fix some deprecation warnings
2022-03-22 17:27:54 +00:00
reuk
1d1d743b9f
Build: Add -Wdeprecated to recommended flags and fix new warnings
2022-02-23 10:56:10 +00:00
reuk
72abf72c79
GraphicsContext: Fix unused variable warning
2021-12-01 15:44:07 +00:00
reuk
3768349a05
Font: Make Font and TypefaceCache threadsafe
...
Previously, it wasn't safe to access Font instances from multiple
threads because there was a chance that they might reference the same
shared internal state. In this case, calling getTypeface() or getAscent from
two threads simultaneously would cause a race on the typeface and ascent
data members, even though the Font instances appeared to be disjoint.
With this change in place, it is now safe to use Font instances from
multiple threads simultaneously.
It is still an error to modify the same Font instance from multiple
threads without synchronization!
// Fine:
Font a;
Font b = a;
auto futureA = std::async (std::launch::async, [&a] { /* do something with a */ });
auto futureB = std::async (std::launch::async, [&b] { /* do something with b */ });
// Bad idea:
Font f;
auto futureA = std::async (std::launch::async, [&f] { /* do something with f */ });
auto futureB = std::async (std::launch::async, [&f] { /* do something with f */ });
2021-09-23 10:28:47 +01:00
ed
d6baa1570d
Docs: Removed reference to Graphics::getClipRegion() method which no longer exists
2021-04-29 17:33:24 +01:00
reuk
394c4fd475
Clang: Fix warnings when building with clang 10
2020-07-01 10:00:43 +01:00
ed
009d685179
Updated all license headers
2020-06-29 08:30:22 +01:00
Tom Poole
6cb75d9d2c
Replaced all references to ROLI with Raw Material Software and regenerated all bytecode
2020-04-23 17:30:40 +01:00
Tom Poole
894e7d2bd2
Updated all license headers
2020-04-23 17:30:39 +01:00
reuk
327f817b9b
Copyrights: Update commercial/gpl headers to be gpl-only
2020-04-09 15:22:56 +01:00
ed
a54da0b832
Fixed some more typos
2020-01-07 08:53:23 +00:00
ed
e262bfa531
Fixed a few documentation typos
2019-09-12 10:19:33 +01:00
jules
f58eacc135
Added more unique_ptr use, for functions that create LowLevelGraphicsContext or ImageType objects.
2019-05-15 12:08:38 +01:00
ed
06da4f2daf
Added a font 'leading' parameter for multiline text layouts
2019-03-11 16:43:21 +00:00
ed
a234721110
Added various clang-tidy modernize-* fixes
2019-01-31 15:15:31 +00:00
jules
cadac817c6
Enabled some more warning flags in Xcode, and fixed the problems they caused
2019-01-11 09:52:10 +00:00
ed
eaf0f990d4
Replaced all uses of static_cast<Type&&> with std::move
2018-11-28 17:29:20 +00:00
James Hurst
af35baccf5
Allowed different text justifications in drawMultiLineText
2018-08-22 11:24:29 +01:00
jules
7ab4d1708b
Some misc cleanups, mainly around WeakReference usage and rectangles
2018-07-09 16:00:45 +01:00
Tom Poole
ab863a6dc2
Replaced all usage of ScopedPointer with std::unique_ptr
2018-04-19 20:27:47 +01:00
ed
cdbc28c18b
Add documentation tags
2018-03-15 12:10:32 +00:00
jules
f22317695b
Added a couple of casts to keep Visual Studio happy
2017-12-06 17:48:41 +00:00
jules
d9585241ad
Changed the parameters to Graphics::fillCheckerBoard() to be floats rather than ints, and improved its performance
2017-12-06 17:33:26 +00:00
jules
c3a218ab49
Added some methods ColourGradient::vertical and ColourGradient::horizontal, and also some missing move operators for that class
2017-11-08 15:00:47 +00:00
jules
970eda679e
Added 'final' keyword to a lot of classes from which you really shouldn't be inheriting!
2017-10-09 12:38:06 +01:00