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 42 43 44 45 46 47 48 49 50 51 52
| void app::wait()
{
//Les emit sont des fonctions qui me sont propre.
//Les optimisations, propreté du code et fonctionnement du code n'est pas la partie qui m'intéresse.
sf::Event event;
exit=false;
while(!exit)
{
while(screen.GetEvent(event))
{
switch(event.Type)
{
case sf::Event::Resized :
std::cout<<"resize";
emit("resize");
break;
case sf::Event::GainedFocus :
std::cout<<"gained";
emit("gained_focus");
break;
case sf::Event::LostFocus :
std::cout<<"lost";
emit("lost_focus");
break;
case sf::Event::TextEntered :
emit("character",Evenement<Uint32>(event.Text.Unicode));
break;
case sf::Event::KeyPressed :
emit("keyboard", Evenement<bool, Key::Code, bool,bool,bool>(true,event.Key.Code,event.Key.Alt,event.Key.Control,event.Key.Shift));
break;
case sf::Event::KeyReleased :
emit("keyboard", Evenement<bool, Key::Code, bool,bool,bool>(false,event.Key.Code,event.Key.Alt,event.Key.Control,event.Key.Shift));
break;
case sf::Event::MouseButtonPressed :
emit("mouse_button", Evenement<bool, sf::Mouse::Button, int,int>(true,event.MouseButton.Button,event.MouseButton.X,event.MouseButton.Y));
break;
case sf::Event::MouseButtonReleased :
emit("mouse_button", Evenement<bool, sf::Mouse::Button, int,int>(false,event.MouseButton.Button,event.MouseButton.X,event.MouseButton.Y));
break;
case sf::Event::MouseMoved :
emit("mouse_motion", Evenement<unsigned int,unsigned int>(event.MouseMove.X,event.MouseMove.Y));
break;
case sf::Event::Closed :
emit("window_quit");
break;
default :
break;
}
}
}
emit("application_closed");
} |