summaryrefslogtreecommitdiff
path: root/text.cpp
blob: 82aa6060fcd57a2b57de1a93d60145ae36479bfc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#include "text.h"

#include <SFML/Graphics/RenderWindow.hpp>

extern sf::RenderWindow *renderwindow;

sf::Font *font = NULL;

Text::Text(std::string str, int x, int y) {
	if(!font) {
		font = new sf::Font();
		font->LoadFromFile("fonts/VeraMono.ttf");
	}
	string.SetSize(20);
	string.SetFont(*font);
	set_text(str);
	set_position(x, y);
}

void Text::draw() {
	renderwindow->Draw(string);
}

void Text::set_text(std::string str) {
	string.SetText(str);
}

void Text::set_position(int x, int y) {
	float wf = (float)renderwindow->GetWidth() / 1024;
	float hf = (float)renderwindow->GetHeight() / 768;
	float xf = x * wf;
	float yf = y * hf;
	string.SetPosition(xf, yf);
}

void Text::subtract_height() {
	sf::FloatRect fr = string.GetRect();
	sf::Vector2f pos = string.GetPosition();
	pos.y -= fr.GetHeight();
	string.SetPosition(pos);
}