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.
+ Renamed caca_set_title() to caca_set_window_title().
+ Implemented caca_get_window_width() and caca_get_window_height().
* examples/cacaview.c:
+ Set the window title to cacaview.
+ Check for sys/times.h and unistd.h.
+ Added calls to AC_C_CONST and AC_C_INLINE.
* src/time.c src/graphics.c:
+ Fixes for MSVC compilation warnings.
+ Additional sanity checks in the Win32 driver.
* src/caca.c:
+ Use raw()/noraw() in the curses driver instead of cbreak().
* msvc/libcaca.sln:
+ Added an MSVC solution.
* examples/aafire.c:
+ Slightly reduced the maximum cacafire framerate.
+ Added caca_wait_event(), a blocking caca_get_event().
* src/ examples/:
+ More documentation.
* doc/doxygen.cfg.in:
+ doc/doxygen.cfg is now generated by configure, so that we can use
@top_srcdir@ and we no longer need to hardcode PROJECT_NUMBER.
+ Create manpages.
+ If Imlib2 is not available, use a custom simple BMP loader.
+ Draw the bottom bar one line higher to leave room for a status line.
+ '?' now properly toggles help.
* examples/Makefile.am:
+ Always build cacaview.
+ Added antialiasing support.
+ Dithering, antialiasing and background mode can now be selected at
runtime.
* src/caca.c src/caca.h:
+ Renamed caca_dithering into caca_feature and extended the type to
express background colour and antialiasing mode.
* examples/demo.c:
+ Fixed a bug that disabled the sprite demo.
+ Draw solid flares.
* examples/view.c:
+ Select antialiasing and background mode at runtime.
+ Internally cache screen width and height.
* src/bitmap.c:
+ Added alpha support to caca_draw_bitmap(). For now, we only treat 0%
alpha as fully transparent, and any other value as fully opaque.
+ Slightly tuned colour weights in the renderer.
+ caca_set_bitmap_palette() takes unsigned ints.
* examples/demo.c:
+ Added a crap render demo.
* examples/aafire.c:
+ Set a 20ms delay.
+ Added alpha values to the palette.
* examples/view.c:
+ Draw a gray checkered grid below the image so that transparent images
look a lot nicer.
+ 'f' toggles "fullscreen" mode.
+ Fixed an endianness issue in the byte reader.
+ Decreased precision in RGB and HSV values to avoid overflows.
+ New dithering method: 2x2 ordered.
+ New renderer, with background colour awareness.
* configure.ac:
+ Check for <endian.h>.
* examples/demo.c examples/view.c:
+ Fixed an endianness issue in cacaview.
+ Adapted code to the additional dithering method.
+ Minor change to the dithering names.
* TODO:
+ Added cacaview TODO.
* doc/cacaview.1:
+ Wrote a manpage for cacaview.
* examples/Makefile.am:
+ Moved the -DX_DISPLAY_MISSING=1 here.
* examples/view.c:
+ Capital 'D' cycles through dithering modes in reverse order.
+ Sleep when there is nothing to do.
+ Cosmetic code reorganisation.
+ Added caca_get_dithering_name().
* src/bitmap.c:
+ Created a new dithering method with an 8x8 ordered matrix.
+ Replaced the char list with a string for better readability.
+ Dithering functions now return a value between 0 and 255.
* examples/demo.c examples/view.c:
+ Adapted to use caca_get_dithering_name().
+ Added top and bottom status lines, like in mutt and slrn.
+ Added a status string when loading an image or upon error.
+ Can load multiple files; use 'n' and 'p' for next and previous.
+ Clip zoom between -48 and +48.
+ Dither chroma outside of rgb2hsv_default().
+ Clip fromx and fromy values.
* NOTES:
+ Link to the XTerm control sequences.
* examples/view.c:
+ Draw status bar.
+ Move with 'h' 'j' 'k' 'l', à la vi.
+ '?' toggles a help menu.
+ Added a check for imlib2-config.
+ Build cacaview conditionally.
* examples/demo.c:
+ Removed all gdkpixbuf code.
* examples/view.c:
+ Default to ordered dithering.
+ Make sure the arrows always work even if delta is too small.
+ Simple image viewer, cacaview, based on libcaca and imlib2.
+ Renamed caca-demo into cacademo.
* doc/:
+ Renamed doc/caca-demo.1 into doc/cacademo.1.