#include <stdlib.h> #include "SDL_gui.h" #include "SDL_thread.h"
int init(int w, int h) { GUI_Screen *screen =
GUI_GetScreen(); /* load the background */
try { GUI_Surface *bg = new
GUI_Surface("background.jpg"); screen->SetBackground(bg);
bg->DecRef(); } catch (GUI_Exception e)
{ fprintf(stderr, "Error: %s0, e.GetMessage());
// return -1; } // load the font
GUI_Font *font; try { font
= GUI_FontLoadTrueType("bboron.ttf", 48); } catch
(GUI_Exception e) { fprintf(stderr, "Error: %s0,
e.GetMessage()); return -1; } /*
create the main contents for the screen */
GUI_Widget *label = new GUI_Label("label", 0,0,w,h, font, "Test");
screen->SetContents(label); label->DecRef();
font->DecRef(); return 0; }
int main(int argc, char **argv) { int v = SDL_HWSURFACE; // |
SDL_FULLSCREEN | SDL_DOUBLEBUF; int w = 640; int h = 480;
int d = 16;
/* Initialize SDL */ if (SDL_Init(SDL_INIT_VIDEO) < 0)
return 1; atexit(SDL_Quit);
/* Initialize the TTF library */ if (TTF_Init() < 0)
return 1; atexit(TTF_Quit);
/* Initialize the GUI library */ if (GUI_Init() < 0)
return 1; atexit(GUI_Quit);
/* create and install the screen */ GUI_Screen *screen =
GUI_ScreenCreate(w, h, d, v); if (screen == NULL)
return 1; GUI_SetScreen(screen);
/* Initialize the app */ if (init(w, h) == 0)
GUI_Run(); return 0; }