Changeset 377


Ignore:
Timestamp:
Nov 5, 2004, 3:44:41 PM (18 years ago)
Author:
Sam Hocevar
Message:
  • examples/: + Use Space to pause demos, Esc to quit.
Location:
libcaca/trunk/examples
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • libcaca/trunk/examples/aafire.c

    r347 r377  
    4141static struct caca_bitmap *caca_bitmap;
    4242static char *bitmap;
     43static int pause = 0;
    4344#else
    4445static aa_context *context;
     
    194195#ifndef LIBCACA
    195196  char *bitmap = aa_image (context);
     197#else
     198  if(pause)
     199    goto paused;
    196200#endif
    197201
     
    217221  firemain ();
    218222#ifdef LIBCACA
     223paused:
    219224  caca_draw_bitmap(0, 0, caca_get_width() - 1, caca_get_height() - 1,
    220225                   caca_bitmap, bitmap);
     
    231236game (void)
    232237{
     238#ifndef LIBCACA
    233239  int event;
     240#endif
    234241  gentable ();
    235242#ifdef LIBCACA
    236   while (!(event = caca_get_event(CACA_EVENT_KEY_PRESS)))
     243  for(;;)
    237244#else
    238245  while (!(event = aa_getevent (context, 0)) || event == AA_RESIZE)
    239246#endif
    240247    {
     248#ifdef LIBCACA
     249      switch (caca_get_event(CACA_EVENT_KEY_PRESS))
     250        {
     251          case CACA_EVENT_KEY_PRESS | CACA_KEY_ESCAPE: return;
     252          case CACA_EVENT_KEY_PRESS | ' ': pause = !pause;
     253        }
     254
     255#endif
    241256      drawfire ();
    242257    }
  • libcaca/trunk/examples/cacaball.c

    r339 r377  
    5858    struct caca_bitmap *caca_bitmap;
    5959    float i = 10.0, j = 17.0, k = 11.0;
    60     int p, frame = 0;
     60    int p, frame = 0, pause = 0;
    6161
    6262    if(caca_init())
     
    8787
    8888    /* Go ! */
    89     while(!caca_get_event(CACA_EVENT_KEY_PRESS))
    90     {
     89    for(;;)
     90    {
     91        switch(caca_get_event(CACA_EVENT_KEY_PRESS))
     92        {
     93            case CACA_EVENT_KEY_PRESS | CACA_KEY_ESCAPE: goto end;
     94            case CACA_EVENT_KEY_PRESS | ' ': pause = !pause;
     95        }
     96
     97        if(pause)
     98            goto paused;
     99
    91100        frame++;
    92101
     
    135144            draw_ball(x[p], y[p]);
    136145
     146paused:
    137147        /* Draw our virtual buffer to screen, letting libcaca resize it */
    138148        caca_draw_bitmap(0, 0, caca_get_width() - 1, caca_get_height() - 1,
     
    142152
    143153    /* End, bye folks */
     154end:
     155    caca_free_bitmap(caca_bitmap);
    144156    caca_end();
    145157
  • libcaca/trunk/examples/cacamoir.c

    r340 r377  
    4747    int red[256], green[256], blue[256], alpha[256];
    4848    struct caca_bitmap *bitmap;
    49     int i, x, y, frame;
     49    int i, x, y, frame = 0, pause = 0;
    5050
    5151    if(caca_init() < 0)
     
    6969
    7070    /* Main loop */
    71     for(frame = 0; !caca_get_event(CACA_EVENT_KEY_PRESS); frame++)
     71    for(;;)
    7272    {
     73        switch(caca_get_event(CACA_EVENT_KEY_PRESS))
     74        {
     75            case CACA_EVENT_KEY_PRESS | CACA_KEY_ESCAPE: goto end;
     76            case CACA_EVENT_KEY_PRESS | ' ': pause = !pause;
     77        }
     78
     79        if(pause)
     80            goto paused;
     81
    7382        memset(screen, 0, XSIZ * YSIZ);
    7483
     
    93102        put_disc(x, y);
    94103
     104        frame++;
     105
     106paused:
    95107        caca_draw_bitmap(0, 0, caca_get_width() - 1, caca_get_height() - 1,
    96108                         bitmap, screen);
     
    98110    }
    99111
     112end:
    100113    caca_free_bitmap(bitmap);
    101114    caca_end();
  • libcaca/trunk/examples/cacaplas.c

    r370 r377  
    9090        }
    9191
     92        if(pause)
     93            goto paused;
     94
    9295        for(i = 0 ; i < 256; i++)
    9396        {
     
    102105        caca_set_bitmap_palette(bitmap, red, green, blue, alpha);
    103106
    104         if(!pause)
    105         {
    106             do_plasma(screen,
    107                       (1.0 + sin(((double)frame) * R[0])) / 2,
    108                       (1.0 + sin(((double)frame) * R[1])) / 2,
    109                       (1.0 + sin(((double)frame) * R[2])) / 2,
    110                       (1.0 + sin(((double)frame) * R[3])) / 2,
    111                       (1.0 + sin(((double)frame) * R[4])) / 2,
    112                       (1.0 + sin(((double)frame) * R[5])) / 2);
    113             frame++;
    114         }
     107        do_plasma(screen,
     108                  (1.0 + sin(((double)frame) * R[0])) / 2,
     109                  (1.0 + sin(((double)frame) * R[1])) / 2,
     110                  (1.0 + sin(((double)frame) * R[2])) / 2,
     111                  (1.0 + sin(((double)frame) * R[3])) / 2,
     112                  (1.0 + sin(((double)frame) * R[4])) / 2,
     113                  (1.0 + sin(((double)frame) * R[5])) / 2);
     114        frame++;
    115115
     116paused:
    116117        caca_draw_bitmap(0, 0, caca_get_width() - 1, caca_get_height() - 1,
    117118                         bitmap, screen);
Note: See TracChangeset for help on using the changeset viewer.