Sam Hocevar
|
48ecccd284
|
Make the libcaca color values an enum again.
|
pirms 15 gadiem |
Sam Hocevar
|
e3faf62787
|
Since caca.h now exports variables, we need __declspec(dllimport), otherwise
they won't be seen by the linker when linking dynamically. Fix caca0.h
accordingly.
|
pirms 15 gadiem |
Sam Hocevar
|
f145782381
|
Move conio functions to the main caca.h header, with their caca_conio_
prefix. The #defines remain in caca_conio.h.
|
pirms 15 gadiem |
Sam Hocevar
|
3efac2753f
|
Make conio_refresh() play nicer with the resources when the machine is slow.
|
pirms 15 gadiem |
Sam Hocevar
|
d09cd5c3b1
|
Fix <conio.h> delay(), getch() and kbhit() to avoid busy loops and ensure
frequent screen refreshes.
Implement <conio.h> clreol() (incomplete) and <dos.h> sleep() functions.
Replace some defines with enums in <caca_conio.h>.
|
pirms 15 gadiem |
Sam Hocevar
|
9ee841240f
|
Implement conio.h's getche() and move cursor to top right corner after
a call to clrscr().
|
pirms 15 gadiem |
Sam Hocevar
|
823b59a7fa
|
Make caca_printf(), caca_vprintf() and caca_put_str() return the number of
printed cells instead of always returning 0. This is handy if we want to
advance a cursor after each printf() call.
|
pirms 15 gadiem |
Sam Hocevar
|
962f47b906
|
Implement conio.h's kbhit().
|
pirms 15 gadiem |
Sam Hocevar
|
ea8d3086d6
|
Add sound(), nosound() and delay() to the conio.h emulation. Even though
they're not actually from that header, they're often used together.
|
pirms 15 gadiem |
Pascal Terjan
|
52a0decd07
|
* Fix a segfault in rotate_180 on 0 sized canvas
|
pirms 15 gadiem |
Sam Hocevar
|
104c5a0c5b
|
Start implementing a full <conio.h> replacement with a libcaca backend.
|
pirms 15 gadiem |
Sam Hocevar
|
1f5518f842
|
Rename caca_get_cursor_x() and caca_get_cursor_y() to caca_wherex() and
caca_wherey(), in order to match the old <conio.h> naming scheme.
|
pirms 15 gadiem |
Sam Hocevar
|
4648ab11aa
|
Implement caca_vprintf() to allow third-party variadic functions to call us.
|
pirms 15 gadiem |
Sam Hocevar
|
60b44cc5be
|
Show how we could optimise dirty rectangle handling in a box fill. Disabled
for now because it does not work with fullwidth characters.
|
pirms 15 gadiem |
Sam Hocevar
|
f5598e7b4f
|
I forgot to initialise dirty_disabled in the canvas constructor.
|
pirms 15 gadiem |
Sam Hocevar
|
5269cad56c
|
Allow to temporarily disable dirty rectangle handling. This allows for huge
speedups when the calling application knows the dirty rectangle covered by
a complex operation.
|
pirms 15 gadiem |
Sam Hocevar
|
644ee4a78a
|
Coding style: remove tabs and trailing spaces.
|
pirms 15 gadiem |
Sam Hocevar
|
4f7081153e
|
Do not add a dirty rectangle at the cursor's position. It's up to the
display driver to clean up its shit. Fixed X11 driver accordingly.
|
pirms 15 gadiem |
Sam Hocevar
|
69d8bbeb08
|
More complex dirty rectangle merging strategy. It's a lot slower in some
cases, but that can be fixed.
|
pirms 15 gadiem |
Sam Hocevar
|
ed360faabe
|
Add a comment to the ncurses driver to remember fix the GCC warning.
|
pirms 15 gadiem |
Sam Hocevar
|
33d2bc2092
|
Update the Win32 and Win64 ports.
|
pirms 15 gadiem |
Pascal Terjan
|
bd1c1cdda6
|
* Inform code reader that current algorithm is wrong
|
pirms 15 gadiem |
Sam Hocevar
|
b0a88ddd01
|
Do not smooth the render time; the calling application can do it.
|
pirms 15 gadiem |
Sam Hocevar
|
6b22ab776c
|
Add a null driver that does absolutely nothing.
|
pirms 15 gadiem |
Sam Hocevar
|
1d60711ac4
|
Mark the whole canvas as dirty when a dirty rectangle aware driver is
attached to it.
|
pirms 15 gadiem |
Sam Hocevar
|
10719139e6
|
Store dirty rectangles in a structure list. For now there is still only
one dirty rectangle, but this is the first step to improvement.
|
pirms 15 gadiem |
Pascal Terjan
|
4bd79baf96
|
* Add dirty rectangles when moving cursor
|
pirms 15 gadiem |
Pascal Terjan
|
1f79729288
|
* When blitting, only add dirty rectangles on changed
lines, or on changed chars if we have a mask
|
pirms 15 gadiem |
Sam Hocevar
|
99a266a83b
|
Fix caca_get_char() documentation, courtesy of Romain Bignon.
|
pirms 15 gadiem |
Pascal Terjan
|
3e1a1d2679
|
* Add rotated epsilon
|
pirms 15 gadiem |
Pascal Terjan
|
de5be87d0e
|
Don't redraw background for more than the dirty rectangle in x11 driver, we will not redraw foreground there
|
pirms 15 gadiem |
Sam Hocevar
|
162613b630
|
caca_put_char(): only add a dirty rectangle if the paster character is
different from what was already there.
|
pirms 15 gadiem |
Pascal Terjan
|
ac9b1074b4
|
Fix limits settings in area export
|
pirms 15 gadiem |
Sam Hocevar
|
d3ef2bbecd
|
Add caca_export_area_to_memory() to export only a selected part of the
current canvas. This is useful to export dirty rectangles. Accordingly,
add caca_import_area_from_memory() and caca_import_area_from_file().
|
pirms 15 gadiem |
Sam Hocevar
|
ea99175a2f
|
Change the dirty rectangle API once again so that calling applications get
a more natural (x,y,w,h) 4-tuple to handle.
|
pirms 15 gadiem |
Sam Hocevar
|
11428406c1
|
Split import.c and export.c to create a new text.c codec file in order
to keep source files under 1,000 lines of code.
|
pirms 15 gadiem |
Pascal Terjan
|
d1db2df568
|
Revert r3478
|
pirms 16 gadiem |
Sam Hocevar
|
95811ced2d
|
Manually fix Visual Studio files so that builds do not spew
their crap all over the place. There is still caca-sharp/obj
that it insists on creating (reported as Connect ID 301965).
|
pirms 16 gadiem |
Sam Hocevar
|
0c7fd89e3a
|
Add dirty rectangle support to the ncurses and VGA drivers.
|
pirms 16 gadiem |
Sam Hocevar
|
42a5c2bf69
|
Increased the autorepeat delay in the ncurses and SLang drivers. Now that
we have dirty rectangles, fast autorepeat becomes perfectly usable.
|
pirms 16 gadiem |
Sam Hocevar
|
3338776b44
|
Fix a few DOS compilation warnings.
|
pirms 16 gadiem |
Sam Hocevar
|
222e165d21
|
Fix dirty rectangle handling in the X11 and SLang drivers.
|
pirms 16 gadiem |
Pascal Terjan
|
33f2264bcd
|
Import/export dirty rectangles
|
pirms 16 gadiem |
Sam Hocevar
|
1fe8a8702a
|
A lot of documentation updates here and there, including bugfixes dating
back to the libcucul merge.
|
pirms 16 gadiem |
Sam Hocevar
|
dd48fb62b3
|
Optimise the dirty rectangle handling by keeping track of the number of
currently dirty rectangles.
|
pirms 16 gadiem |
Sam Hocevar
|
a6b98c2518
|
Change the dirty rectangle API so that it can handle several rectangles. The
inner implementation still only handles one dirty rectangle, but this way
we can prepare supporting applictions for the future.
|
pirms 16 gadiem |
Pascal Terjan
|
ee3018643d
|
Only redraw empty rectangles in slang driver
|
pirms 16 gadiem |
Pascal Terjan
|
27fffbb33c
|
Fix empty dirty rectangles detection
|
pirms 16 gadiem |
Pascal Terjan
|
44f5d172f0
|
* Only redraw dirty rectangle in x11 driver
|
pirms 16 gadiem |
Sam Hocevar
|
1fe07f325e
|
Fixed libcaca and the Visual Studio solution so that it works
on Win64, including the .NET projects.
|
pirms 16 gadiem |