Sam Hocevar
a09f027727
Add the copyright unit test and update copyright information everywhere.
преди 15 години
Sam Hocevar
107ff4b815
Large source code cleanup, getting rid of spaces, tabs, and svn keywords.
преди 15 години
Sam Hocevar
7d2a657926
Gather profiling information in caca_refresh_display() and caca_get_event().
преди 15 години
Sam Hocevar
516aa6b6ee
Better caca_get_event_mouse_button() documentation.
преди 15 години
Sam Hocevar
42a5c2bf69
Increased the autorepeat delay in the ncurses and SLang drivers. Now that
we have dirty rectangles, fast autorepeat becomes perfectly usable.
преди 15 години
Sam Hocevar
1fe8a8702a
A lot of documentation updates here and there, including bugfixes dating
back to the libcucul merge.
преди 15 години
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.
преди 16 години
Sam Hocevar
4ea785f818
* Remove all unsigned ints from exported functions. Signed arithmetic is
far better for error checking.
преди 16 години
Sam Hocevar
6a3f5c21f0
* Changed most of the long ints in the API into C99 types. WARNING: this
completely breaks compatibility with previous versions of libcaca on
64-bit systems.
преди 16 години
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.
преди 16 години
Sam Hocevar
367e1ef512
* Fix a tiny use of uninitialised memory in caca_get_event() that may have
lead to deadlocks.
преди 17 години
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().
преди 17 години
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 години
Sam Hocevar
9da4d7b000
* Made the caca_event_t structure opaque and created a whole bunch of
functions to access its real data. This is a big API change that will
break your software, sorry :(
преди 17 години
Sam Hocevar
2149829bdf
* Added as many "const" qualifiers as possible to the public API.
преди 17 години
Jean-Yves Lamoureux
2276a03dae
* Changed threshold in key events, a bit more natural
преди 18 години
Sam Hocevar
9597783308
* Bwarf, typo in the no warranty clause.
преди 18 години
Sam Hocevar
33058757da
* Add a no warranty clause to the code.
преди 18 години
Sam Hocevar
26c3ea1aa4
* Removed "This function..." constructs from documentation. Fixed a few
documentation errors or imprecisions.
преди 18 години
Sam Hocevar
bc5415d6a4
* Fixed libcaca prototypes so that all functions use the errno mechanism
and return a value.
преди 18 години
Sam Hocevar
0c1746c626
* Renamed the event data member "ucs4" to "utf32" for consistency
with "utf8".
преди 18 години
Jean-Yves Lamoureux
6682ce2bd9
* Fixed error in tutorial, updated caca_get_event() doc
преди 18 години
Sam Hocevar
5cb4d4dedf
* Removed duplicate uint*_t defines from *_internal.h and included common.h
in all .c files that needed it.
преди 18 години
Sam Hocevar
6c0e8da858
* Allow the caca_event_t *ev argument for caca_get_event() to be NULL.
преди 18 години
Sam Hocevar
687a2c43f6
* Renamed caca_t into caca_display_t.
* Renamed canvas handle variables from "c" to "cv". Eh ouais mon gros.
преди 18 години
Sam Hocevar
246c5b4d67
* Renamed cucul_t into cucul_canvas_t. Eh ouais mon con.
преди 18 години
Sam Hocevar
17c065a49e
* Replaced "struct cucul_*" and "struct caca_*" types with opaque typedefs
such as cucul_dither_t instead of struct cucul_dither.
* Made cucul_buffer_t an opaque structure and implemented the two getters
cucul_get_buffer_data() and cucul_get_buffer_size().
* Documented all missing functions and function parameters.
преди 18 години
Sam Hocevar
2c5ccb65e6
* Improved documentation in many places.
преди 18 години
Sam Hocevar
018fda76e8
* Removed \file directives from all files except caca.h and cucul.h, to
remove redundencies in the Doxygen documentation.
преди 18 години
Sam Hocevar
87604b8e1d
* Merged caca_wait_event() into caca_get_event() and added a timeout
parameter to do what both functions did before, and even more.
преди 18 години
Sam Hocevar
f149dc3ac4
* Massive rework of the event handling code, as per the TODO list.
преди 18 години
Sam Hocevar
77f995023d
* Slightly changed header comments.
преди 18 години
Sam Hocevar
02ccf6ec3b
* Cosmetic fixes.
преди 19 години
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 години
Sam Hocevar
e44a01f08d
* Cosmetic changes here and there.
преди 19 години
Sam Hocevar
8f286f6432
* Finished moving everything driver-specific to the apropriate driver_*.c
files. Phew. Now they just need a few comments.
преди 19 години
Sam Hocevar
2936525ab7
* Split event.c into the appropriate driver_*.c files.
преди 19 години
Sam Hocevar
41e32c8809
* Got rid of static variables in the event code.
преди 19 години
Sam Hocevar
70d96c811b
* Polished the driver split a bit (still no events, except resize events),
properly credited authors and documented a few things.
преди 19 години
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 години
Sam Hocevar
4f59010b4c
* Moved stuff around to differenciate between libcucul and libcaca.
преди 19 години
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 години
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 години
Sam Hocevar
707f10de81
* Changed the licensing to WTFPL, as per all copyright holders' permission.
преди 19 години
Jean-Yves Lamoureux
895adf52f3
* Fixed bug in events with GL driver
преди 19 години
Jean-Yves Lamoureux
49a53f68bc
* Fixed a bunch of warnings
преди 19 години
Jean-Yves Lamoureux
94bce66cf0
* src/event.c Fixed compilation problem when compiled without slang nor ncurses
преди 19 години
Sam Hocevar
970b0cfcc6
* src/event.c src/caca.c: fixed coding style
преди 19 години
Jean-Yves Lamoureux
7faa9019fd
* OpenGL driver mouse support
преди 19 години
Jean-Yves Lamoureux
1715754261
* Added Null driver and html3 exporter.
преди 19 години