Changed behavior of centered text drawing and added right allignment, as well.
[supertux.git] / lib / video / drawing_context.cpp
index f6e9af1..693191c 100644 (file)
@@ -78,7 +78,8 @@ DrawingContext::draw_surface_part(const Surface* surface, const Vector& source,
 
 void
 DrawingContext::draw_text(Font* font, const std::string& text,
-    const Vector& position, int layer, Uint32 drawing_effect)
+    const Vector& position, int allignment, int layer,
+    Uint32 drawing_effect, int alpha)
 {
   DrawingRequest request;
 
@@ -90,26 +91,8 @@ DrawingContext::draw_text(Font* font, const std::string& text,
   TextRequest* textrequest = new TextRequest;
   textrequest->font = font;
   textrequest->text = text;
-  request.request_data = textrequest;
-
-  drawingrequests.push_back(request);
-}
-
-void
-DrawingContext::draw_text_center(Font* font, const std::string& text,
-    const Vector& position, int layer, Uint32 drawing_effect)
-{
-  DrawingRequest request;
-
-  request.type = TEXT;
-  request.layer = layer;
-  request.pos = transform.apply(position) + Vector(screen->w/2 - 
-      font->get_text_width(text)/2, 0);
-  request.drawing_effect = drawing_effect;
-
-  TextRequest* textrequest = new TextRequest;
-  textrequest->font = font;
-  textrequest->text = text;
+  textrequest->allignment = allignment;
+  textrequest->alpha = alpha;
   request.request_data = textrequest;
 
   drawingrequests.push_back(request);
@@ -215,8 +198,8 @@ void
 DrawingContext::draw_text(DrawingRequest& request)
 {
   TextRequest* textrequest = (TextRequest*) request.request_data;
-  
-  textrequest->font->draw(textrequest->text, request.pos, request.drawing_effect);
+
+  textrequest->font->draw(textrequest->text, request.pos, textrequest->allignment, request.drawing_effect, textrequest->alpha);
 
   delete textrequest;
 }