Sam Hocevar
3243101ff0
* Rename cucul_put*() into cucul_put_*(). Updated all code to reflect that.
18 år sedan
Sam Hocevar
8c5342b263
* Made cucul_blit() handle-aware. Added a blit test for that.
18 år sedan
Sam Hocevar
f61bed2bdb
* Add cursor and handle support to canvases. Unused yet.
18 år sedan
Sam Hocevar
21bfa6210d
* Cosmetic code and documentation changes here and there.
* Updated TODO.
18 år sedan
Sam Hocevar
9fb85b253c
* Prepare the way for per-frame width/height information.
18 år sedan
Sam Hocevar
44c286272c
* Minor documentation fixes.
18 år sedan
Sam Hocevar
86301dd48c
* Use the LSB of alpha and blue components to encode additional flags such
as bold or underline. No higher level support for these yet, but at
least everything is consistent.
* Created cucul_set_attr_ansi() and cucul_set_attr_argb() which are bound
to replace cucul_set_color() and cucul_set_truecolor().
18 år sedan
Sam Hocevar
26c3ea1aa4
* Removed "This function..." constructs from documentation. Fixed a few
documentation errors or imprecisions.
18 år sedan
Sam Hocevar
806f748059
* Made cucul_blit(), and therefore cucul_set_canvas_boundaries(), support
fullwidth characters.
* Added a case to test/fullwidth.c for cucul_blit and fullwidth chars.
18 år sedan
Sam Hocevar
df13e2a2e1
* Updated documentation of fullwidth-aware functions.
* Fullwidth support in all exporters.
18 år sedan
Sam Hocevar
4711611e3f
* Support for fullwidth glyphs in the libcaca output drivers.
18 år sedan
Sam Hocevar
b45eea0b39
* Support for fullwidth (= double width) Unicode characters.
18 år sedan
Sam Hocevar
5810f430d7
* Fix minor memory leak in cucul_set_canvas_boundaries().
18 år sedan
Sam Hocevar
5ee52bfd42
* Fixed a bug in cucul_putchar() that broke half of the Unicode set.
18 år sedan
Sam Hocevar
14e83acc9d
* Fixed chcul_getchar's error behaviour.
18 år sedan
Sam Hocevar
1ba0587622
* Implement cucul_set_canvas_boundaries() for cropping and expanding.
18 år sedan
Sam Hocevar
f13f15d2f1
* Implemented cucul_getchar(). Useful because you don’t necessarily know
what you are importing.
18 år sedan
Sam Hocevar
a1deddf2a6
* Fixed an out of bounds bug in cucul_blit().
18 år sedan
Sam Hocevar
58f3935f0f
* Have cucul_utf8_to_utf32 write how many bytes it read.
* Use that in the SLang driver so that it supports UTF-8 input.
18 år sedan
Sam Hocevar
9137c0a059
* Export the UTF-8 / UTF-32 / CP437 character conversions to applications.
18 år sedan
Sam Hocevar
7754db5ccf
* Changed cucul_putchar's prototype so that it accepts a 32-bit unsigned
int which shall be used as an UTF-32 character. We do not have any casting
problems due to the signedness of chars because all characters were
ASCII (ie. <= 0x7f) beforehands.
18 år sedan
Sam Hocevar
235504d81a
* More error checking in libcucul.
18 år sedan
Sam Hocevar
981c405554
* Check for <errno.h>.
* Started changing function prototypes so that they return an integer
instead of void, just in case they might fail.
18 år sedan
Sam Hocevar
5cb4d4dedf
* Removed duplicate uint*_t defines from *_internal.h and included common.h
in all .c files that needed it.
18 år sedan
Sam Hocevar
bde0e5ca7e
* Changed cucul_clear_canvas() again. It now uses the current foreground
and background colours to clear the screen.
18 år sedan
Sam Hocevar
a4ac581b6f
* Renamed cucul_clear() to cucul_clear_canvas() and added an argument to
choose the background colour.
18 år sedan
Sam Hocevar
687a2c43f6
* Renamed caca_t into caca_display_t.
* Renamed canvas handle variables from "c" to "cv". Eh ouais mon gros.
18 år sedan
Sam Hocevar
246c5b4d67
* Renamed cucul_t into cucul_canvas_t. Eh ouais mon con.
18 år sedan
Sam Hocevar
9f0a475645
* Moved cucul_set_color() from canvas.c to colour.c.
* Added cucul_set_truecolor() for non-ANSI colours.
* Added new argb32 -> rgb12 conversion functions.
18 år sedan
Sam Hocevar
2c5ccb65e6
* Improved documentation in many places.
18 år sedan
Sam Hocevar
018fda76e8
* Removed \file directives from all files except caca.h and cucul.h, to
remove redundencies in the Doxygen documentation.
18 år sedan
Sam Hocevar
988f2f4e92
* Replaced enum cucul_color with unsigned int. The size of an enum is not
really portable, and Visual Studio complains when they are not explicitely
cast.
18 år sedan
Sam Hocevar
af4b95f8e6
* Store colour information on 32 bits, for future 12-bit colour support.
18 år sedan
Sam Hocevar
c1664e356c
* Got rid of cucul_get_screen(). Use cucul_export() instead.
18 år sedan
Sam Hocevar
7be0932b8f
((`)_.._ ,'-. _..._ _._
* Ooops. Compilation fix. \,' '-._.-\ ' ` .-'
.' / (
/ S | _ _ \
| a \ o o |
; m .-. /
; ', '-.( '')-'
'. | ;-'
\ / /
/ /-._ __, 7 |
\ `\ \`` | | |
\ \_,\ | |_,\
'-`' \_,\
18 år sedan
Sam Hocevar
2213100258
* Got rid of the useless cucul_get_fg_color/cucul_get_bg_color functions.
18 år sedan
Sam Hocevar
6db26f7487
* Made cucul_putchar32() an internal-only function.
* Changed the line, box, ellipsis etc. prototypes so that they use an UTF-8
string instead of a single character as their last argument.
18 år sedan
Sam Hocevar
77f995023d
* Slightly changed header comments.
18 år sedan
Sam Hocevar
1c7d39a015
* Optimise cucul_blit() by using memcpy() if there is no mask.
18 år sedan
Sam Hocevar
73aad0447c
* Added the cucul_blit() function. It lets us blit various canvas one
onto the other with an optional mask.
18 år sedan
Sam Hocevar
6b0f180e2f
* Renamed cucul/char.c into cucul/canvas.c because I'm adding stuff there
that is a bit more high level than characters.
18 år sedan
Sam Hocevar
02ccf6ec3b
* Cosmetic fixes.
19 år sedan
Sam Hocevar
417b598d8d
* Factorised some charset handling code into a new cucul/charset.c file.
19 år sedan
Sam Hocevar
6e652d1e47
* Preliminary support for UTF-8 in cucul_putstr(). Also added a
cucul_putchar32() function but I'm not convinced it will be useful.
19 år sedan
Sam Hocevar
15ac34a918
* Added glue code to compile libcaca without a libc and build applications
as multiboot kernels.
19 år sedan
Sam Hocevar
70d96c811b
* Polished the driver split a bit (still no events, except resize events),
properly credited authors and documented a few things.
19 år sedan
Sam Hocevar
4f59010b4c
* Moved stuff around to differenciate between libcucul and libcaca.
19 år sedan
Sam Hocevar
6c6beb3541
* Use 32 bit integers for the character array. No visible difference for
now because we only do ASCII, but that will let us do Unicode later.
19 år sedan
Sam Hocevar
6d99c79d26
* All output plugins should now work again.
* Renamed caca_refresh() into caca_display() which makes more sense.
* Optimised gl_bgpal by directly storing floats instead of doing the
conversion at runtime.
* Handle resizing in cucul_set_size() and try to keep as much information
as possible from the previous canvas.
* Moved most global variables into cucul_t or caca_t contexts.
* Moved time.c into libcaca.
19 år sedan
Sam Hocevar
4c72df99aa
A new low-level text management library (canvas for ultrafast compositing
of unicode letters) is now separated from the higher level rendering and I/O
(that is, libcaca). This commit totally breaks the API, but once everything
is polished I will think about source-level backward compatibility. Most
drivers are broken, but X11 still sorta works.
The new design is much more object-oriented and allows having several
active renderers at the same time, changing renderers on the fly, and more
important, having no renderer at all (useful for converters, or when you
want to do your own renderer).
And in case you are still wondering, the libcucul acronym has "Unicode"
because I want to support at least a subset of Unicode. There are awesome
glyphs in it, including the ones inherited from Codepage 437 such as
"gray 25%" that are used in DOS and Win32 ANSI art.
19 år sedan