[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