Ce programme montre comment il est possible de faire arrêter proprement un programme lorsque l'utilisateur demande son arrêt en appuyant sur la croix de la fenêtre, ou en envoyant un signal sytème d'arret du programme.
void exit_function( void* data ){
int* arret = (int*) data;
*arret = 1;
}
void affichage( int width, int height ){
int elapsed_time;
10, 100,
"Ce programme ne s'arête pas.\nToutefois, vous pouvez fermer le programme en fermant simplement la fenêtre.\n A ce moment là il est possible,\n à l'aide d'une fonction de rappel,\n d'exécuter un dernier code.",
9,
);
10, 400,
"Ca fait %d secondes que j'attends que vous quittiez ce programme.",
);
}
int main(int argc, char *argv[]){
int arret = 0;
int width = 640, height = 480;
while( ! arret ){
affichage( width, height );
}
200, 300,
"Au revoir et à bientôt!",
9,
);
return 0;
}
Fichier d'entête principal incluant tous les autres fichiers entêtes de la bibliothèque MLV.
#define MLV_COLOR_GREEN
Definition MLV_color.h:931
#define MLV_COLOR_BLACK
Definition MLV_color.h:379
#define MLV_COLOR_RED
Definition MLV_color.h:1297
void MLV_draw_text(int x, int y, const char *text, MLV_Color color,...)
Imprime un texte donné à une position et une couleur données.
@ MLV_TEXT_CENTER
Definition MLV_text.h:45
void MLV_draw_adapted_text_box(int x, int y, const char *message, int sizeInterligne, MLV_Color borderColor, MLV_Color textColor, MLV_Color backgroundColor, MLV_Text_justification text_justification,...)
Dessine une boîte contenant du texte.
int MLV_get_time()
Renvoie le nombre de millisecondes écoulées depuis le début de l'initialisation de la bibliothèque ML...
void MLV_wait_seconds(int seconds)
Le programme s'intérompt pendant un nombre de secondes.
void MLV_free_window()
Ferme la fenêtre de la bibliothèque MLV.
void MLV_create_window(const char *window_name, const char *icone_name, unsigned int width, unsigned int height)
Créé une fenêtre dont la taille, et les différents noms sont passés en paramètres.
void MLV_update_window()
Met à jour l'affichage de la fenêtre.
void MLV_execute_at_exit(void(*function)(void *), void *data)
Exécute la fonction de call back donnée en paramètre lorsque le système envoie un signal d'arrêt,...
void MLV_clear_window(MLV_Color color)
Éfface la fenêtre et la remplace par un monochrome de la couleur donnée en paramètre.