diff --git a/sdlpp/sdlpp_scene.cpp b/sdlpp/sdlpp_scene.cpp index 6d9ca8e..6752e0a 100644 --- a/sdlpp/sdlpp_scene.cpp +++ b/sdlpp/sdlpp_scene.cpp @@ -59,6 +59,12 @@ void Scene::moveZ( const std::shared_ptr< RenderObject > &obj, int addition ) { std::iter_swap( render_objects.begin() + original_index, render_objects.begin() + original_index + addition ); } +void Scene::moveZTop( const std::shared_ptr< RenderObject > &obj ) { + setZIndex( obj, render_objects.size() - 1 ); +} +void Scene::moveZBottom( const std::shared_ptr< RenderObject > &obj ) { + setZIndex( obj, 0 ); +} std::shared_ptr< RenderObject > Scene::getObject( int index ) { return render_objects[index]; } diff --git a/sdlpp/sdlpp_scene.hpp b/sdlpp/sdlpp_scene.hpp index 576030a..949f03e 100644 --- a/sdlpp/sdlpp_scene.hpp +++ b/sdlpp/sdlpp_scene.hpp @@ -19,6 +19,8 @@ public: void moveDownZ( const std::shared_ptr< RenderObject > &obj ); void moveUpZ( const std::shared_ptr< RenderObject > &obj ); void moveZ( const std::shared_ptr< RenderObject > &obj, int addition ); + void moveZTop( const std::shared_ptr< RenderObject > &obj ); + void moveZBottom( const std::shared_ptr< RenderObject > &obj ); std::shared_ptr< RenderObject > getObject( int index ); std::vector< std::shared_ptr< RenderObject > > getObjects(); std::vector< std::shared_ptr< RenderObject > >