From 9a9ace4a42bdc56ec2f8e98d84b2f30213609a8b Mon Sep 17 00:00:00 2001 From: Allanis <allanis@saracraft.net> Date: Tue, 19 Feb 2013 14:18:55 +0000 Subject: [PATCH] [Add] Text word wrapping/block text. Allowing for lovely descriptons of planets. --- dat/planet.xml | 6 +- dat/ssys.xml | 1 + gfx/planet/exterior/saracraft.png | Bin 17592 -> 15193 bytes gfx/planet/space/saracraft.png | Bin 17592 -> 15193 bytes src/font.c | 123 +++++++++++++++++++++++++----- src/font.h | 5 ++ src/land.c | 4 +- src/main.c | 5 +- src/opengl.c | 1 - src/player.c | 45 +++++------ src/space.c | 8 +- src/space.h | 1 + src/toolkit.c | 5 +- src/toolkit.h | 2 +- 14 files changed, 153 insertions(+), 53 deletions(-) diff --git a/dat/planet.xml b/dat/planet.xml index 569185a..1da7967 100644 --- a/dat/planet.xml +++ b/dat/planet.xml @@ -2,11 +2,12 @@ <Planets> <planet name="KonoSphere"> <pos> - <x>10</x> - <y>15</y> + <x>0</x> + <y>0</y> </pos> <general> <class>A</class> + <description>The surface of the planet is predominantly covered with water and the planetary climate is characterised by abundant precipitation and strong winds, yet tolerable enough to make special and expensive weather control measurements unnecessary. Habitable land is characterised by soft meadows, swamps and dense forests. The resource base of KonoSphere consits mainly of agriculture and biomass, with the locally bred and grown kono rice being its main export, and fishing a traditional source of sustenance for its people. Other traditional products include wine, and various livestock, most prominently cattle. Cuisine on KonoSphere is rather refined, with most dishes containing meat.</description> <faction>Independent</faction> <services>1</services> <tech>0</tech> @@ -24,6 +25,7 @@ </pos> <general> <class>A</class> + <description>SaraCraft is a desert planet with no natural precipitation.</description> <faction>Independent</faction> <services>1</services> <tech>0</tech> diff --git a/dat/ssys.xml b/dat/ssys.xml index 2833111..c155b71 100644 --- a/dat/ssys.xml +++ b/dat/ssys.xml @@ -12,6 +12,7 @@ </general> <planets> <planet>KonoSphere</planet> + <planet>SaraCraft</planet> </planets> <fleets> <fleet chance="100">Enemy Test</fleet> diff --git a/gfx/planet/exterior/saracraft.png b/gfx/planet/exterior/saracraft.png index 20ccb16dccd686601cbaa767614059033c42d4ff..55f4e1a4993d22e01c8c0ea3ae8430b243962d21 100644 GIT binary patch literal 15193 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 Tna#o?00000NkvXXu0mjfABMp; literal 17592 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 diff --git a/gfx/planet/space/saracraft.png b/gfx/planet/space/saracraft.png index 20ccb16dccd686601cbaa767614059033c42d4ff..55f4e1a4993d22e01c8c0ea3ae8430b243962d21 100644 GIT binary patch literal 15193 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 Tna#o?00000NkvXXu0mjfABMp; literal 17592 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 diff --git a/src/font.c b/src/font.c index bc34486..4c3d9b1 100644 --- a/src/font.c +++ b/src/font.c @@ -9,8 +9,22 @@ #include "pack.h" #define FONT_DEF "../gfx/fonts/font.ttf" + +// == Font render routines.================================ +// Use a display list to store ASCII chars rendered with +// freefont. There are several drawing methods depending +// on whether you want to print it all, to a max width, +// print centered or print a block of text. +// +// There are hardcoded size limits. 256 characters for all +// routines exept gl_printText which has a 1024 limit. +// +// TODO: Check if length is too long. +// ======================================================== + // Default font. glFont gl_defFont; +glFont gl_smallFont; static void glFontMakeDList(FT_Face face, char ch, GLuint list_base, GLuint* tex_base, int* width_base); @@ -30,7 +44,7 @@ static int pot(int n) { void gl_print(const glFont* ft_font, const double x, const double y, const glColour* c, const char* fmt, ...) { //float h = ft_font->h / .63; // Slightly increases font size. - char text[256]; + char txt[256]; va_list ap; if(ft_font == NULL) ft_font = &gl_defFont; @@ -39,7 +53,7 @@ void gl_print(const glFont* ft_font, const double x, const double y, else { // convert the symbols to text. va_start(ap, fmt); - vsprintf(text, fmt, ap); + vsprintf(txt, fmt, ap); va_end(ap); } @@ -53,7 +67,7 @@ void gl_print(const glFont* ft_font, const double x, const double y, if(c == NULL) glColor4d(1., 1., 1., 1.); else COLOUR(*c); - glCallLists(strlen(text), GL_UNSIGNED_BYTE, &text); + glCallLists(strlen(txt), GL_UNSIGNED_BYTE, &txt); glPopMatrix(); // Translation matrix. glDisable(GL_TEXTURE_2D); @@ -64,7 +78,7 @@ void gl_print(const glFont* ft_font, const double x, const double y, int gl_printMax(const glFont* ft_font, const int max, const double x, const double y, const glColour* c, const char* fmt, ...) { //float h = ft_font->h / .63; // Slightly increases font size. - char text[256]; + char txt[256]; va_list ap; int i, n, len, ret; @@ -74,17 +88,17 @@ int gl_printMax(const glFont* ft_font, const int max, const double x, const doub else { // convert the symbols to text. va_start(ap, fmt); - vsprintf(text, fmt, ap); + vsprintf(txt, fmt, ap); va_end(ap); } // Limit the size. - len = (int)strlen(text); + len = (int)strlen(txt); for(n = 0, i = 0; i < len; i++) { - n += ft_font->w[(int)text[i]]; + n += ft_font->w[(int)txt[i]]; if(n > max) { ret = len - i; // Difference. - text[i] = '\0'; + txt[i] = '\0'; break; } } @@ -100,7 +114,7 @@ int gl_printMax(const glFont* ft_font, const int max, const double x, const doub if(c == NULL) glColor4d(1., 1., 1., 1.); else COLOUR(*c); - glCallLists(i, GL_UNSIGNED_BYTE, &text); + glCallLists(i, GL_UNSIGNED_BYTE, &txt); glPopMatrix(); // Translation matrix. glDisable(GL_TEXTURE_2D); @@ -112,7 +126,7 @@ int gl_printMax(const glFont* ft_font, const int max, const double x, const doub int gl_printMid(const glFont* ft_font, const int width, double x, const double y, const glColour* c, const char* fmt, ...) { //float h = ft_font->h / .63; // Slightly increases font size. - char text[256]; + char txt[256]; va_list ap; int i, n, len, ret; @@ -124,18 +138,18 @@ int gl_printMid(const glFont* ft_font, const int width, double x, const double y else { // convert the symbols to text. va_start(ap, fmt); - vsprintf(text, fmt, ap); + vsprintf(txt, fmt, ap); va_end(ap); } // Limit the size. - len = (int)strlen(text); + len = (int)strlen(txt); for(n = 0, i = 0; i < len; i++) { - n += ft_font->w[(int)text[i]]; + n += ft_font->w[(int)txt[i]]; if(n > width) { ret = len - i; // Difference. - n -= ft_font->w[(int)text[i]]; // Actual size. - text[i] = '\0'; + n -= ft_font->w[(int)txt[i]]; // Actual size. + txt[i] = '\0'; break; } } @@ -153,7 +167,7 @@ int gl_printMid(const glFont* ft_font, const int width, double x, const double y if(c == NULL) glColor4d(1., 1., 1., 1.); else COLOUR(*c); - glCallLists(i, GL_UNSIGNED_BYTE, &text); + glCallLists(i, GL_UNSIGNED_BYTE, &txt); glPopMatrix(); // Translation matrix. glDisable(GL_TEXTURE_2D); @@ -161,6 +175,77 @@ int gl_printMid(const glFont* ft_font, const int width, double x, const double y return ret; } +// Print text with line breaks included to a max width and height precet. +int gl_printText(const glFont* ft_font, const int width, const int height, + double bx, double by, glColour* c, const char* fmt, ...) { + + float h = ft_font->h / .63; // Slightly increase font size. + char txt[1024]; + char buf[128]; + va_list ap; + int p, i, j, n, len, ret, lastspace; + double x, y; + + ret = 0; // Default return value. + + if(ft_font == NULL) ft_font = &gl_defFont; + + if(fmt == NULL) return -1; + else { + // Convert the symbols to text. + va_start(ap, fmt); + vsprintf(txt, fmt, ap); + va_end(ap); + } + bx -= (double)gl_screen.w/2.; + by -= (double)gl_screen.h/2.; + x = bx; + y = by + height - (double)ft_font->h; // y is top left corner. + + // Prepare opengl. + glEnable(GL_TEXTURE_2D); + glListBase(ft_font->list_base); + if(c == NULL) glColor4d(1., 1., 1., 1.); + else COLOUR(*c); + + len = (int)strlen(txt); + // Limit size per line. + lastspace = 0; // Last ' ' or \n int text. + n = 0; // Current width. + i = 0; // Current position. + p = -1; // Where we last drew up to. + while(i < len+1) { + if(by - y > (double)height) return len-lastspace; // Past height. + + n += ft_font->w[(int)txt[i]]; + + if((txt[i] == ' ') || (txt[i] == '\n') || (txt[i] == '\0')) lastspace = i; + + if((n > width) || (txt[i] == '\n') || (txt[i] == '\0')) { + // Time to draw the line. + for(j = 0; j < (lastspace-p-1); j++) + buf[j] = txt[p+j+1]; + // No need for null termination. + + glMatrixMode(GL_MODELVIEW); // using modelview, projection gets full fast. + glPushMatrix(); // Translation matrix. + glTranslated(x, y, 0); + + glCallLists(lastspace-p-1, GL_UNSIGNED_BYTE, &buf); // This is what we are displaying. + + glPopMatrix(); // Translation matrix. + + p = lastspace; + n = 0; + i = lastspace; + y -= 1.5*(double)ft_font->h; // Move position down. + } + i++; + } + glDisable(GL_TEXTURE_2D); + + return ret; +} // Get the width of the text about to be printed. int gl_printWidth(const glFont* ft_font, const char* fmt, ...) { @@ -194,14 +279,14 @@ static void glFontMakeDList(FT_Face face, char ch, GLuint list_base, GLuint* tex int w, h; int i, j; - if(FT_Load_Glyph(face, FT_Get_Char_Index(face, ch), FT_LOAD_DEFAULT)) + if(FT_Load_Glyph(face, FT_Get_Char_Index(face, ch), FT_LOAD_FORCE_AUTOHINT)) WARN("FT_Load_Glyph failed"); if(FT_Get_Glyph(face->glyph, &glyph)) WARN("FT_Ge_Glyph failed"); // Convert your glyph to a bitmap. - FT_Glyph_To_Bitmap(&glyph, ft_render_mode_normal, 0, 1); + FT_Glyph_To_Bitmap(&glyph, FT_RENDER_MODE_NORMAL, 0, 1); FT_BitmapGlyph bitmap_glyph = (FT_BitmapGlyph)glyph; bitmap = bitmap_glyph->bitmap; // To simplify. @@ -264,7 +349,7 @@ static void glFontMakeDList(FT_Face face, char ch, GLuint list_base, GLuint* tex FT_Done_Glyph(glyph); } -void glFontInit(glFont* font, const char* fname, const unsigned int h) { +void gl_fontInit(glFont* font, const char* fname, const unsigned int h) { if(font == NULL) font = &gl_defFont; uint32_t bufsize; diff --git a/src/font.h b/src/font.h index 015f135..4b8ece5 100644 --- a/src/font.h +++ b/src/font.h @@ -9,6 +9,7 @@ typedef struct { GLuint list_base; } glFont; extern glFont gl_defFont; // Default font. +extern glFont gl_smallFont; // Small font. // glFont loading/freeing. // If font is NULL it uses the internal default font, same with gl_print @@ -27,6 +28,10 @@ int gl_printMax(const glFont* ft_font, const int max, const double x, const doub int gl_printMid(const glFont* ft_font, const int width, double x, const double y, const glColour* c, const char* fmt, ...); +// Respects \n -> bx, by is top left position. +int gl_printText(const glFont* ft_font, const int width, const int height, + double bx, double by, glColour* c, const char* fmt, ...); + // Get the width of the text that you wish to print. int gl_printWidth(const glFont* ft_font, const char* fmt, ...); diff --git a/src/land.c b/src/land.c index dbf9f03..8bc09ab 100644 --- a/src/land.c +++ b/src/land.c @@ -19,8 +19,10 @@ void land(Planet* p) { land_wid = window_create(-1, -1, LAND_WIDTH, LAND_HEIGHT); // Pretty display. - window_addText(land_wid, 0., -20., LAND_WIDTH, 1, "txtPlanet", NULL, &cBlack, p->name); + window_addText(land_wid, 0., -20., LAND_WIDTH, 0, 1, "txtPlanet", NULL, &cBlack, p->name); window_addImage(land_wid, 20., -440, "imgPlanet", p->gfx_exterior); + window_addText(land_wid, 440., 80., 200., 460., 0, + "txtPlanetDesc", &gl_smallFont, &cBlack, p->description); // Buttons. window_addButton(land_wid, -20, 20, BUTTON_WIDTH, BUTTON_HEIGHT, "btnTakeoff", "Takeoff", (void(*)(char*))takeoff); diff --git a/src/main.c b/src/main.c index 5b05756..1217531 100644 --- a/src/main.c +++ b/src/main.c @@ -32,6 +32,7 @@ #define VERSION_LEN 10 #define MINIMUM_FPS 0.5 #define FONT_SIZE 12 +#define FONT_SIZE_SMALL 10 static int quit = 0; // Primary loop. unsigned int gtime = 0; // Calculate FPS and movement. @@ -123,7 +124,8 @@ int main(int argc, char** argv) { WARN("Error initializing AI"); // Misc openGL init stuff. - glFontInit(NULL, NULL, FONT_SIZE); // Init default font size. + gl_fontInit(NULL, NULL, FONT_SIZE); // Init default font size. + gl_fontInit(&gl_smallFont, NULL, FONT_SIZE_SMALL); // Small font. gui_init(); // Init the GUI crap. toolkit_init(); // Init the toolkit. @@ -181,6 +183,7 @@ int main(int argc, char** argv) { ships_free(); outfit_free(); factions_free(); + gl_freeFont(&gl_smallFont); gl_freeFont(NULL); diff --git a/src/opengl.c b/src/opengl.c index 52bf1e8..0461649 100644 --- a/src/opengl.c +++ b/src/opengl.c @@ -49,7 +49,6 @@ static int pot(int n) { return i; } - // Flips the surface vertically. Return 0 on success. static int SDL_VFlipSurface(SDL_Surface* surface) { // Flip the image. diff --git a/src/player.c b/src/player.c index 688e21a..5bf4c31 100644 --- a/src/player.c +++ b/src/player.c @@ -76,7 +76,6 @@ typedef struct { typedef struct { // Graphics. - glFont smallFont; glTexture* gfx_frame; glTexture* gfx_targetPilot, *gfx_targetPlanet; @@ -324,15 +323,15 @@ void player_render(void) { // Planet landing target. gl_printMid(NULL, (int)gui.nav.w, gui.nav.x, gui.nav.y - 5, &cConsole, "Land"); - gl_printMid(&gui.smallFont, (int)gui.nav.w, gui.nav.x, gui.nav.y - 10 - gui.smallFont.h, + gl_printMid(&gl_smallFont, (int)gui.nav.w, gui.nav.x, gui.nav.y - 10 - gl_smallFont.h, NULL, "%s", cur_system->planets[planet_target].name); } else if(planet_target == -1) { // No planet target. gl_printMid(NULL, (int)gui.nav.w, gui.nav.x, gui.nav.y - 5, &cConsole, "Navigation"); - gl_printMid(&gui.smallFont, (int)gui.nav.w, gui.nav.x, - gui.nav.y - 10 - gui.smallFont.h, &cGrey, "Off"); + gl_printMid(&gl_smallFont, (int)gui.nav.w, gui.nav.x, + gui.nav.y - 10 - gl_smallFont.h, &cGrey, "Off"); } // Health @@ -344,7 +343,7 @@ void player_render(void) { if(player->secondary == NULL) { gl_printMid(NULL, (int)gui.weapon.w, gui.weapon.x, gui.weapon.y - 5, &cConsole, "Secondary"); - gl_printMid(&gui.smallFont, (int)gui.weapon.w, gui.weapon.x, + gl_printMid(&gl_smallFont, (int)gui.weapon.w, gui.weapon.x, gui.weapon.y - 10 - gl_defFont.h, &cGrey, "None"); } else { f = &gl_defFont; @@ -352,7 +351,7 @@ void player_render(void) { i = gl_printWidth(f, "%s", player->secondary->outfit->name); if(i > (int)gui.weapon.w) // Font is too big. - f = &gui.smallFont; + f = &gl_smallFont; gl_printMid(f, (int)gui.weapon.w, gui.weapon.x, gui.weapon.y - (gui.weapon.h - f->h)/2., @@ -362,14 +361,14 @@ void player_render(void) { i = gl_printWidth(f, "%s", player->secondary->outfit->name); if(i > gui.weapon.w) // Font is too big. - f = &gui.smallFont; + f = &gl_smallFont; gl_printMid(f, (int)gui.weapon.w, gui.weapon.x, gui.weapon.y - 5, &cConsole, "%s", player->ammo->outfit->name); // Print ammo underneath to the left. - gl_printMid(&gui.smallFont, gui.weapon.w, gui.weapon.x, + gl_printMid(&gl_smallFont, gui.weapon.w, gui.weapon.x, gui.weapon.y - 10 - gl_defFont.h, NULL, "%d", player->ammo->quantity); } @@ -384,21 +383,21 @@ void player_render(void) { // Target name. gl_print(NULL, gui.target_name.x, gui.target_name.y, NULL, "%s", p->name); - gl_print(&gui.smallFont, gui.target_faction.x, gui.target_faction.y, + gl_print(&gl_smallFont, gui.target_faction.x, gui.target_faction.y, NULL, "%s", p->faction->name); // Target status. if(pilot_isDisabled(p)) // Disable the pilot. - gl_print(&gui.smallFont, gui.target_health.x, gui.target_health.y, + gl_print(&gl_smallFont, gui.target_health.x, gui.target_health.y, NULL, "Disabled"); else if(p->shield > p->shield_max / 100.) // On shields. - gl_print(&gui.smallFont, gui.target_health.x, gui.target_health.y, + gl_print(&gl_smallFont, gui.target_health.x, gui.target_health.y, NULL, "%s: %.0f%%", "Shield", p->shield/p->shield_max*100.); else // On armour. - gl_print(&gui.smallFont, gui.target_health.x, gui.target_health.y, + gl_print(&gl_smallFont, gui.target_health.x, gui.target_health.y, NULL, "%s: %.0f%%", "Armor", p->armour/p->armour_max*100.); } else { // No target. @@ -416,8 +415,8 @@ void player_render(void) { snprintf(str, 10, "%.2fK", (double) credits / 1000.); else snprintf(str, 10, "%d", credits); - i = gl_printWidth(&gui.smallFont, "%s", str); - gl_print(&gui.smallFont, gui.misc.x + gui.misc.w - 10 - i, + i = gl_printWidth(&gl_smallFont, "%s", str); + gl_print(&gl_smallFont, gui.misc.x + gui.misc.w - 10 - i, gui.misc.y - 10 - gl_defFont.h, NULL, "%s", str); // Messages. @@ -498,8 +497,6 @@ int gui_init(void) { gui.gfx_targetPilot = NULL; gui.gfx_targetPlanet = NULL; - // Font. - glFontInit(&gui.smallFont, NULL, 10); // -- Radar. gui.radar.res = RADAR_RES_DEFAULT; // -- messages. @@ -722,13 +719,13 @@ static int gui_parse(const xmlNodePtr parent, const char* name) { if(xml_isNode(cur, "faction")) { rect_parse(cur, &gui.target_faction.x, &gui.target_faction.y, NULL, NULL); RELATIVIZE(gui.target_faction); - gui.target_faction.y -= gui.smallFont.h; + gui.target_faction.y -= gl_smallFont.h; } if(xml_isNode(cur, "health")) { rect_parse(cur, &gui.target_health.x, &gui.target_health.y, NULL, NULL); RELATIVIZE(gui.target_health); - gui.target_health.y -= gui.smallFont.h; + gui.target_health.y -= gl_smallFont.h; } } while((cur = cur->next)); } else if(xml_isNode(node, "misc")) { @@ -743,8 +740,6 @@ static int gui_parse(const xmlNodePtr parent, const char* name) { // Free the GUI. void gui_free(void) { - gl_freeFont(&gui.smallFont); - gl_freeTexture(gui.gfx_frame); gl_freeTexture(gui.gfx_targetPilot); gl_freeTexture(gui.gfx_targetPlanet); @@ -874,10 +869,12 @@ void player_land(void) { int i; int tp; double td, d; - - for(i = 0, tp = -1; i < cur_system->nplanets; i++) { - d = vect_dist(&player->solid->vel, &planet->pos); - if((tp == -1) || (td > d)) { + + td = -1; // Temp distance. + tp = -1; // Temp planet. + for(i = 0; i < cur_system->nplanets; i++) { + d = vect_dist(&player->solid->pos, &cur_system->planets[i].pos); + if((tp == -1) || ((td == -1) || (td > d))) { tp = i; td = d; } diff --git a/src/space.c b/src/space.c index 62a719d..7a6d0ba 100644 --- a/src/space.c +++ b/src/space.c @@ -289,6 +289,8 @@ static Planet* planet_get(const char* name) { tmp->class = planetclass_get(cur->children->content[0]); else if(xml_isNode(cur, "faction")) tmp->faction = faction_get(xml_get(cur)); + else if(xml_isNode(cur, "description")) + tmp->description = strdup(xml_get(cur)); } while((cur = cur->next)); } } while((node = node->next)); @@ -485,14 +487,16 @@ void space_exit(void) { int i,j; for(i = 0; i < nsystems; i++) { free(systems[i].name); + if(systems[i].fleets) + free(systems[i].fleets); for(j = 0; j < systems[i].nplanets; j++) { free(systems[i].planets[j].name); + if(systems[i].planets[j].description) + free(systems[i].planets[j].description); if(systems[i].planets[j].gfx_space) gl_freeTexture(systems[i].planets[j].gfx_space); if(systems[i].planets[j].gfx_exterior) gl_freeTexture(systems[i].planets[j].gfx_exterior); - if(systems[i].fleets) - free(systems[i].fleets); } free(systems[i].planets); } diff --git a/src/space.h b/src/space.h index a1640a4..9903b96 100644 --- a/src/space.h +++ b/src/space.h @@ -39,6 +39,7 @@ typedef struct { Vec2 pos; // Position in star system. PlanetClass class; // Planet type. + char* description; // Planet description. Faction* faction; // Planet faction. glTexture* gfx_space; // Graphics in space. glTexture* gfx_exterior; // Graphics in the exterior. diff --git a/src/toolkit.c b/src/toolkit.c index f5b0574..554fdf5 100644 --- a/src/toolkit.c +++ b/src/toolkit.c @@ -97,7 +97,7 @@ void window_addButton(const unsigned int wid, const int x, const int y, const in // Add text to the window. void window_addText(const unsigned int wid, const int x, const int y, - const int w, const int centered, char* name, + const int w, const int h, const int centered, char* name, glFont* font, glColour* colour, char* string) { Window* wdw = window_get(wid); @@ -108,6 +108,7 @@ void window_addText(const unsigned int wid, const int x, const int y, // Set the properties. wgt->w = (double) w; + wgt->h = (double) h; if(font == NULL) wgt->font = &gl_defFont; else wgt->font = font; if(x < 0) wgt->x = wdw->w - wgt->w + x; @@ -539,7 +540,7 @@ static void toolkit_renderText(Widget* txt, double bx, double by) { by + (double)gl_screen.h/2. + txt->y, txt->colour, txt->text); else - gl_printMax(txt->font, txt->w, + gl_printText(txt->font, txt->w, txt->h, bx + (double)gl_screen.w/2. + txt->x, by + (double)gl_screen.h/2. + txt->y, txt->colour, txt->text); diff --git a/src/toolkit.h b/src/toolkit.h index 6ec63a1..10bfa07 100644 --- a/src/toolkit.h +++ b/src/toolkit.h @@ -13,7 +13,7 @@ void window_addButton(const unsigned int wid, const int x, const int y, void(*call)(char*)); void window_addText(const unsigned int wid, const int x, const int y, - const int w, const int cenetered, char* name, + const int w, const int h, const int cenetered, char* name, glFont* font, glColour* colour, char* string); void window_addImage(const unsigned int wid, const int x, const int y,