Home > Qt > Introduction to Qt 4 Beta 1Introduction to Qt 4 Beta 1 Submitted by Johan Thelin 2005-01-04 Qt 17 CommentsThe author of the Independent Qt Tutorial has published an example-driven article about Qt 4 beta 1. The text touches the new Designer and some of the code-level changes that will affect application developers. About The Author David AdamsFollow me on Twitter @david_adams 17 Comments 2005-01-05 12:24 am Trolltech is really moving now. 2005-01-05 5:42 am Why did they get rid of the MDI in designer? I hate all of those free floating windows! They look cluttered unless that’s the only think in your workspace, forcing you to use more virtual desktops! Docked tools in a consistent & predictable location are a good thing! 2005-01-05 6:42 am I have to say, I hate MDI. It works on Windows because the child windows look like Windoze child windows. Having Windoze-style child windows inside a KDE window looks wierd. Also, Qt3’s MDI doesn’t work well on my Mac. With this, you can make your widget overlap with the Qt Designer windows.I like the Ctrl-drag way of setting up sig-slot connections – rather like Apple Interface Builder, that, isn’t it? 2005-01-05 7:56 am As the author said, in Qt Designer case, that is probably because they intent it to be integrated on better IDEs.As far as MDI, well, we still can use it (“http://doc.trolltech.com/4.0/q3workspace.html#details“), but looks like they are phasing it out. Probably we will need a bit more recode to use something similar. This can be a good opportunity to remake the behaviour of child windows, allowing more flexibility (putting it inside or outside the main window and setting it’s properties based on that and using a kind of “grouping”). I by myself, feel a bit annoyed when I can’t set properly the position of some toolbox. 2005-01-05 9:50 am And what do you do with databound apps that have dozens of different databound forms ? SDI ? 2005-01-05 12:43 pm Simply use MDI – it is still there, just not recommended anymore. For example, MDI is not very well suited for multiple screen setups. 2005-01-05 2:18 pm What’s a modern approach for multiple databound forms – beneath MDI ? 2005-01-05 2:31 pm …perhaps a main windows with tabs for document views?“tabbing” looks “trendy” these days… 2005-01-05 2:36 pm Tabs ? And what if you want to compare the values of two forms side-by-side without all the docking trouble ?Most users can’t get along with complex docking GUIs, thats my expirience … they accept MDI a lot more … 2005-01-05 2:39 pm For while, use that MDI they are phasing out.I’m still investigating, but I hope the will provide some kind of “fit in Parent window bound” flag or a way to group windows in a more tied way (not just by signals or parent-child normal relationship).Anyway, it’s annoying when we can’t detach a child window from the area of the parent one. 2005-01-05 4:49 pm “What’s a modern approach for multiple databound forms – beneath MDI ?”How about only showing one item in your task bar, and raising all the other associated Windows along with the current window? Ever tried Delphi apps? 2005-01-05 4:52 pm Interestingly, the Delphi IDE used the floating window approach. While in Delphi 2005 you still have the option to use multiple windows, the default is more – hmm – integrated now.It’s a good idea to let the user decide how to organize the layout of the application on his (multiple) desktop environment. But – _don’t_ disintegrate applications, allow users to fuse the components as he prefers instead. I for one favor the Eclipse approach, having perspectives I can switch between. 2005-01-05 5:54 pm I wish they’d improve the QTDesigner, it still quite inferior to Delphi’s IDE for example. We’ve been switching part of our GUI work to QT for cross platform-ness. Wish Delphi would work properly with Mac and Linux, maybe the .NET approach will solve this. 2005-01-05 8:08 pm This meta-object compiler and non-standard string classes are to be respected, for providing sound functionality ahead of a C++ standard and things like boost.orgNevertheless, I just wasted time surfing another vast code library, trying to find a way to coax a few characters out of a database record object and into a std::string, and this renewed my disdain for non-standard libraries. 2005-01-06 8:12 am Nevertheless, I just wasted time surfing another vast code library, trying to find a way to coax a few characters out of a database record object and into a std::string, and this renewed my disdain for non-standard libraries.QString and std::string talks nicely. I cannot imagine what your problem was. 2005-01-06 6:10 pm > into a std::string, and this renewed my disdain for non-standard libraries.Since std::string doesn’t support Unicode, is unusable for user-visible strings. 2005-01-06 7:42 pm Since std::string doesn’t support Unicode, is unusable for user-visible strings.Isn’t is just a matter which type you pass to the std::string template?Can’t std::string<wchar_t> handle UTF-16 Characters?