2 TODO - list of things to do for libpng:
5 Better C++ wrapper/full C++ implementation?
6 Fix problem with C++ and EXTERN "C".
8 Remove setjmp/longjmp usage in favor of returning error codes. As a start on
9 this, minimize the use of png_error(), replacing them with
10 png_warning(); return(0); or similar.
12 Add "grayscale->palette" transformation and "palette->grayscale" detection.
14 Multi-lingual error and warning message support.
15 Complete sRGB transformation (presently it simply uses gamma=0.45455).
16 Man pages for function calls.
18 Better filter selection
19 (counting huffman bits/precompression? filter inertia? filter costs?).
21 Text conversion between different code pages (Latin-1 -> Mac and DOS).
22 Avoid building gamma tables whenever possible.
23 Use greater precision when changing to linear gamma for compositing against
24 background and doing rgb-to-gray transformation.
25 Investigate pre-incremented loop counters and other loop constructions.
26 Add interpolated method of handling interlacing.
27 Extend pngvalid.c to validate more of the libpng transformations.
28 Refactor preprocessor conditionals to compile entire statements