====== Différences ====== Ci-dessous, les différences entre deux révisions de la page.
allegro:events [2012/03/17 15:03] mrhide [Que sont les Events?] |
allegro:events [2012/06/29 17:01] (Version actuelle) mrhide [Events] |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | ===== Events ===== | + | ===== Allegro — Events ===== |
Ligne 84: | Ligne 84: | ||
<code c> event_queue = al_create_event_queue();</code> | <code c> event_queue = al_create_event_queue();</code> | ||
- | **al_create_event_queue** retourne un objet de type **ALLEGRO_EVENT_QUEUE**. En cas d'échec elle renvoi **NULL**. Cette fonction a peu de chances d'échouer dans ce programme, nous recommandons tout de même de tester la valeur renvoyée, en effet, vous pourrez avoir des soucis lorsque le programme devient plus compliqué. | + | **al_create_event_queue** retourne un objet de type **ALLEGRO_EVENT_QUEUE**. En cas d'échec elle renvoi **NULL**. Cette fonction a peu de chances d'échouer dans ce programme, nous recommandons tout de même de tester la valeur renvoyée, en effet, vous pourriez avoir des soucis lorsque le programme devient plus compliqué. |
<code c> al_register_event_source(event_queue, al_get_display_event_source(display));</code> | <code c> al_register_event_source(event_queue, al_get_display_event_source(display));</code> | ||
Ligne 95: | Ligne 95: | ||
**al_init_timeout** initialise un objet **ALLEGRO_TIMEOUT**, ici à 0.06 secondes, soit 60 millisecondes. | **al_init_timeout** initialise un objet **ALLEGRO_TIMEOUT**, ici à 0.06 secondes, soit 60 millisecondes. | ||
- | <code c> bool got_event = al_wait_for_event_until(event_queue, &ev, &timeout);</code> | + | <code c> bool get_event = al_wait_for_event_until(event_queue, &ev, &timeout);</code> |
- | Nous demandons à Allegro d'attendre un events, ou que le temps défini soit écoulé. **al_wait_for_event_until** renverra **false** si aucun event est déclenché avant que le temps soit écoulé. | + | Nous demandons à Allegro d'attendre un event, ou que le temps défini soit écoulé. **al_wait_for_event_until** renverra **false** si aucun event est déclenché avant que le temps soit écoulé. |
<code c> if(get_event && ev.type == ALLEGRO_EVENT_DISPLAY_CLOSE) { | <code c> if(get_event && ev.type == ALLEGRO_EVENT_DISPLAY_CLOSE) { | ||
Ligne 104: | Ligne 104: | ||
</code> | </code> | ||
- | Ici on vérifié si nous avons un event dans la queu. Si c'est un Display //close event//, on break la boucle du programme. | + | Ici on vérifié si nous avons un event dans la variable **ev**. Si c'est un Display //close event//, on break la boucle du programme. |
Ici s'achève notre article sur les events d'Allegro 5. | Ici s'achève notre article sur les events d'Allegro 5. | ||
[[allegro:display|Précédent]] << [[allegro:start#articles|Sommaire]] >> [[allegro:timers|Suivant]] | [[allegro:display|Précédent]] << [[allegro:start#articles|Sommaire]] >> [[allegro:timers|Suivant]] |