Main Page | Class Hierarchy | Alphabetical List | Data Structures | Directories | File List | Data Fields | Globals

MultiDrawer.cpp

Go to the documentation of this file.
00001 /*
00002  * Copyright (C) 2004 Ivo Danihelka (ivo@danihelka.net)
00003  *
00004  * This program is free software; you can redistribute it and/or modify
00005  * it under the terms of the GNU General Public License as published by
00006  * the Free Software Foundation; either version 2 of the License, or
00007  * (at your option) any later version.
00008  */
00009 #include "MultiDrawer.h"
00010 
00011 //-----------------------------------------------------------------
00012 /**
00013  * Store drawer at the end of list.
00014  */
00015     void
00016 MultiDrawer::acceptDrawer(Drawable *drawer)
00017 {
00018     m_drawers.push_back(drawer);
00019 }
00020 //-----------------------------------------------------------------
00021 /**
00022  * Remove equal drawer from list.
00023  * Drawer will not be deleted.
00024  */
00025     void
00026 MultiDrawer::removeDrawer(const Drawable *drawer)
00027 {
00028     t_drawers::iterator end = m_drawers.end();
00029     for (t_drawers::iterator i = m_drawers.begin(); i != end; ++i) {
00030         if (*i == drawer) {
00031             m_drawers.erase(i);
00032             return;
00033         }
00034     }
00035 }
00036 //-----------------------------------------------------------------
00037 /**
00038  * Remove all drawers from list.
00039  */
00040 void
00041 MultiDrawer::removeAll()
00042 {
00043     m_drawers.clear();
00044 }
00045 //-----------------------------------------------------------------
00046 /**
00047  * Let every registred drawer to draw.
00048  */
00049 void
00050 MultiDrawer::drawOn(SDL_Surface *screen)
00051 {
00052     t_drawers::iterator end = m_drawers.end();
00053     for (t_drawers::iterator i = m_drawers.begin(); i != end; ++i) {
00054         (*i)->drawOn(screen);
00055     }
00056 }
00057 

Generated on Wed Jun 1 09:54:31 2005 for Fish Fillets - Next Generation by  doxygen 1.4.2