alxf
20f3a39e01
Fix header copyright.
8 vuotta sitten
alxf
c1ee309d79
Fix a bug into the autorepeat trigger.
- Only affect slang/ncurses.
8 vuotta sitten
Sam Hocevar
f32c24a10d
build: fix the WTFPL homepage and copyright information.
12 vuotta sitten
Sam Hocevar
a09f027727
Add the copyright unit test and update copyright information everywhere.
15 vuotta sitten
Sam Hocevar
107ff4b815
Large source code cleanup, getting rid of spaces, tabs, and svn keywords.
15 vuotta sitten
Sam Hocevar
7d2a657926
Gather profiling information in caca_refresh_display() and caca_get_event().
15 vuotta sitten
Sam Hocevar
516aa6b6ee
Better caca_get_event_mouse_button() documentation.
15 vuotta sitten
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 vuotta sitten
Sam Hocevar
1fe8a8702a
A lot of documentation updates here and there, including bugfixes dating
back to the libcucul merge.
15 vuotta sitten
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 vuotta sitten
Sam Hocevar
4ea785f818
* Remove all unsigned ints from exported functions. Signed arithmetic is
far better for error checking.
16 vuotta sitten
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 vuotta sitten
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 vuotta sitten
Sam Hocevar
367e1ef512
* Fix a tiny use of uninitialised memory in caca_get_event() that may have
lead to deadlocks.
17 vuotta sitten
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 vuotta sitten
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 vuotta sitten
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 vuotta sitten
Sam Hocevar
2149829bdf
* Added as many "const" qualifiers as possible to the public API.
17 vuotta sitten
Jean-Yves Lamoureux
2276a03dae
* Changed threshold in key events, a bit more natural
18 vuotta sitten
Sam Hocevar
9597783308
* Bwarf, typo in the no warranty clause.
18 vuotta sitten
Sam Hocevar
33058757da
* Add a no warranty clause to the code.
18 vuotta sitten
Sam Hocevar
26c3ea1aa4
* Removed "This function..." constructs from documentation. Fixed a few
documentation errors or imprecisions.
18 vuotta sitten
Sam Hocevar
bc5415d6a4
* Fixed libcaca prototypes so that all functions use the errno mechanism
and return a value.
18 vuotta sitten
Sam Hocevar
0c1746c626
* Renamed the event data member "ucs4" to "utf32" for consistency
with "utf8".
18 vuotta sitten
Jean-Yves Lamoureux
6682ce2bd9
* Fixed error in tutorial, updated caca_get_event() doc
18 vuotta sitten
Sam Hocevar
5cb4d4dedf
* Removed duplicate uint*_t defines from *_internal.h and included common.h
in all .c files that needed it.
18 vuotta sitten
Sam Hocevar
6c0e8da858
* Allow the caca_event_t *ev argument for caca_get_event() to be NULL.
18 vuotta sitten
Sam Hocevar
687a2c43f6
* Renamed caca_t into caca_display_t.
* Renamed canvas handle variables from "c" to "cv". Eh ouais mon gros.
18 vuotta sitten
Sam Hocevar
246c5b4d67
* Renamed cucul_t into cucul_canvas_t. Eh ouais mon con.
18 vuotta sitten
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 vuotta sitten
Sam Hocevar
2c5ccb65e6
* Improved documentation in many places.
18 vuotta sitten
Sam Hocevar
018fda76e8
* Removed \file directives from all files except caca.h and cucul.h, to
remove redundencies in the Doxygen documentation.
18 vuotta sitten
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 vuotta sitten
Sam Hocevar
f149dc3ac4
* Massive rework of the event handling code, as per the TODO list.
18 vuotta sitten
Sam Hocevar
77f995023d
* Slightly changed header comments.
18 vuotta sitten
Sam Hocevar
02ccf6ec3b
* Cosmetic fixes.
18 vuotta sitten
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 vuotta sitten
Sam Hocevar
e44a01f08d
* Cosmetic changes here and there.
19 vuotta sitten
Sam Hocevar
8f286f6432
* Finished moving everything driver-specific to the apropriate driver_*.c
files. Phew. Now they just need a few comments.
19 vuotta sitten
Sam Hocevar
2936525ab7
* Split event.c into the appropriate driver_*.c files.
19 vuotta sitten
Sam Hocevar
41e32c8809
* Got rid of static variables in the event code.
19 vuotta sitten
Sam Hocevar
70d96c811b
* Polished the driver split a bit (still no events, except resize events),
properly credited authors and documented a few things.
19 vuotta sitten
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 vuotta sitten
Sam Hocevar
4f59010b4c
* Moved stuff around to differenciate between libcucul and libcaca.
19 vuotta sitten
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 vuotta sitten
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 vuotta sitten
Sam Hocevar
707f10de81
* Changed the licensing to WTFPL, as per all copyright holders' permission.
19 vuotta sitten
Jean-Yves Lamoureux
895adf52f3
* Fixed bug in events with GL driver
19 vuotta sitten
Jean-Yves Lamoureux
49a53f68bc
* Fixed a bunch of warnings
19 vuotta sitten
Jean-Yves Lamoureux
94bce66cf0
* src/event.c Fixed compilation problem when compiled without slang nor ncurses
19 vuotta sitten