Could Tk be D's ideal widget set?

Josh Stern josh_usenet at phadd.net
Mon Oct 9 15:01:44 PDT 2006


On Mon, 09 Oct 2006 23:32:01 +0200, Anders F Björklund wrote:

> Josh Stern wrote:
> 
>> Porting either PyQt (including its semi-automatic generation from
>> Qt headers using he using gcc-xml) or QtJava (including its semi-automatic
>> generation using a Perl hack called Kalyptus) from either Python or Java
>> to D seems like a particularly sensible approach to me.   Object
>> orientation is definitely a good idea for widget sets and Qt itself is
>> object-oriented, full featured, cross platform, and well documented.
> 
> Besides being a somewhat hefty target to port (due to the sheer size),
> I think the biggest objection to the Qt libraries was the GPL license.
> (I know that it is dual-licensed, and that there is a Commercial Ed. -
> but the licensing fees for that is quite huge for any hobby developer)
> 
> But if you want to port Qt over to D, then by all means go for it! :-)

Porting Qt itself is both too much work and undesirable (because it would
be a fork).  What I discussed a few posts back was porting the PyQt or
QtJava bindings for Qt (which link with the regular Qt libraries).   These
are both a) much, much smaller, and b) 90-95% auto-generated from Qt
headers, so a lot of the work would be just modifying the generator
programs and then adding support code - they are both designed to be
readily updated to future Qt release.  The biggest hurdle
I can see would be figuring out the best naming and documentation
convention for dealing with the situations where Qt makes use of more
member function overloading than what D allows.  

The Qt commercial licensing fee is only relevant if one needs to
distribute a closed source app outside of your organization.  Offhand I
can't think who it is really a problem for other than impoverished
shareware writers.  At the point at which most proprietary applications
are reading to be distributed, the tradeoff of a developer license fee for
professional support is a good one.







More information about the Digitalmars-d mailing list