gigawidgets 0.3.55
A wxWidgets-style UI library for the Arduino Giga Display Shield.
 
Loading...
Searching...
No Matches
png.hpp
Go to the documentation of this file.
1
2#pragma once
3
4// Comment this out to disable PNG support.
5#define IMAGE_SUPPORT_PNG
6
7#include "../image_file.hpp"
8
9#ifdef IMAGE_SUPPORT_PNG
10
11namespace ui {
12
18struct Png : public ImageFile {
26 uint8_t transparencyThreshold = 128;
27
29
30 void renderAt(const Coords &coords, const shader_t &shader = 0) const override;
31 Size getSize() const override;
32
37 bool isInterlaced() const;
38};
39
40} // namespace ui
41
42#endif
shader_animated_t shader_t
A pixel shader that may or may not update based on the current time.
Definition renderable.hpp:48
A struct for storing the pixel coordinates of various UI elements.
Definition coords.hpp:17
The common interface for images read from raw data.
Definition image_file.hpp:23
ImageFile(uint8_t *const bytes, size_t length)
Constructor.
A renderable for PNG encoded image data.
Definition png.hpp:18
uint8_t transparencyThreshold
The minimum alpha value to consider fully opaque.
Definition png.hpp:26
Size getSize() const override
Get the size of the renderable.
bool isInterlaced() const
Check if this PNG image is interlaced.
void renderAt(const Coords &coords, const shader_t &shader=0) const override
Display the renderable directly onto the screen.
A struct that holds the number of pixels that a widget would take up on the screen.
Definition size.hpp:17