Libraries/Graphics/src/include/Graphics/Object.h
Go to the documentation of this file.
199 RectObject(const Pen& pen, const Rect& rect, uint8_t radius = 0) : pen(pen), rect(rect), radius(radius)
229 FilledRectObject(Brush brush, const Rect& rect, uint8_t radius = 0) : brush(brush), rect(rect), radius(radius)
233 FilledRectObject(int x0, int y0, int w, int h, Color color) : FilledRectObject(color, Rect(x0, y0, w, h))
268 LineObject(Pen pen, int16_t x1, int16_t y1, int16_t x2, int16_t y2) : LineObject(pen, Point(x1, y1), Point(x2, y2))
272 LineObject(int x0, int y0, int x1, int y1, Color color) : LineObject(color, Point(x0, y0), Point(x1, y1))
302 PolylineObject(Pen pen, size_t count) : pen(pen), points(std::make_unique<Point[]>(count)), numPoints(count)
312 PolylineObject(const RectObject& object) : PolylineObject(object.pen, object.rect, object.radius)
372 CircleObject(const Pen& pen, Point centre, uint16_t radius) : pen(pen), centre(centre), radius(radius)
376 CircleObject(const Pen& pen, const Rect& rect) : CircleObject(pen, rect.centre(), std::min(rect.w, rect.h) / 2)
380 CircleObject(int16_t x, int16_t y, uint16_t radius, Color color) : CircleObject(color, Point{x, y}, radius)
413 FilledCircleObject(Brush brush, Point centre, uint16_t radius) : brush(brush), centre(centre), radius(radius)
609 virtual size_t readPixels(const Location& loc, PixelFormat format, void* buffer, uint16_t width) const = 0;
682 size_t readPixels(const Location& loc, PixelFormat format, void* buffer, uint16_t width) const override;
709 : RawImageObject(Resource::createSubStream(image.bmOffset, image.bmSize), image.getFormat(), image.getSize())
729 size_t readPixels(const Location& loc, PixelFormat format, void* buffer, uint16_t width) const override;
871 size_t readPixels(const Location& loc, PixelFormat format, void* buffer, uint16_t width) const override;
1017 ColorElement(const Brush& fore, const Brush& back) : Element(Kind::Color), fore(fore), back(back)
1103 SurfaceObject(Surface& surface, const Rect& dest, Point source) : surface(surface), dest(dest), source(source)
#define GRAPHICS_OBJECT_KIND_MAP(XX)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:34
String toString(Graphics::Object::Kind kind)
#define GRAPHICS_TEXT_ELEMENT_MAP(XX)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:936
Definition: Delegate.h:20
ArcObject(Pen pen, const Rect &rect, int16_t startAngle, int16_t endAngle)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:510
int16_t startAngle
Definition: Libraries/Graphics/src/include/Graphics/Object.h:527
Renderer * createRenderer(const Location &location) const override
Create a software renderer for this object.
int16_t endAngle
Definition: Libraries/Graphics/src/include/Graphics/Object.h:528
void write(MetaWriter &meta) const override
Definition: Libraries/Graphics/src/include/Graphics/Object.h:515
Definition: Asset.h:753
A BMP format image.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:660
bool init() override
Initialise the object, e.g. parse header content and obtain dimensions.
void write(MetaWriter &meta) const override
Definition: Libraries/Graphics/src/include/Graphics/Object.h:669
PixelFormat getPixelFormat() const override
Get native pixel format.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:677
BitmapObject(const Resource::ImageResource &image)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:664
size_t readPixels(const Location &loc, PixelFormat format, void *buffer, uint16_t width) const override
Read pixels in requested format.
A circle outline.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:370
Renderer * createRenderer(const Location &location) const override
Create a software renderer for this object.
Point centre
Definition: Libraries/Graphics/src/include/Graphics/Object.h:403
CircleObject(int16_t x, int16_t y, uint16_t radius, Color color)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:380
uint16_t radius
Definition: Libraries/Graphics/src/include/Graphics/Object.h:404
Rect getRect() const
Get bounding retangle for this circle.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:387
CircleObject(const Pen &pen, Point centre, uint16_t radius)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:372
void write(MetaWriter &meta) const override
Definition: Libraries/Graphics/src/include/Graphics/Object.h:393
CircleObject(const Pen &pen, const Rect &rect)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:376
Describes a copy operation within the same surface.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1122
Point dest
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1139
Rect source
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1138
void write(MetaWriter &meta) const override
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1132
CopyObject(const Rect &source, Point dest)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1124
Renderer * createRenderer(const Location &location) const override
Create a software renderer for this object.
A collection of line and curve drawing operations.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1179
AssetList assets
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1205
DrawingObject(IDataSourceStream *content)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1183
std::unique_ptr< IDataSourceStream > stream
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1204
DrawingObject(String &&content)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1191
IDataSourceStream & getStream() const
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1199
Renderer * createRenderer(const Location &location) const override
Create a software renderer for this object.
DrawingObject(const FSTR::ObjectBase &source)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1187
void write(MetaWriter &meta) const override
An ellipse outline.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:454
Rect rect
Definition: Libraries/Graphics/src/include/Graphics/Object.h:474
void write(MetaWriter &meta) const override
Definition: Libraries/Graphics/src/include/Graphics/Object.h:465
EllipseObject(Pen pen, Point centre, uint16_t a, uint16_t b)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:460
EllipseObject(Pen pen, const Rect &rect)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:456
Renderer * createRenderer(const Location &location) const override
Create a software renderer for this object.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:810
PixelFormat getPixelFormat() const override
Get native pixel format.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:824
Surface * createSurface(size_t bufferSize=0) override
Create a surface for use with this render target.
FileImageObject(IFS::FileStream *file, PixelFormat format, Size size)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:812
Size getSize() const override
Get target dimensions.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:819
Image surface using filing system as backing store.
Definition: ImageSurface.h:134
A filled arc.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:535
Brush brush
Definition: Libraries/Graphics/src/include/Graphics/Object.h:552
int16_t endAngle
Definition: Libraries/Graphics/src/include/Graphics/Object.h:555
Renderer * createRenderer(const Location &location) const override
Create a software renderer for this object.
Rect rect
Definition: Libraries/Graphics/src/include/Graphics/Object.h:553
void write(MetaWriter &meta) const override
Definition: Libraries/Graphics/src/include/Graphics/Object.h:542
FilledArcObject(Brush brush, const Rect &rect, int16_t startAngle, int16_t endAngle)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:537
int16_t startAngle
Definition: Libraries/Graphics/src/include/Graphics/Object.h:554
A filled circle.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:411
Rect getRect() const
Get bounding retangle for this circle.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:430
uint16_t radius
Definition: Libraries/Graphics/src/include/Graphics/Object.h:447
Point centre
Definition: Libraries/Graphics/src/include/Graphics/Object.h:446
void write(MetaWriter &meta) const override
Definition: Libraries/Graphics/src/include/Graphics/Object.h:436
FilledCircleObject(Brush brush, const Rect &rect)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:417
FilledCircleObject(int16_t x, int16_t y, uint16_t radius, Color color)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:422
Renderer * createRenderer(const Location &location) const override
Create a software renderer for this object.
FilledCircleObject(Brush brush, Point centre, uint16_t radius)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:413
Brush brush
Definition: Libraries/Graphics/src/include/Graphics/Object.h:445
A filled ellipse.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:481
FilledEllipseObject(const Brush &brush, const Rect &rect)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:483
void write(MetaWriter &meta) const override
Definition: Libraries/Graphics/src/include/Graphics/Object.h:492
FilledEllipseObject(const Brush &brush, Point centre, uint16_t a, uint16_t b)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:487
Brush brush
Definition: Libraries/Graphics/src/include/Graphics/Object.h:500
Renderer * createRenderer(const Location &location) const override
Create a software renderer for this object.
Rect rect
Definition: Libraries/Graphics/src/include/Graphics/Object.h:501
A filled rectangle.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:227
Renderer * createRenderer(const Location &location) const override
Create a software renderer for this object.
FilledRectObject(Brush brush, const Rect &rect, uint8_t radius=0)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:229
uint8_t radius
Definition: Libraries/Graphics/src/include/Graphics/Object.h:251
void write(MetaWriter &meta) const override
Definition: Libraries/Graphics/src/include/Graphics/Object.h:237
Brush brush
Definition: Libraries/Graphics/src/include/Graphics/Object.h:249
FilledRectObject(int x0, int y0, int w, int h, Color color)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:233
Rect rect
Definition: Libraries/Graphics/src/include/Graphics/Object.h:250
const Blend * blender
Definition: Libraries/Graphics/src/include/Graphics/Object.h:248
virtual const TypeFace * getFace(FontStyles style) const =0
A character glyph image.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:850
std::bitset< 64 > Bits
Definition: Libraries/Graphics/src/include/Graphics/Object.h:852
PixelFormat getPixelFormat() const override
Get native pixel format.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:866
virtual void readAlpha(void *buffer, Point origin, size_t stride) const =0
Obtain glyph information as block of 8-bit alpha values.
GlyphObject(const Metrics &metrics, const Options &options)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:856
const Metrics & getMetrics() const
Definition: Libraries/Graphics/src/include/Graphics/Object.h:886
Metrics metrics
Definition: Libraries/Graphics/src/include/Graphics/Object.h:892
virtual Bits getBits(uint16_t row) const =0
Options options
Definition: Libraries/Graphics/src/include/Graphics/Object.h:893
size_t readPixels(const Location &loc, PixelFormat format, void *buffer, uint16_t width) const override
Read pixels in requested format.
Kind kind() const override
Definition: Libraries/Graphics/src/include/Graphics/Object.h:861
Virtual base class for an image.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:562
void write(MetaWriter &meta) const override
Definition: Libraries/Graphics/src/include/Graphics/Object.h:568
virtual bool init()=0
Initialise the object, e.g. parse header content and obtain dimensions.
virtual PixelFormat getPixelFormat() const =0
Get native pixel format.
uint16_t height() const
Definition: Libraries/Graphics/src/include/Graphics/Object.h:585
Renderer * createRenderer(const Location &location) const override
Create a software renderer for this object.
Size getSize() const
Definition: Libraries/Graphics/src/include/Graphics/Object.h:575
ImageObject(Size size)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:564
Size imageSize
Definition: Libraries/Graphics/src/include/Graphics/Object.h:612
virtual size_t readPixels(const Location &loc, PixelFormat format, void *buffer, uint16_t width) const =0
Read pixels in requested format.
uint16_t width() const
Definition: Libraries/Graphics/src/include/Graphics/Object.h:580
LineObject(int x0, int y0, int x1, int y1, Color color)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:272
LineObject()
Definition: Libraries/Graphics/src/include/Graphics/Object.h:260
LineObject(Pen pen, int16_t x1, int16_t y1, int16_t x2, int16_t y2)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:268
void write(MetaWriter &meta) const override
Definition: Libraries/Graphics/src/include/Graphics/Object.h:276
LineObject(Pen pen, Point pt1, Point pt2)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:264
Renderer * createRenderer(const Location &location) const override
Create a software renderer for this object.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:771
Surface * createSurface(const Blend *blend, size_t bufferSize=0)
bool isValid() const
Definition: Libraries/Graphics/src/include/Graphics/Object.h:782
Size getSize() const override
Get target dimensions.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:789
PixelFormat getPixelFormat() const override
Get native pixel format.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:794
Surface * createSurface(size_t bufferSize=0) override
Create a surface for use with this render target.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:799
~MemoryImageObject()
Definition: Libraries/Graphics/src/include/Graphics/Object.h:775
MemoryImageObject(PixelFormat format, Size size)
void writeArray(const String &name, const String &type, const T *values, unsigned count)
Definition: Meta.h:135
void beginArray(const String &name, const String &type)
Definition: Meta.h:118
std::enable_if< std::is_base_of< Meta, T >::value, void >::type write(const String &name, const T &value)
Definition: Meta.h:55
Empty base class to support object enumeration Non-virtual to avoid bloat.
Definition: Meta.h:39
Definition: Libraries/Graphics/src/include/Graphics/Object.h:131
Kind kind() const override
Definition: Libraries/Graphics/src/include/Graphics/Object.h:133
A drawable object inherits from this virtual base class.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:97
virtual void write(MetaWriter &meta) const =0
virtual Renderer * createRenderer(const Location &location) const =0
Create a software renderer for this object.
XX(name)
bool operator==(const Object &other) const
Definition: Libraries/Graphics/src/include/Graphics/Object.h:119
virtual String getTypeStr() const
virtual Kind kind() const =0
Definition: Asset.h:403
A single pixel == 1x1 rectangle.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:175
Renderer * createRenderer(const Location &location) const override
Create a software renderer for this object.
Brush brush
Definition: Libraries/Graphics/src/include/Graphics/Object.h:189
Point point
Definition: Libraries/Graphics/src/include/Graphics/Object.h:190
void write(MetaWriter &meta) const override
Definition: Libraries/Graphics/src/include/Graphics/Object.h:181
PointObject(const Brush &brush, const Point &point)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:177
A sequence of lines.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:300
uint16_t numPoints
Definition: Libraries/Graphics/src/include/Graphics/Object.h:362
Pen pen
Definition: Libraries/Graphics/src/include/Graphics/Object.h:360
PolylineObject(Pen pen, const Rect &rect, uint8_t radius)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:316
Renderer * createRenderer(const Location &location) const override
Create a software renderer for this object.
PolylineObject(const RectObject &object)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:312
std::unique_ptr< Point[]> points
Definition: Libraries/Graphics/src/include/Graphics/Object.h:361
bool connected
Definition: Libraries/Graphics/src/include/Graphics/Object.h:363
Point operator[](unsigned index) const
Definition: Libraries/Graphics/src/include/Graphics/Object.h:346
void write(MetaWriter &meta) const override
Definition: Libraries/Graphics/src/include/Graphics/Object.h:352
PolylineObject(Pen pen, size_t count)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:302
PolylineObject(Pen pen, ParamTypes... params)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:307
Image stored as raw pixels in a specific format.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:696
PixelFormat getPixelFormat() const override
Get native pixel format.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:724
RawImageObject(const FSTR::String &image, PixelFormat format, Size size)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:703
RawImageObject(IDataSourceStream *image, PixelFormat format, Size size)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:698
void write(MetaWriter &meta) const override
Definition: Libraries/Graphics/src/include/Graphics/Object.h:713
size_t readPixels(const Location &loc, PixelFormat format, void *buffer, uint16_t width) const override
Read pixels in requested format.
PixelFormat pixelFormat
Definition: Libraries/Graphics/src/include/Graphics/Object.h:732
RawImageObject(const Resource::ImageResource &image)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:708
bool init() override
Initialise the object, e.g. parse header content and obtain dimensions.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:719
A rectangular outline.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:197
RectObject(int x0, int y0, int w, int h, Color color)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:203
RectObject(const Pen &pen, const Rect &rect, uint8_t radius=0)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:199
void write(MetaWriter &meta) const override
Definition: Libraries/Graphics/src/include/Graphics/Object.h:207
Renderer * createRenderer(const Location &location) const override
Create a software renderer for this object.
uint8_t radius
Definition: Libraries/Graphics/src/include/Graphics/Object.h:220
Reference to another object.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:151
Renderer * createRenderer(const Location &location) const override
Create a software renderer for this object.
Rect pos
Definition: Libraries/Graphics/src/include/Graphics/Object.h:167
ReferenceObject(const Object &object, const Rect &pos, const Blend *blend=nullptr)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:153
void write(MetaWriter &meta) const override
Definition: Libraries/Graphics/src/include/Graphics/Object.h:158
const Object & object
Definition: Libraries/Graphics/src/include/Graphics/Object.h:166
const Blend * blend
Definition: Libraries/Graphics/src/include/Graphics/Object.h:168
Interface for objects which support writing via surfaces.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:739
virtual ~RenderTarget()
Definition: Libraries/Graphics/src/include/Graphics/Object.h:741
PackedColor getColor(Color color) const
Definition: Libraries/Graphics/src/include/Graphics/Object.h:764
virtual PixelFormat getPixelFormat() const =0
All surfaces support the same pixel format.
virtual Surface * createSurface(size_t bufferSize=0)=0
Create a surface for use with this render target.
Virtual base class to manage rendering of various types of information to a surface.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:66
virtual bool execute(Surface &surface)=0
Called to do some writing to the surface.
Location location
Definition: Libraries/Graphics/src/include/Graphics/Object.h:90
virtual ~Renderer()
Definition: Libraries/Graphics/src/include/Graphics/Object.h:79
Renderer(const Location &location)
Constructor.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:75
Definition: Libraries/Graphics/src/include/Graphics/Types.h:733
constexpr uint8_t scaleY() const
Definition: Libraries/Graphics/src/include/Graphics/Types.h:772
Describes a scrolling operation.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1146
Renderer * createRenderer(const Location &location) const override
Create a software renderer for this object.
Color fill
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1170
bool wrapy
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1169
ScrollObject(const Rect &area, Point shift, bool wrapx, bool wrapy, Color fill)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1148
Rect area
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1166
void write(MetaWriter &meta) const override
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1157
bool wrapx
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1168
Point shift
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1167
Image whose contents are stored in a stream, typically in a file or flash memory.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:619
uint32_t streamPos
Definition: Libraries/Graphics/src/include/Graphics/Object.h:651
StreamImageObject(const FSTR::String &image)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:625
void seek(uint32_t offset) const
Definition: Libraries/Graphics/src/include/Graphics/Object.h:638
void write(MetaWriter &meta) const override
Definition: Libraries/Graphics/src/include/Graphics/Object.h:629
void read(void *buffer, size_t length) const
Definition: Libraries/Graphics/src/include/Graphics/Object.h:645
StreamImageObject(IDataSourceStream *source, Size size)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:621
std::unique_ptr< IDataSourceStream > stream
Definition: Libraries/Graphics/src/include/Graphics/Object.h:650
Describes a target surface and corresponding source location.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1095
Rect dest
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1114
Renderer * createRenderer(const Location &location) const override
Create a software renderer for this object.
Point source
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1115
void write(MetaWriter &meta) const override
Surface & surface
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1113
SurfaceObject(Surface &surface, const Rect &dest, Point source)
Constructor.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1103
Definition: Asset.h:666
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1015
Brush fore
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1027
Brush back
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1028
ColorElement(const Brush &fore, const Brush &back)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1017
void write(MetaWriter &meta) const override
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1021
Definition: Libraries/Graphics/src/include/Graphics/Object.h:932
Kind kind
Definition: Libraries/Graphics/src/include/Graphics/Object.h:969
virtual void write(MetaWriter &meta) const =0
Element(Kind kind)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:948
Kind
Definition: Libraries/Graphics/src/include/Graphics/Object.h:942
String getTypeStr() const
Definition: Libraries/Graphics/src/include/Graphics/Object.h:954
Definition: Libraries/Graphics/src/include/Graphics/Object.h:989
uint16_t height() const
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1003
Scale scale
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1008
const TypeFace & typeface
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1010
FontElement(const TypeFace &typeface, Scale scale, FontStyles style)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:991
FontStyles style
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1009
void write(MetaWriter &meta) const override
Definition: Libraries/Graphics/src/include/Graphics/Object.h:996
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1032
RunElement(Point pos, uint16_t width, uint16_t offset, uint8_t length)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1034
uint16_t offset
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1049
Point pos
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1047
void write(MetaWriter &meta) const override
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1039
uint8_t length
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1050
uint16_t width
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1048
Definition: Libraries/Graphics/src/include/Graphics/Object.h:974
void write(MetaWriter &meta) const override
Definition: Libraries/Graphics/src/include/Graphics/Object.h:980
const TextAsset & text
Definition: Libraries/Graphics/src/include/Graphics/Object.h:985
TextElement(const TextAsset &text)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:976
A block of text consisting of zero or more segments.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:902
Rect bounds
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1085
Renderer * createRenderer(const Location &location) const override
Create a software renderer for this object.
FontElement * addFont(const TypeFace &typeface, Scale scale, FontStyles style)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1070
void write(MetaWriter &meta) const override
Definition: Libraries/Graphics/src/include/Graphics/Object.h:908
RunElement * addRun(Point pos, uint16_t width, uint16_t offset, uint8_t length)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1080
FontElement * addFont(const Font &font, Scale scale, FontStyles style)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1065
T * addElement(T *elem)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1054
ColorElement * addColor(const Brush &fore, const Brush &back)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1075
TextObject(const Rect &bounds)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:904
Element::OwnedList elements
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1086
TextElement * addText(const TextAsset &text)
Definition: Libraries/Graphics/src/include/Graphics/Object.h:1060
Definition: Asset.h:453
virtual uint8_t height() const =0
Get height of typeface, same for all characters.
Definition: LinkedObjectList.h:90
Base class template for linked items with type casting.
Definition: LinkedObject.h:62
Class template for singly-linked list of objects.
Definition: LinkedObjectList.h:175
bool setLength(size_t length)
set the string length accordingly, expanding if necessary
size_t length(void) const
Obtain the String length in characters, excluding NUL terminator.
Definition: WString.h:244
Definition: Array.hpp:108
IDataSourceStream * createSubStream(uint32_t offset, size_t size)
Graphics objects call this method to obtain access to resource data.
Definition: Virtual.h:31
@ Centre
PixelBuffer pack(PixelBuffer src, PixelFormat format)
Convert RGB colour into packed format.
TPoint< int16_t > Point
Definition: Libraries/Graphics/src/include/Graphics/Types.h:280
Origin
Points on a compass.
Definition: Libraries/Graphics/src/include/Graphics/Types.h:71
uint8_t getBytesPerPixel(PixelFormat format)
Get number of bytes required to store a pixel in the given format.
Definition: Colors.h:331
Identifies position within bounding rectangle.
Definition: Libraries/Graphics/src/include/Graphics/Types.h:683
Location and size of rectangular area (x, y, w, h)
Definition: Libraries/Graphics/src/include/Graphics/Types.h:287
Point topLeft() const
Definition: Libraries/Graphics/src/include/Graphics/Types.h:417
Point bottomRight() const
Definition: Libraries/Graphics/src/include/Graphics/Types.h:432
Definition: resource.h:112
Size of rectangular area (width x height)
Definition: Libraries/Graphics/src/include/Graphics/Types.h:105