src/GameMessageView.cc
branchnew_graphics
changeset 411 106aaf6eadfe
parent 410 41fd46cffc52
child 412 721c60072091
--- a/src/GameMessageView.cc	Wed Jan 21 01:57:24 2009 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,56 +0,0 @@
-
-#include "GameMessageView.hh"
-#include "Graphics.hh"
-#include "Engine.hh"
-
-GameMessageView::GameMessageView (PixelArea area) :
-    area(area), messages()
-{
-    
-}
-
-void GameMessageView::add_message (CL_Color color, std::string message) {
-    GameMessage msg (color, message);
-
-    messages.push_back(msg);
-}
-
-void GameMessageView::draw (Graphics *g) {
-    // get font
-    CL_Font &font = g->getSimpleFont(); 
-
-    // remember color
-    CL_Color font_color = font.get_color();
-    
-    // maximum width
-    CL_Size max_size = CL_Size(area.right - area.left, 0);
-
-    // starting point for drawing
-    PixelDimension offset_prev = area.bottom;
-
-    // render messages, bottom up
-    for (std::vector<GameMessage>::reverse_iterator it = messages.rbegin(); it != messages.rend(); it++) {
-        // set message color
-        font.set_color(it->color);
-
-        // calculate height
-        PixelDimension height = font.get_height(it->message, max_size) + GRAPHICS_INFO_TEXT_LINE_OFFSET;
-       
-        // new draw_point
-        PixelDimension offset_this = offset_prev - height;
-
-        // break if it doesn't fit anymore
-        if (offset_this < area.top)
-            break;
- 
-        // draw text
-        font.draw(CL_Rect(area.left, offset_this, area.right, offset_prev), it->message, g->get_gc());
-        
-        // advance offset
-        offset_prev = offset_this;
-    }
-
-    // restore font color
-    font.set_color(font_color);
-}
-