Sam Hocevar
16c3765dd7
configure.ac: use more modern autoconf syntax.
il y a 16 ans
Sam Hocevar
319cc69db3
Continue the libcaca/libcucul merge. Source and binary compatibility
are almost there.
il y a 16 ans
Sam Hocevar
f61816ceb7
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.
il y a 16 ans
Sam Hocevar
850fc14032
* Fix plugin build.
il y a 16 ans
Sam Hocevar
621f107c72
* Documentation fixes (due to renamings, some parameters were no longer
documented).
il y a 16 ans
Sam Hocevar
99b5396e8e
* Remove #include <stdint.h> etc. from "common.h". Instead, make sure that
<cucul.h> will provide the C99 types, even if libcaca has been installed.
* Rename what's left of "common.h" to "stubs.h".
* Remove all references to erroneous <inttypes.h> from source files.
il y a 16 ans
Sam Hocevar
b7a785ff38
* Implemented caca_set_display_driver() to change driver at runtime.
il y a 17 ans
Sam Hocevar
e15e962928
* Implement caca_create_display_with_driver() to specify an output driver
without using environment variables..
* Implement caca_get_display_driver() to return the current display's
output driver.
* Add a simple example program to test caca_create_display_with_driver().
il y a 17 ans
Sam Hocevar
283e1ef70b
* Remove cruft from caca_get_display_driver_list().
il y a 17 ans
Sam Hocevar
5b2b3e27db
* Implemented caca_get_display_driver_list(), unused yet.
il y a 17 ans
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".
il y a 17 ans
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.
il y a 17 ans
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.
il y a 17 ans
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.
il y a 17 ans
Sam Hocevar
9597783308
* Bwarf, typo in the no warranty clause.
il y a 18 ans
Sam Hocevar
33058757da
* Add a no warranty clause to the code.
il y a 18 ans
Sam Hocevar
afed497172
* Added all the glue needed for a Cocoa output driver.
il y a 18 ans
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.
il y a 18 ans
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.
il y a 18 ans
Sam Hocevar
383fb90110
* Do not build the raw output in kernel mode.
* Fix cucul_utf32_to_cp437() call in the VGA output.
il y a 18 ans
Sam Hocevar
bc5415d6a4
* Fixed libcaca prototypes so that all functions use the errno mechanism
and return a value.
il y a 18 ans
Sam Hocevar
ec3b082509
* Fixed UTF-8 support in ncurses.
* Set ncurses's priority higher than slang.
il y a 18 ans
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.
il y a 18 ans
Sam Hocevar
5cb4d4dedf
* Removed duplicate uint*_t defines from *_internal.h and included common.h
in all .c files that needed it.
il y a 18 ans
Sam Hocevar
1ec6544305
* More function mass-renaming: caca_attach -> caca_create_display, etc.
il y a 18 ans
Sam Hocevar
687a2c43f6
* Renamed caca_t into caca_display_t.
* Renamed canvas handle variables from "c" to "cv". Eh ouais mon gros.
il y a 18 ans
Sam Hocevar
246c5b4d67
* Renamed cucul_t into cucul_canvas_t. Eh ouais mon con.
il y a 18 ans
Sam Hocevar
2c5ccb65e6
* Improved documentation in many places.
il y a 18 ans
Sam Hocevar
018fda76e8
* Removed \file directives from all files except caca.h and cucul.h, to
remove redundencies in the Doxygen documentation.
il y a 18 ans
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).
il y a 18 ans
Sam Hocevar
a6848be41e
* Created a minimal raw driver that outputs stuff to stdout.
il y a 18 ans
Sam Hocevar
70cb2ab916
* Allow the driver initialisation to fail, for instance when $DISPLAY = "".
il y a 18 ans
Sam Hocevar
f149dc3ac4
* Massive rework of the event handling code, as per the TODO list.
il y a 18 ans
Sam Hocevar
77f995023d
* Slightly changed header comments.
il y a 18 ans
Sam Hocevar
0c9103f95a
* Cosmetic.
il y a 18 ans
Sam Hocevar
5c9868e79a
* Ooops, fixed an old typo.
il y a 18 ans
Sam Hocevar
0889bf4799
* Fixed an uninitialised variable in the event queue handling.
il y a 18 ans
Jean-Yves Lamoureux
d47bd8b490
* Added CACA_NETWORK_PORT env and related documentation
il y a 19 ans
Sam Hocevar
37d1bec329
* Pure VGA output driver.
il y a 19 ans
Jean-Yves Lamoureux
fd331c1504
* Added very preliminary network driver
il y a 19 ans
Sam Hocevar
da30961a0e
* Fixed async issues between the driver and libcaca when resizing windows,
and simplified the handle_resize() API. Still can be polished.
il y a 19 ans
Sam Hocevar
e44a01f08d
* Cosmetic changes here and there.
il y a 19 ans
Sam Hocevar
8f286f6432
* Finished moving everything driver-specific to the apropriate driver_*.c
files. Phew. Now they just need a few comments.
il y a 19 ans
Sam Hocevar
41e32c8809
* Got rid of static variables in the event code.
il y a 19 ans
Sam Hocevar
70d96c811b
* Polished the driver split a bit (still no events, except resize events),
properly credited authors and documented a few things.
il y a 19 ans
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.
il y a 19 ans
Sam Hocevar
4f59010b4c
* Moved stuff around to differenciate between libcucul and libcaca.
il y a 19 ans
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.
il y a 19 ans
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.
il y a 19 ans
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.
il y a 19 ans