serenity/Userland/Libraries/LibGfx
Tobias Christiansen d1844e424d LibGfx: Add FastBoxBlurFilter
This patch adds a FastBoxBlurFilter to the system. It can be created by
specifying a Bitmap it will work on.
There are two uses implemented:
- apply_single_pass() applys an implementation of a linear-time
box-blur algorithm with the specified radius using a horizontal and a
vertical pass and utilizinga sliding window.
- apply_three_passes() gets a better Gaussian approximation by applying
  the filter three times. For this to work the radius of each pass is
  calculated to fit Gauss the best.
2021-07-26 17:54:19 +01:00
..
Filters LibGfx: Add FastBoxBlurFilter 2021-07-26 17:54:19 +01:00
AffineTransform.cpp Everywhere: Don't promote float to double where not needed 2021-07-08 10:11:00 +02:00
AffineTransform.h
Bitmap.cpp Kernel: Make purgeable memory a VMObject level concept (again) 2021-07-25 17:28:05 +02:00
Bitmap.h LibGfx: Make Gfx::Bitmap::set_nonvolatile() report allocation failure 2021-07-25 14:39:25 +02:00
BitmapFont.cpp LibGfx: Use calloc() instead of malloc()+memset() Gfx::BitmapFont 2021-07-22 09:17:01 +02:00
BitmapFont.h LibTTF+LibGfx: Make Gfx::Font::bold_variant() work for TTF fonts 2021-07-20 02:48:29 +02:00
BMPLoader.cpp LibGfx: Make Gfx::Bitmap::set_nonvolatile() report allocation failure 2021-07-25 14:39:25 +02:00
BMPLoader.h LibGfx: Make Gfx::Bitmap::set_nonvolatile() report allocation failure 2021-07-25 14:39:25 +02:00
BMPWriter.cpp LibGfx/BMPWriter: Add support for V3 & V4 DIB headers 2021-07-05 00:43:00 +02:00
BMPWriter.h LibGfx/BMPWriter: Add support for V3 & V4 DIB headers 2021-07-05 00:43:00 +02:00
CharacterBitmap.cpp
CharacterBitmap.h
ClassicStylePainter.cpp LibGfx: Use "try_" prefix for static factory functions 2021-07-21 18:02:15 +02:00
ClassicStylePainter.h
ClassicWindowTheme.cpp
ClassicWindowTheme.h LibGfx: Fix classic theme frame transparency check 2021-07-05 12:29:14 +02:00
CMakeLists.txt Userland: Move text wrapping/elision into the new TextLayout :^) 2021-07-26 21:14:39 +04:30
Color.cpp
Color.h LibGfx: Implement Color::from_hsl/hsla() 2021-07-22 23:09:01 +02:00
DDSLoader.cpp LibGfx: Make Gfx::Bitmap::set_nonvolatile() report allocation failure 2021-07-25 14:39:25 +02:00
DDSLoader.h LibGfx: Make Gfx::Bitmap::set_nonvolatile() report allocation failure 2021-07-25 14:39:25 +02:00
DisjointRectSet.cpp
DisjointRectSet.h
Emoji.cpp LibGfx: Use "try_" prefix for static factory functions 2021-07-21 18:02:15 +02:00
Emoji.h
Font.h LibTTF+LibGfx: Make Gfx::Font::bold_variant() work for TTF fonts 2021-07-20 02:48:29 +02:00
FontDatabase.cpp LibGfx: Try to get TTF font when query is not in name->font map 2021-07-11 14:12:47 +02:00
FontDatabase.h
Forward.h
Gamma.h Everywhere: Use AK/Math.h if applicable 2021-07-19 16:34:21 +04:30
GIFLoader.cpp LibGfx: Make Gfx::Bitmap::set_nonvolatile() report allocation failure 2021-07-25 14:39:25 +02:00
GIFLoader.h LibGfx: Make Gfx::Bitmap::set_nonvolatile() report allocation failure 2021-07-25 14:39:25 +02:00
ICOLoader.cpp LibGfx: Make Gfx::Bitmap::set_nonvolatile() report allocation failure 2021-07-25 14:39:25 +02:00
ICOLoader.h LibGfx: Make Gfx::Bitmap::set_nonvolatile() report allocation failure 2021-07-25 14:39:25 +02:00
ImageDecoder.cpp
ImageDecoder.h LibGfx: Make Gfx::Bitmap::set_nonvolatile() report allocation failure 2021-07-25 14:39:25 +02:00
JPGLoader.cpp LibGfx: Make Gfx::Bitmap::set_nonvolatile() report allocation failure 2021-07-25 14:39:25 +02:00
JPGLoader.h LibGfx: Make Gfx::Bitmap::set_nonvolatile() report allocation failure 2021-07-25 14:39:25 +02:00
Line.h Everywhere: Use AK/Math.h if applicable 2021-07-19 16:34:21 +04:30
Matrix.h
Matrix4x4.h Everywhere: Use AK/Math.h if applicable 2021-07-19 16:34:21 +04:30
Orientation.h
Painter.cpp Userland: Move text wrapping/elision into the new TextLayout :^) 2021-07-26 21:14:39 +04:30
Painter.h Userland: Move text wrapping/elision into the new TextLayout :^) 2021-07-26 21:14:39 +04:30
Palette.cpp
Palette.h
Path.cpp Everywhere: Use AK/Math.h if applicable 2021-07-19 16:34:21 +04:30
Path.h
PBMLoader.cpp LibGfx: Make Gfx::Bitmap::set_nonvolatile() report allocation failure 2021-07-25 14:39:25 +02:00
PBMLoader.h LibGfx: Make Gfx::Bitmap::set_nonvolatile() report allocation failure 2021-07-25 14:39:25 +02:00
PGMLoader.cpp LibGfx: Make Gfx::Bitmap::set_nonvolatile() report allocation failure 2021-07-25 14:39:25 +02:00
PGMLoader.h LibGfx: Make Gfx::Bitmap::set_nonvolatile() report allocation failure 2021-07-25 14:39:25 +02:00
PNGLoader.cpp LibGfx: Make Gfx::Bitmap::set_nonvolatile() report allocation failure 2021-07-25 14:39:25 +02:00
PNGLoader.h LibGfx: Make Gfx::Bitmap::set_nonvolatile() report allocation failure 2021-07-25 14:39:25 +02:00
PNGWriter.cpp LibGfx: Use clear_with capacity instead of clear in PNGWriter 2021-07-14 13:37:18 +02:00
PNGWriter.h LibGfx: Store the size of the chunk from start in PNGWriter 2021-07-14 13:37:18 +02:00
Point.cpp
Point.h Everywhere: Use AK/Math.h if applicable 2021-07-19 16:34:21 +04:30
PortableImageLoaderCommon.h LibGfx: Remove "purgeable Gfx::Bitmap" as a separate concept 2021-07-25 14:39:21 +02:00
PPMLoader.cpp LibGfx: Make Gfx::Bitmap::set_nonvolatile() report allocation failure 2021-07-25 14:39:25 +02:00
PPMLoader.h LibGfx: Make Gfx::Bitmap::set_nonvolatile() report allocation failure 2021-07-25 14:39:25 +02:00
Rect.cpp
Rect.h LibGfx: Add an algorithm to disperse overlapping rectangles 2021-07-21 00:06:58 +02:00
ShareableBitmap.cpp LibGfx: Use "try_" prefix for static factory functions 2021-07-21 18:02:15 +02:00
ShareableBitmap.h
Size.cpp
Size.h
StandardCursor.h
Streamer.h
StylePainter.cpp
StylePainter.h
SystemTheme.cpp
SystemTheme.h
TextAlignment.h
TextAttributes.h
TextDirection.cpp
TextDirection.h
TextElision.h
TextLayout.cpp Userland: Move text wrapping/elision into the new TextLayout :^) 2021-07-26 21:14:39 +04:30
TextLayout.h Userland: Move text wrapping/elision into the new TextLayout :^) 2021-07-26 21:14:39 +04:30
TextWrapping.h Userland: Move text wrapping/elision into the new TextLayout :^) 2021-07-26 21:14:39 +04:30
Triangle.cpp
Triangle.h
Typeface.cpp
Typeface.h
Vector2.h Everywhere: Use AK/Math.h if applicable 2021-07-19 16:34:21 +04:30
Vector3.h Everywhere: Use AK/Math.h if applicable 2021-07-19 16:34:21 +04:30
Vector4.h Everywhere: Use AK/Math.h if applicable 2021-07-19 16:34:21 +04:30
WindowTheme.cpp
WindowTheme.h