29#ifndef NOMLIB_GUI_DRAWABLES_HPP
30#define NOMLIB_GUI_DRAWABLES_HPP
36#include "nomlib/config.hpp"
37#include "nomlib/graphics/IDrawable.hpp"
46 typedef self_type* raw_ptr;
47 typedef std::unique_ptr<self_type> unique_ptr;
48 typedef std::shared_ptr<self_type> shared_ptr;
51 typedef std::vector<value_type::shared_ptr> container;
53 typedef container::iterator iterator;
54 typedef container::const_iterator const_iterator;
65 const container& drawables(
void )
const;
73 void assign(
const container& objects );
81 Drawables::iterator erase( uint pos );
85 bool empty(
void )
const;
86 uint size(
void )
const;
92 Drawables::const_iterator
begin(
void )
const;
97 Drawables::const_iterator
end(
void )
const;
107 Drawables::iterator
end(
void );
110 container drawables_;
Drawables(void)
Default constructor.
Drawables::const_iterator end(void) const
Iterator access to the end of the render list.
bool updated_
Internal object state; we re-create drawable objects every time the internal state changes in order t...
bool updated(void) const
Getter for internal updated status.
Drawables::const_iterator begin(void) const
Iterator access to the beginning of the render list.
Drawables(const Drawables::container &object)
Constructor to ...
void set_updated(bool state)
Set the internal updated status.
Drawables::iterator begin(void)
Iterator access to the beginning of the render list.
~Drawables(void)
Destructor.
Drawables::iterator end(void)
Iterator access to the end of the render list.
Base interface class for grouping objects under a united front.
std::shared_ptr< self_type > shared_ptr
A type definition for a C++11 std::shared_ptr to an IDrawable object.
self_type * raw_ptr
A type definition for a C pointer – raw pointer – to an IDrawable object.