[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-devel
Subject: Re: Poppler C# bindings
From: Arno Rehn <kde-devel () arnorehn ! de>
Date: 2009-05-15 14:32:54
Message-ID: 200905151632.54811.kde-devel () arnorehn ! de
[Download RAW message or body]
On Thursday 14 May 2009 23:27:24 pebo.mail@gmx.com wrote:
> Hello,
> I'd like to write/generate c# bindings for the poppler library which has a
> qt interface (http://people.freedesktop.org/~aacid/docs/qt4/) I guess the
> smoke language is what I need but can't figure out how it works. How does
> that kalyptus thing relate to smoke?
> Could anybody sketch a plan of steps to follow?
kalyptus is the thing that parses the C++ headers and generates smoke sources
and C# sources from them. Take a look at how e.g. the phonon or qimageblitz
bindings are generated: you have a generate.pl.cmake template that searches
for the absoulte paths of the headers, sets up the command line for kalyptus
and then runs it. One of the arguments of kalyptus is a file called
foo_header_list that contains the names of the headers. After you've
successfully generated the smoke sources, change -fsmoke to -fkimono in
generate.pl and rerun the script. You should now have the matching C# sources.
It could be that you have to adjust kalyptus/kalyptusCxxToKimono.pm to
generate a new namespace for PopplerQt4 and/or to fix some compilation errors.
You then need some glue and initialization code that you can basically copy
from any other Qyoto-dependant C# bindings project like qimageblitz or phonon.
Maybe you'll also have to define new marshallers for QList types. Just look
into the sources of the other bindings projects - adding new ones is really
easy.
This system will be rewritten as part of the Google Summer of Code this year
in order to become a lot easier and to not need so many hacks/special casing.
If you have more questions about bindings, kde-bindings@kde.org is probably a
good place to ask ;).
--
Arno Rehn
arno@arnorehn.de
>> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe <<
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic