Voici le code d'un programme basique :
#include <Kid/Kid.hpp>
int main()
{
// creation des textures
sf::Texture texOut, texOver;
if(!texOut.loadFromFile("out.bmp") || !texOver.loadFromFile("over.bmp"))
return EXIT_FAILURE;
// et des sprites
sf::Sprite spriteOut(texOut), spriteOver(texOver), spriteDown(texOver);
spriteDown.scale(0.95, 0.95);
// un bouton
kid::Button but(spriteOut, spriteOver, spriteDown);
// on indique la zone reagissant a la souris
but.width = 100;
but.height = 100;
// conteneur principal
kid::Group gui;
gui.move(320, 240);
gui.setOrigin(but.width / 2, but.height / 2);
// on ajoute le bouton
gui.push_back(&but);
// creation de la fenetre
sf::RenderWindow app(sf::VideoMode(640, 480), "This is a test");
// boucle principale
while(app.isOpen())
{
// gestion des evenements
sf::Event event;
while(app.pollEvent(event))
{
if(event.type == sf::Event::Closed)
app.close();
// on fait reagir les widgets
kid::EventQueue eventQueue;
kid::update(gui, event, eventQueue);
// et on gere leur reaction
kid::Event kevent;
while(eventQueue.getEvent(kevent))
if(kevent.isType(kid::Clickable::Released) && kevent.isEmitter(but))
app.close();
}
// dessin
app.clear();
app.draw(gui);
app.display();
}
return EXIT_SUCCESS;
}
Pour le moment pas de screenshots, mais sachez que les graphismes sont totalement définis par l'utilisateur.