1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 14:38:11 +00:00
serenity/Userland/Libraries/LibGfx/CMakeLists.txt
MacDue c8c065b6b0 LibWeb+LibGfx: Migrate (most of) the CSS gradient painting to LibGfx
This moves the CSS gradient painting to the painter creating:

 - Painter::fill_rect_with_linear_gradient()
 - Painter::fill_rect_with_conic_gradient()
 - Painter::fill_rect_with_radial_gradient()

This has a few benefits:
 - The gradients can now easily respect the painter scale
 - The Painter::fill_pixels() escape hatch can be removed
 - We can remove the old fixed color stop gradient code
    - The old functions are  now just a shim
 - Anywhere can now easily use this gradient painting code!

This only leaves the color stop resolution in LibWeb (which is fine).
Just means in LibGfx you have to actually specify color stop positions.

(Also while here add a small optimization to avoid generating
excessively long gradient lines)
2023-01-10 10:25:58 +01:00

57 lines
1.2 KiB
CMake

set(SOURCES
AffineTransform.cpp
AntiAliasingPainter.cpp
BMPLoader.cpp
BMPWriter.cpp
Bitmap.cpp
BitmapMixer.cpp
ClassicStylePainter.cpp
ClassicWindowTheme.cpp
Color.cpp
CursorParams.cpp
DDSLoader.cpp
Filters/ColorBlindnessFilter.cpp
Filters/FastBoxBlurFilter.cpp
Filters/LumaFilter.cpp
Filters/StackBlurFilter.cpp
Font/BitmapFont.cpp
Font/Emoji.cpp
Font/Font.cpp
Font/FontDatabase.cpp
Font/OpenType/Cmap.cpp
Font/OpenType/Font.cpp
Font/OpenType/Glyf.cpp
Font/PathRasterizer.cpp
Font/ScaledFont.cpp
Font/Typeface.cpp
Font/WOFF/Font.cpp
GradientPainting.cpp
GIFLoader.cpp
ICCProfile.cpp
ICOLoader.cpp
ImageDecoder.cpp
JPGLoader.cpp
PBMLoader.cpp
PGMLoader.cpp
PNGLoader.cpp
PNGWriter.cpp
PPMLoader.cpp
Painter.cpp
Palette.cpp
Path.cpp
Point.cpp
QOILoader.cpp
QOIWriter.cpp
Rect.cpp
ShareableBitmap.cpp
Size.cpp
StylePainter.cpp
SystemTheme.cpp
TextDirection.cpp
TextLayout.cpp
Triangle.cpp
WindowTheme.cpp
)
serenity_lib(LibGfx gfx)
target_link_libraries(LibGfx PRIVATE LibCompress LibCore LibCrypto LibTextCodec LibIPC)