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.
18 роки тому
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 роки тому
Jean-Yves Lamoureux
5dc72bc0b1
OpenGL support.
19 роки тому
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 роки тому