Graphics::DrawingObject Class Reference

A collection of line and curve drawing operations. More...

#include <Object.h>

Inheritance diagram for Graphics::DrawingObject:
Collaboration diagram for Graphics::DrawingObject:

Public Types

using Callback = Delegate< void(DrawingObject *drawing)>
 
- Public Types inherited from Graphics::Object
enum class  Kind { XX }
 
using List = LinkedObjectListTemplate< Object >
 
using OwnedList = OwnedLinkedObjectListTemplate< Object >
 
- Public Types inherited from LinkedObjectTemplate< Object >
using Iterator = IteratorTemplate< Object, Object *, Object & >
 
using ConstIterator = IteratorTemplate< const Object, const Object *, const Object & >
 

Public Member Functions

 DrawingObject (IDataSourceStream *content)
 
 DrawingObject (const FSTR::ObjectBase &source)
 
 DrawingObject (String &&content)
 
void write (MetaWriter &meta) const override
 
RenderercreateRenderer (const Location &location) const override
 Create a software renderer for this object. More...
 
IDataSourceStreamgetStream () const
 
- Public Member Functions inherited from Graphics::ObjectTemplate< Object::Kind::Drawing >
Kind kind () const override
 
- Public Member Functions inherited from Graphics::Object
bool operator== (const Object &other) const
 
virtual String getTypeStr () const
 
- Public Member Functions inherited from LinkedObjectTemplate< Object >
Object * getNext () const
 
bool insertAfter (Object *object)
 
Iterator begin () const
 
Iterator end () const
 
Iterator cbegin () const
 
Iterator cend () const
 
- Public Member Functions inherited from LinkedObject
virtual ~LinkedObject ()
 
virtual LinkedObjectnext () const
 
bool insertAfter (LinkedObject *object)
 
bool operator== (const LinkedObject &other) const
 
bool operator!= (const LinkedObject &other) const
 

Public Attributes

std::unique_ptr< IDataSourceStreamstream
 
AssetList assets
 

Detailed Description

A collection of line and curve drawing operations.

Stored in a compact format which can be streamed.

Member Typedef Documentation

◆ Callback

Constructor & Destructor Documentation

◆ DrawingObject() [1/3]

Graphics::DrawingObject::DrawingObject ( IDataSourceStream content)
inline

◆ DrawingObject() [2/3]

Graphics::DrawingObject::DrawingObject ( const FSTR::ObjectBase source)
inline

◆ DrawingObject() [3/3]

Graphics::DrawingObject::DrawingObject ( String &&  content)
inline

Member Function Documentation

◆ createRenderer()

Renderer* Graphics::DrawingObject::createRenderer ( const Location location) const
overridevirtual

Create a software renderer for this object.

Parameters
location
Return values
rendererReturned renderer object

Return nullptr if object cannot/should not be rendered

Implements Graphics::Object.

◆ getStream()

IDataSourceStream& Graphics::DrawingObject::getStream ( ) const
inline

◆ write()

void Graphics::DrawingObject::write ( MetaWriter meta) const
overridevirtual

Implements Graphics::Object.

Member Data Documentation

◆ assets

AssetList Graphics::DrawingObject::assets

◆ stream

std::unique_ptr<IDataSourceStream> Graphics::DrawingObject::stream

The documentation for this class was generated from the following file: