[...]
What is Qt? I think it is a GUI library - anyone have more info? What makes it a good match for Tcl - or at least, of interest (other than academic)?
Latest versions of Tile provides a Qt-based theme
Ralf Fassel - The homepage of Qt is at http://www.trolltech.com
TS - An Intro to Qt 3.0 from Cameron Laird http://linux.oreillynet.com/pub/a/linux/2001/11/16/Qt.html
With Qt 4, the story changes again; Qt 4 distinguishes both GUI and "console" functionality, so that, in fact, Qt 4 now makes a nice convenience library for C++ programmers writing command-line applications. [provide hyperlinks at some point]
LV Hey, if you see a reference to Qt 3.3.8 being released on the trolltech web site, don't be confused like some of us :-( ... that's the last maintenance release on a product line that apparently is going away this year. The latest version of Qt appears to be in the 4.1.x range...
NEM - Qt is the library used by KDE applications isn't it? CL answers: yes and no. KDE itself is constructed with Qt; that's true. It's possible to launch an application made with any X toolkit from KDE, though, so what people think are "KDE applications" might only be X applications.
George Petasis observes that "Under Qt, the programmer can control only a few aspects of how the widget looks. The vast majority of the appearance of the widget is determined by the theme." Also surprising, from a Tk programmer's perspective, is that an image and a label cannot simultaneously decorate a button.
JH notes that George is incorrect above. That is a feature of Tk 8.4, added in May, 2000. People need to really keep up with Tk advances, as it is moving forward just like all the rest.
CJL - I think 'JH' has misinterpreted George's statement. He (George) is saying that a Tk programmer (who is used to being able to mix labels and images) would be surprised that it can't (or couldn't) be done in Qt.
George has prototyped a TkQt at [L1 ]. An alternate URL for the same file is [L2 ]. Also, Ktk worked in a similar direction [true?].
Despite explicit discouragement from jcw, Bill Saunder remarkably used Critcl to script a successful model Qt application with a functional button. That's pure-Tcl (once one assumes Critcl). Impressive! http://groups.google.de/groups?th=b2a1ba41312c9ae5
CL collects more Qt references at http://phaseit.net/claird/comp.windows.misc/Qt.html .
TS - It seems that a Qt binding already exists, but it's not yet available... http://groups.google.de/groups?selm=5e97e053.0305200357.2f4ac182%40posting.google.com
Dmitry Mironov (dmmiet(AT)hotmail.com): > ... regarding control of Qt from Tcl - it took > three or so weeks for me to make a complete Tcl toolkit, > allowing to dynamically build Qt GUI from Tcl console, ... > Cross-platform (visit http://www.dmitrymironov.com/projects.htm) > > I am thinking to make it public domain, because it still has > some garbage in it and, as usual, short of time, need to make a living.-
More from Mr. Mironov appears at http://www.dmitrymironov.com/qt_tcl_under_gpl.htm
http://sourceforge.net/projects/tcl-qt Use [info commands Q*] to list the new ones.
An additional qt binding (relatively recent, November 2005): http://sourceforge.net/projects/qtcl/
Tq [L3 ] is a remarkable-looking commercial product which bridges the Qt and Tk worlds in at least a couple of distinct ways.
Houssem BDIOUI - I made a Qt widget (QTextEdit-based) that emulates a Tcl console => QTclConsole Any one interested can email at : houssem dot bdioui at gmail dot com
It has many features : basically the ones of QTextEdit + redirection of stdout/stderr + colorized result (red, blue) + customization of the prompt + support of any Tcl command (custom ones defined through Tcl_Interp as well) + history + ...
I'm also thinking of providing a whole QTcl package.
Come on! Noone interested?
The whole project is now under: http://sourceforge.net/projects/qconsole
In fact, the console is now reeingeneered to support any scripted language (by inheritance). Tcl is just a specialization.
LV It sounds like it would be useful to have available. However, I'm using a GNOME desktop, and am not in a situation where experimenting with Qt is possible. If my situation changes so that I have more disgression, then I'd be interested in exploring the option.
CAU I own a Zaurus SL-5500, have done for a while. The Z runs a version of Qt under which all applications run. It really would be a boon to write apps with a GUI in Tcl. As it is, Tk is not supported on the Z and I haven't come across a way of using Qt direct from Tcl. Why has this been possible with Python but not with Tcl?
Anyone fancy the challenge?
Houssem BDIOUI - A new QConsole version (v1.1) has been released under http://sourceforge.net/projects/qconsole
It has the following Changes:
- commandsManager class:
* The getInstance() method can take an already created Tcl_Interp parameter * removed the registerCommand() method * New unregisterFunction() * New set of registerVariable() methods to register C++ vars as Tcl ones * Added support for "help messages" for functions and methods (accessible through the new 'help' command)
- QConsole:
* Fixed a bug previously allowing inserting text outside of the edition zone: Bug that can happen when holding the mouse button pressed outside the edition zone and typing something * Possibility to select words outside of the edition zone using double clicks * Overridden paste() removed : handled by the previous bug fix * Disabled the popup menu * New public execCommand(QString) method that executes a Tcl command and dislpays back its result in the console * New saveScript() method that saves succeeded commands to a file * New completeCommand() method that gives suggestions to complete the current command
- QtclConsole:
* Redesigned into a singleton pattern * Implemented completeCommand() based on [ info commands ] * New Tcl saveScript command
- New TclCallBack class that allows registring/unregistring C++ methods as Tcl Callbacks:
* Used for SetPrompt() and ShowHistory() in QtclConsole
Feedbacks are welcome on : houssem dot bdioui at gmail dot com :)
Integrating Qt and Tcl event loops