Cairo Deimos bindings
James Miller
james at aatch.net
Thu Apr 26 15:32:01 PDT 2012
On Thursday, 26 April 2012 at 18:20:01 UTC, David Nadlinger wrote:
> On Thursday, 26 April 2012 at 18:15:49 UTC, Andrej Mitrovic
> wrote:
>> Is there really a need to write it manually? All I had to do
>> to use
>> the C library directly is call HTOD on the headers. Otherwise
>> I use
>> CairoD.
>
> I'd say that usable htod generated headers still are a welcome
> addition to Deimos.
>
> David
On top of that htod doesn't work on linux AFAIK. Also there are
alot of header files missing from that, probably due to people
not realising that not all installations install all the headers.
I have the headers for the following surfaces: beos, cogl,
directfb, drm, gl, os2, pdf, ps, qt, quartz, quartz-image,
script, skia, svg, tee, vg, wind32, xcb, xlib and xml. There are
also the extra headers like the core cairo, gobject support,
hardware-specific definitions and so on.
I am also slightly altering some of the code (in a
well-documented manner) to reflect the difference between the
usage of similar constructs in C. So, un-namespacing enums
because you access the values as TypeName.Member, rather than
just Member, as in C. Also replacing ifdef blocks with
conditional compilation so I can replicate, in D, similar error
messages to the C headers. There is alot that is difficult to do
with automated tools, and it would be nice if this was properly
complete, I plan on actually writing a proper install for this so
your installed D bindings reflect the available C functions.
--
James Miller
More information about the Digitalmars-d
mailing list