Ignore:
Timestamp:
Sep 27, 2008, 3:12:46 PM (11 years ago)
Author:
Sam Hocevar
Message:

Starting refactoring to get rid of libcucul. The initial reason for the
split is rendered moot by the plugin system: when enabled, binaries do
not link directly with libX11 or libGL. I hope this is a step towards
more consisteny and clarity.

File:
1 copied

Legend:

Unmodified
Added
Removed
  • libcaca/trunk/caca/box.c

    r2819 r2821  
    11/*
    2  *  libcucul      Canvas for ultrafast compositing of Unicode letters
     2 *  libcaca       Colour ASCII-Art library
    33 *  Copyright (c) 2002-2006 Sam Hocevar <sam@zoy.org>
    44 *                All Rights Reserved
     
    2323#endif
    2424
    25 #include "cucul.h"
    26 #include "cucul_internals.h"
     25#include "caca.h"
     26#include "caca_internals.h"
    2727
    2828/** \brief Draw a box on the canvas using the given character.
     
    3030 *  This function never fails.
    3131 *
    32  *  \param cv The handle to the libcucul canvas.
     32 *  \param cv The handle to the libcaca canvas.
    3333 *  \param x X coordinate of the upper-left corner of the box.
    3434 *  \param y Y coordinate of the upper-left corner of the box.
     
    3838 *  \return This function always returns 0.
    3939 */
    40 int cucul_draw_box(cucul_canvas_t *cv, int x, int y, int w, int h, uint32_t ch)
    41 {
    42     int x2 = x + w - 1;
    43     int y2 = y + h - 1;
    44 
    45     cucul_draw_line(cv,  x,  y,  x, y2, ch);
    46     cucul_draw_line(cv,  x, y2, x2, y2, ch);
    47     cucul_draw_line(cv, x2, y2, x2,  y, ch);
    48     cucul_draw_line(cv, x2,  y,  x,  y, ch);
     40int caca_draw_box(caca_canvas_t *cv, int x, int y, int w, int h, uint32_t ch)
     41{
     42    int x2 = x + w - 1;
     43    int y2 = y + h - 1;
     44
     45    caca_draw_line(cv,  x,  y,  x, y2, ch);
     46    caca_draw_line(cv,  x, y2, x2, y2, ch);
     47    caca_draw_line(cv, x2, y2, x2,  y, ch);
     48    caca_draw_line(cv, x2,  y,  x,  y, ch);
    4949
    5050    return 0;
     
    5555 *  This function never fails.
    5656 *
    57  *  \param cv The handle to the libcucul canvas.
    58  *  \param x X coordinate of the upper-left corner of the box.
    59  *  \param y Y coordinate of the upper-left corner of the box.
    60  *  \param w Width of the box.
    61  *  \param h Height of the box.
    62  *  \return This function always returns 0.
    63  */
    64 int cucul_draw_thin_box(cucul_canvas_t *cv, int x, int y, int w, int h)
     57 *  \param cv The handle to the libcaca canvas.
     58 *  \param x X coordinate of the upper-left corner of the box.
     59 *  \param y Y coordinate of the upper-left corner of the box.
     60 *  \param w Width of the box.
     61 *  \param h Height of the box.
     62 *  \return This function always returns 0.
     63 */
     64int caca_draw_thin_box(caca_canvas_t *cv, int x, int y, int w, int h)
    6565{
    6666    int i, j, xmax, ymax;
     
    9090    if(y >= 0)
    9191        for(i = x < 0 ? 1 : x + 1; i < x2 && i < xmax; i++)
    92             cucul_put_char(cv, i, y, '-');
     92            caca_put_char(cv, i, y, '-');
    9393
    9494    if(y2 <= ymax)
    9595        for(i = x < 0 ? 1 : x + 1; i < x2 && i < xmax; i++)
    96             cucul_put_char(cv, i, y2, '-');
     96            caca_put_char(cv, i, y2, '-');
    9797
    9898    if(x >= 0)
    9999        for(j = y < 0 ? 1 : y + 1; j < y2 && j < ymax; j++)
    100             cucul_put_char(cv, x, j, '|');
     100            caca_put_char(cv, x, j, '|');
    101101
    102102    if(x2 <= xmax)
    103103        for(j = y < 0 ? 1 : y + 1; j < y2 && j < ymax; j++)
    104             cucul_put_char(cv, x2, j, '|');
     104            caca_put_char(cv, x2, j, '|');
    105105
    106106    /* Draw corners */
    107     cucul_put_char(cv, x, y, ',');
    108     cucul_put_char(cv, x, y2, '`');
    109     cucul_put_char(cv, x2, y, '.');
    110     cucul_put_char(cv, x2, y2, '\'');
     107    caca_put_char(cv, x, y, ',');
     108    caca_put_char(cv, x, y2, '`');
     109    caca_put_char(cv, x2, y, '.');
     110    caca_put_char(cv, x2, y2, '\'');
    111111
    112112    return 0;
     
    117117 *  This function never fails.
    118118 *
    119  *  \param cv The handle to the libcucul canvas.
    120  *  \param x X coordinate of the upper-left corner of the box.
    121  *  \param y Y coordinate of the upper-left corner of the box.
    122  *  \param w Width of the box.
    123  *  \param h Height of the box.
    124  *  \return This function always returns 0.
    125  */
    126 int cucul_draw_cp437_box(cucul_canvas_t *cv, int x, int y, int w, int h)
     119 *  \param cv The handle to the libcaca canvas.
     120 *  \param x X coordinate of the upper-left corner of the box.
     121 *  \param y Y coordinate of the upper-left corner of the box.
     122 *  \param w Width of the box.
     123 *  \param h Height of the box.
     124 *  \return This function always returns 0.
     125 */
     126int caca_draw_cp437_box(caca_canvas_t *cv, int x, int y, int w, int h)
    127127{
    128128    int i, j, xmax, ymax;
     
    152152    if(y >= 0)
    153153        for(i = x < 0 ? 1 : x + 1; i < x2 && i < xmax; i++)
    154             cucul_put_char(cv, i, y, 0x2500); /* ─ */
     154            caca_put_char(cv, i, y, 0x2500); /* ─ */
    155155
    156156    if(y2 <= ymax)
    157157        for(i = x < 0 ? 1 : x + 1; i < x2 && i < xmax; i++)
    158             cucul_put_char(cv, i, y2, 0x2500); /* ─ */
     158            caca_put_char(cv, i, y2, 0x2500); /* ─ */
    159159
    160160    if(x >= 0)
    161161        for(j = y < 0 ? 1 : y + 1; j < y2 && j < ymax; j++)
    162             cucul_put_char(cv, x, j, 0x2502); /* │ */
     162            caca_put_char(cv, x, j, 0x2502); /* │ */
    163163
    164164    if(x2 <= xmax)
    165165        for(j = y < 0 ? 1 : y + 1; j < y2 && j < ymax; j++)
    166             cucul_put_char(cv, x2, j, 0x2502); /* │ */
     166            caca_put_char(cv, x2, j, 0x2502); /* │ */
    167167
    168168    /* Draw corners */
    169     cucul_put_char(cv, x, y, 0x250c); /* ┌ */
    170     cucul_put_char(cv, x, y2, 0x2514); /* └ */
    171     cucul_put_char(cv, x2, y, 0x2510); /* ┐ */
    172     cucul_put_char(cv, x2, y2, 0x2518); /* ┘ */
     169    caca_put_char(cv, x, y, 0x250c); /* ┌ */
     170    caca_put_char(cv, x, y2, 0x2514); /* └ */
     171    caca_put_char(cv, x2, y, 0x2510); /* ┐ */
     172    caca_put_char(cv, x2, y2, 0x2518); /* ┘ */
    173173
    174174    return 0;
     
    179179 *  This function never fails.
    180180 *
    181  *  \param cv The handle to the libcucul canvas.
     181 *  \param cv The handle to the libcaca canvas.
    182182 *  \param x X coordinate of the upper-left corner of the box.
    183183 *  \param y Y coordinate of the upper-left corner of the box.
     
    187187 *  \return This function always returns 0.
    188188 */
    189 int cucul_fill_box(cucul_canvas_t *cv, int x, int y, int w, int h,
     189int caca_fill_box(caca_canvas_t *cv, int x, int y, int w, int h,
    190190                   uint32_t ch)
    191191{
     
    220220    for(j = y; j <= y2; j++)
    221221        for(i = x; i <= x2; i++)
    222             cucul_put_char(cv, i, j, ch);
    223 
    224     return 0;
    225 }
    226 
     222            caca_put_char(cv, i, j, ch);
     223
     224    return 0;
     225}
     226
Note: See TracChangeset for help on using the changeset viewer.