Très bon arguments, je m'incline
Le premier est le moins percutant mais je comprends que pour une lib de cette qualité ce n'est pas possible.
J'avoue ne pas du tout avoir pensé au second...
Et le troisième je savais que ça n'avait pas de sens mais c'était plus pour le côté "pratique" xD
Pourquoi ne pas ajouter alors une fonction isRunning() qui ferait ça, du coup 1-On ne ment pas car elle est prévue pour, 2-Bah du coup elle est prévue pour donc les gens peuvent utiliser isOpen() quand même pour leurs tests, 3-Tant pis pour la couleur en argument ou une couleur par défaut
Je te laisse jeter un coup d'oeil à mon code où justement j'utilise cette technique, même si comme tu me le dis avec l'exemple du CPU/GPU, ici c'est une petite application et que pour les grosses cela ne fonctionne pas terriblement bien...
#include <SFML/Graphics.hpp>
#include "include/Application.h"
int main()
{
Application app;
BoutonText bouton = app.newBoutonText(app.getTexture("gui.png"),sf::IntRect(0,0,396,35),sf::IntRect(0,35,396,35),sf::IntRect(0,70,396,35),sf::Vector2f(0,0),4,10,"Clique pour centrer",23,app.getFont("cloister.ttf"),sf::Color(255,255,255));
BoutonImage boutonI = app.newBoutonImage(app.getTexture("gui.png"),sf::IntRect(0,0,396,35),sf::IntRect(0,35,396,35),sf::IntRect(0,70,396,35),sf::Vector2f(50,50),4,10,app.getTexture("gui.png"),sf::IntRect(0,70,180,10));
while (app.isOpen()) //Application::isOpen inclut les fonctions display, clear et drawGui
{
while (app.pollEvent()) //Application::pollEvent inclut la gestion de la fermeture de la fenêtre mais ça c'est encore autre chose et je comprends que tu ne veuilles pas
{
if (CmEvent::clicLeft(app.getEvent()) && bouton.isHover(app.getWindowPtr()))
{
bouton.centerText("Bim! Centré!");
}
if (CmEvent::clicLeft(app.getEvent()) && boutonI.isHover(app.getWindowPtr()))
{
boutonI.centerImage();
}
}
}
return 0;
}