Sam Hocevar
9c72677ccf
* Add cucul_get_version() and caca_get_version() and updated C++ bindings
accordingly.
* The C++ test example no longer needs "config.h".
17 years ago
Sam Hocevar
03ad8a42fd
* Allow caca_create_display()'s argument to be NULL. It will automatically
create a canvas when so.
* Add caca_get_canvas() to retrieve the cucul canvas.
17 years ago
Sam Hocevar
07b9891afa
* Introduce cucul_get_canvas_chars() and cucul_get_canvas_attrs() to avoid
direct cv->chars and cv->attrs access by display drivers.
17 years ago
Sam Hocevar
7362a612c4
* Add cucul_manage_canvas() and cucul_unmanage_canvas(). Display
drivers no longer need to access the cv->refcount private member
and __cucul_set_canvas_size() is no longer needed.
17 years ago
Sam Hocevar
9597783308
* Bwarf, typo in the no warranty clause.
18 years ago
Sam Hocevar
33058757da
* Add a no warranty clause to the code.
18 years ago
Sam Hocevar
afed497172
* Added all the glue needed for a Cocoa output driver.
18 years ago
Sam Hocevar
51936f585c
* Got rid of HAVE_ERRNO_H ifdefs by defining seterrno()/geterrno() functions.
* More debugging information in the import/export and font functions.
18 years ago
Sam Hocevar
d1bccd4fba
* Added a --enable-plugins configure flag that builds the GL and X11 drivers
as plugins. This way, libcaca does not directly depend on those libraries.
18 years ago
Sam Hocevar
383fb90110
* Do not build the raw output in kernel mode.
* Fix cucul_utf32_to_cp437() call in the VGA output.
18 years ago
Sam Hocevar
bc5415d6a4
* Fixed libcaca prototypes so that all functions use the errno mechanism
and return a value.
18 years ago
Sam Hocevar
ec3b082509
* Fixed UTF-8 support in ncurses.
* Set ncurses's priority higher than slang.
18 years ago
Sam Hocevar
1f3e745f52
* Minor cosmetic changes in the test programs.
* Code enhancements in the ncurses driver.
* Added a comment to explain why slang has a higher priority than ncurses.
18 years ago
Sam Hocevar
5cb4d4dedf
* Removed duplicate uint*_t defines from *_internal.h and included common.h
in all .c files that needed it.
18 years ago
Sam Hocevar
1ec6544305
* More function mass-renaming: caca_attach -> caca_create_display, etc.
18 years ago
Sam Hocevar
687a2c43f6
* Renamed caca_t into caca_display_t.
* Renamed canvas handle variables from "c" to "cv". Eh ouais mon gros.
18 years ago
Sam Hocevar
246c5b4d67
* Renamed cucul_t into cucul_canvas_t. Eh ouais mon con.
18 years ago
Sam Hocevar
2c5ccb65e6
* Improved documentation in many places.
18 years ago
Sam Hocevar
018fda76e8
* Removed \file directives from all files except caca.h and cucul.h, to
remove redundencies in the Doxygen documentation.
18 years ago
Sam Hocevar
08a16c80fe
* Removed the network driver and replaced it with a cacaserver executable
that has all the functionality, except it does not work yet (the stdin
reading routine is missing).
18 years ago
Sam Hocevar
a6848be41e
* Created a minimal raw driver that outputs stuff to stdout.
18 years ago
Sam Hocevar
70cb2ab916
* Allow the driver initialisation to fail, for instance when $DISPLAY = "".
18 years ago
Sam Hocevar
f149dc3ac4
* Massive rework of the event handling code, as per the TODO list.
18 years ago
Sam Hocevar
77f995023d
* Slightly changed header comments.
18 years ago
Sam Hocevar
0c9103f95a
* Cosmetic.
18 years ago
Sam Hocevar
5c9868e79a
* Ooops, fixed an old typo.
18 years ago
Sam Hocevar
0889bf4799
* Fixed an uninitialised variable in the event queue handling.
18 years ago
Jean-Yves Lamoureux
d47bd8b490
* Added CACA_NETWORK_PORT env and related documentation
19 years ago
Sam Hocevar
37d1bec329
* Pure VGA output driver.
19 years ago
Jean-Yves Lamoureux
fd331c1504
* Added very preliminary network driver
19 years ago
Sam Hocevar
da30961a0e
* Fixed async issues between the driver and libcaca when resizing windows,
and simplified the handle_resize() API. Still can be polished.
19 years ago
Sam Hocevar
e44a01f08d
* Cosmetic changes here and there.
19 years ago
Sam Hocevar
8f286f6432
* Finished moving everything driver-specific to the apropriate driver_*.c
files. Phew. Now they just need a few comments.
19 years ago
Sam Hocevar
41e32c8809
* Got rid of static variables in the event code.
19 years ago
Sam Hocevar
70d96c811b
* Polished the driver split a bit (still no events, except resize events),
properly credited authors and documented a few things.
19 years ago
Sam Hocevar
34764ae68a
* Split caca/graphics.c into driver-specific files. Resize is currently
broken, and event handling is not yet in the driver-specific files, but
I will of course fix that later.
19 years ago
Sam Hocevar
4f59010b4c
* Moved stuff around to differenciate between libcucul and libcaca.
19 years ago
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 years ago
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 years ago
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 years ago
Sam Hocevar
707f10de81
* Changed the licensing to WTFPL, as per all copyright holders' permission.
19 years ago
Sam Hocevar
c55e00fe59
* src/caca.c: on Unix, do not use the GL driver if DISPLAY is not set.
19 years ago
Sam Hocevar
970b0cfcc6
* src/event.c src/caca.c: fixed coding style
19 years ago
Jean-Yves Lamoureux
1715754261
* Added Null driver and html3 exporter.
19 years ago
Jean-Yves Lamoureux
5dc72bc0b1
OpenGL support.
19 years ago
Sam Hocevar
ae6fba6e22
* src/caca.h:
+ Introduced CACA_DITHER_FSTEIN.
* src/caca.c:
+ CACA_DITHER_FSTEIN is the default dithering method.
* src/bitmap.c:
+ Fixed other dithering methods. Black background does not work yet.
20 years ago
Sam Hocevar
ad1399c23b
* configure.ac:
+ Check for curses.h as well as ncurses.h.
* src/caca.c src/event.c src/graphics.c:
+ Include curses.h if ncurses.h was not found.
21 years ago
Sam Hocevar
4dcb3f7442
* src/caca.c:
+ Alloc the AllocConsole() call to fail in case the process already has
a console.
21 years ago
Sam Hocevar
1257f58fbb
* configure.ac:
+ Check for sys/times.h and unistd.h.
+ Added calls to AC_C_CONST and AC_C_INLINE.
* src/time.c src/graphics.c:
+ Fixes for MSVC compilation warnings.
+ Additional sanity checks in the Win32 driver.
* src/caca.c:
+ Use raw()/noraw() in the curses driver instead of cbreak().
* msvc/libcaca.sln:
+ Added an MSVC solution.
* examples/aafire.c:
+ Slightly reduced the maximum cacafire framerate.
21 years ago
Sam Hocevar
85511793bf
* src/caca.c src/graphics.c src/io.c src/time.c:
+ Native win32 port.
21 years ago