Mason Loring Bliss wrote: >Hey, all. > >I'm looking for some advice. I'm using Perl for a tournament swiss-pairings >program, and I've gotten to where I want to tack on a graphical user >interface. > >My primary reason for using Perl is that it'll run everywhere, and I'd like >for my graphical interface to be easily installed and universal as well. > >I run Debian GNU/Linux and MacOS X Tiger personally, but I also want the >program to run seamlessly and painlessly on Windows. > >Perl/Tk seems like a good choice, but it is intensely painful to get going >on MacOS X, it seems. Instructions specify reinstalling Perl from source, >which requires XCode. I don't want to force non-developers who want to run >a tournament using my software to have to download hundreds of megabytes >of software and then run through a sketchy build process. Aside from this, >Tk would be great, as it's easily used under Unix and Windows. I've already >started using Tk, but the pain Mac users will experience seems like it might >be enough to cause me to scrap this avenue of exploration. > >wxPerl seems like a choice as well, but I don't know how widespread it is. >It seems not to exist in Debian Sarge or NetBSD pkgsrc, for instance. It >comes with the base system in MacOS X... I am still in the process of >figuring out how to get foo.pl to tie itself to /usr/bin/{wxP,p}erl in >MacOS X, though. There's http://www.web42.com/software/perlwrapper/, which >I haven't tried yet, and there are binary installers for Windows. > >Java would do what I want everywhere, especially if I limited myself to, >say, functionality available in Kaffe, but I don't want to use Java for >this! If someone has a suggestion for a single cross-platform GUI toolkit >I can use with Perl that won't require any bleeding on my users' parts, >I'd be grateful. What have you used? What have you liked about it? > >Thanks! > > > Have a look at Perl-Gtk2: http://gtk2-perl.sourceforge.net/
I've been using it for about a year now, and it's a very impressive solution. It looks *far* better than Perl/Tk applications, has a much richer set of widgets, is themeable ( Gtk2 is themeable ) and is quite fast. Another thing going for Gtk2 is it's widget layout, which is *far* superior to other widget toolkits I've used. I especially like Glade, which is excellent for quickly assembling the GUI. Obviously under Linux it works flawlessly. I also have it working without any issues ( theme switcher included ), but it runs about 20-30% slower than under linux. The Perl application runs at the same speed ( I think ), but Gtk2 itself doesn't seem as optimised under Windows - which isn't really surprising. I'm using a Gtk2 installer available at http://members.lycos.co.uk/alexv6/ and it's quite painless to get it working and the Perl-Gtk2 bindings installed ( install with ActiveState's ppm tool ). I've ported a number of our database front-ends to Perl-Gtk2, initially targetting Linux, and since found out that they work perfectly with this setup. Quite impressive. A screenshot of one of the apps is available at: http://entropy.homelinux.org/Gtk2-Ex-DBI/ ... this also the page for my 1st open-source project: Gtk2::Ex::DBI ... scroll down to the bottom for a link ot the screenshot. I'm using a kinda-tacky OS-X theme in this shot, but you get the idea. OS X is a slightly different story. Users need to be running an X server, which some object to, but isn't all that bad. You then need to install Gtk2. I've tried to do this via 'darwin ports', and have not had a great deal of success. However one of the Perl-Gtk2 developers assures me that if you install via 'fink' ( which is the more popular method ), then it works perfectly - he does most of his development on a Powerbook. There is also Perl-QT, but you'll need a commercial license for commercial apps, and I simply don't like QT. -- Daniel Kasak IT Developer NUS Consulting Group Level 5, 77 Pacific Highway North Sydney, NSW, Australia 2060 T: (+61) 2 9922-7676 / F: (+61) 2 9922 7989 email: [EMAIL PROTECTED] website: http://www.nusconsulting.com.au -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] <http://learn.perl.org/> <http://learn.perl.org/first-response>