Qt Creator 1.3: what’s cooking?

Published Monday October 5th, 2009
24 Comments on Qt Creator 1.3: what’s cooking?
Posted in QtCreator, S60, Symbian

So, with Qt SDK 2009.04, there is yet another release out of the door. Now, the first question you may have is: “Why is there no update to Qt Creator in this release?”. The answer is simple: We are working full steam ahead towards Qt Creator 1.3, which will contain lots of nice features.

We could have rushed some of them into an intermediate release, but then again, testing and packaging takes time. So we decided it would be more useful to release an only slightly tested 1.2.90 technology snapshot, look for feedback from all you out there to verify that there are no severe issues and then continue full steam ahead with the integration of stuff we have been working on.

Since then, we enabled the preliminary Symbian support for the Windows version of Creator. The editor has received some love, featuring an improved indenter and smart auto-completion of braces, comments and quotes. Also, we have exposed the renaming of local variables a bit more. To demonstrate these features, we have prepared a video:

Also, parts of the new refactoring engine, which can be described as improvements on top of the current C++ code model library found its way into Qt Creator. While 1.2.90 already allowed for the renaming, more refactoring will be possible.

We are now going into feature freeze, meaning the last features are now being merged into mainline. It also means that if you want to check out the current state, have a look at the daily snapshots and give feedback on the Qt Creator mailing list.

We will keep you updated with more blogs and screen casts on the road to Qt Creator 1.3. Meanwhile, you can browse the Changes file for features that have been implemented so far. Enjoy!

Do you like this? Share it
Share on LinkedInGoogle+Share on FacebookTweet about this on Twitter

Posted in QtCreator, S60, Symbian

24 comments

cool says:

Yahooooo! Braces completition, i’m waiting for it.

William Stokes says:

-Directory structure with .pro and .pri files
-Refactoring C++ code
-Colors schemes

All in the next version? Wow, I think I just may be switching over from XCode when 1.3 is done. I’m trying the latest snapshot now.

divide says:

Qt Creator 1.2.90 rocks, and final 1.3 looks as promising !
The only things I think lacks in Qt Creator while debuggin is
-the ability to put the mouse over any var in the code, to show its value
-the ability to scroll through the different values of an array

Tim says:

Excellent work.

Btw the captcha for this blog sucks! Try recaptcha.

stephenju says:

Nice.

So the 1.2.91 snap shoots are in fact 1.3?

Alexis Medina says:

Nice!

Daniel Molkentin says:

@divide: the mouse over thing already works, but you need to enable it (Options -> Debugger -> Use tooltips in main editor while debugging). Not sure how you envision the scrolling thing, but I don’t think Creator has it.

@stephenju: Yes, that’s what the high numer indicates. Release versions >= x.y.80 are development snapshots, >= x.y.90 are preview or beta releases or snapshots inbetween. they indicate that the next release will increase y by one.

divide says:

@Daniel: ah, thanks for the tip !
Concerning arrays debugging, it could be something like Visual Studio:
http://www.virtualdub.org/blog/images/debuggervector.png
http://through-the-interface.typepad.com/photos/uncategorized/watch_window_1b_1.png

matthias says:

I’m happy with the brace/quote autocompletion. I’m so used to it from using IntelliJ at work that I really miss it in any other IDE.

stephenju says:

Any chance to add macdeployqt as a build step in Mac version?

panzi says:

Does 1.3 support the following?
* highlight occurrences of the variable under the cursor (mouse cursor or text cursor). and I mean the *variable*, not the string.
* class browser(s): tree of namspace -> class -> nested class/type for whole project and for the currently open file (I prefer to have one of these two trees at the left, and the other at the right of the code. I have a widescreen monitor)
* class hierarchy browser (super- to subtype) and maybe reversed class hierarchy browser (sub- to supertype)
* smarter auto indention and auto reformatting/indention of pasted code
* find usages of class/method/…
* search (and replace) on multiple files (all of the project/a selected subset). in the search-only case a list of occurrences shall be displayed in a window like the compiler error window
* auto completion that makes sense: a drop down menu for overloadings like every other editor I know has. this should include:
* inline help (big tooltip) that can be clicked/resized (see eclipse)
* refactoring:
– make toplevel class/type out of nested class/type
– move class/type from one namespace to another (plust hte setting: reflect namespaces in filesystem similar to Java packages)
– rename class/method/variable/…
* all operations that make changes (search & replace, refactorings) shall be able to display a preview of the changes including a nice diff view that compares with the current state

I know this is a LOT. But these are things that are supported by IDEs like Eclipse/NetBeans. I use these features constantly when I write Java code. KDevelop implements quite a bit of them, but not all and not perfect (however, it’s a LOT more complete than QtCreator concerning this, so I use KDevelop). I know implementing this for C++ is MUCH harder as for Java, because of the insane syntax (totally ambiguous recursive templates (the parser sometimes needs semantic context to apply the right grammar rules) and (shudder) macros).

nicodev says:

Please tell me that all these goodies will be available to non-admin users on Windows!!!
The first Qt Creator versions did not require admin privileges, but I could not install the last one at work 🙁 I am sure being able to install as non-admin is extremely important for a non-mainstream tool (i.e. unkown to Microsoft-formatted legacy IT staff) to break through.

kpartz says:

The only thing missing for me is the ability to build packages with installer and auto update from the web. In visual.net I can click a simple button in the menu and it will create an installer for my app and if I want I can give a url that will be checked for updates such as http://example.com/myapp.exe. It would be good to have such a solution with Qt as distributing executable with installers and auto update on all platforms can be tedious, I actually couldn’t find a solution that would work in both mac, windows and linux.

André says:

@divide, @panzi: have you considered to just try it out to find answers to your questions? [Yes, it has tooltips, yes, it displays vectors, and arrays, and maps, and objects, and connections, and … no, the debugger does not make coffee, and no, making coffee is not on the todo list anymore since I dropped the habit a few months ago ;-)]

Also, for “wishes” like “auto completion that makes sense: a drop down menu for overloadings like every other editor I know has” it would incredibly help if you pointed out in which way the existing auto completion does not meet your needs.

alimbourg says:

Excellent stuff ! Bravo ! The more it goes, the more i like it: you’re really doing a lot of good to the open source by allowing us to code so comfortably without using any MS product…
(But may i suggest a little *more* color syntaxing in source view to ravish our coding days ?)

Haso Keric says:

Please include Creation of Folders in the Treebar (where all files are listed) and drag and drop
Like visual studio has

Headers
Source
Resources

and you can create more

panzi says:

@André: Yeah, I guess I should try it. It’s just that I tend to avoid non-final releases because of bad experience. (Ecxept for amarok, because I really want the features of the git version.)

Anyway, I illustrated the features I like most about Eclipse. Most of them are not supported by Qt Creator yet. Which is totally understandable, because Eclipse is much older, has a lot of developers (at least through plugin developers) and Java is a lot more easy to parse. Just my 2 cents about the features I need most. See:
https://web.student.tuwien.ac.at/~e0427417/what_i_like_about_eclipse/

Zeke Connor says:

It would be nice is auto completion had more than just 1 item like in KDevelop4.
It would also be nice if Qt-Creator didn’t force the ugly verbose makefiles for CMake.

divide says:

André: no, I can’t get Qt Creator 1.2.90 to display arrays as Visual Studio do while debugging. I can see the memory content at some address, but I canno’t display the content list of a float* array, for instance. Can you ? How ?

przemoc says:

Renaming was long awaited feature, but we are waiting for more refactoring solutions. Of course we feast our eyes on all those (even small) improvements. Introducing color schemes is also nice thing – I have updated my Dark theme: http://wiki.przemoc.net/tips/qtcreator#dark_theme

Just for the record, visual whitespace color shouldn’t be overridden by others (disabled code, preprocessor, comments, etc.), some foreground colors (like selection) could allow being unspecified and there must be an option for auto-expanding newly created/opened project’s tree view and button/icon(s) for quick, massive expand/collapse operations.

Andre' says:

@divide: A float* is a pointer, not an array. At best it could be interpreted as a pointer to the first item of an array. You can display an array using such a pointer and a size using the “watchers” part of the “Locals & Watchers View” by “casting” it to an array type: http://img96.imageshack.us/img96/5213/84552364.png

Junxuan says:

It doesnt seem to autocomplete the curly braces and the typing cursor(the thin line), seems to be extra thick in QtCreator.

divide says:

Andre: thanks !

Thorbjørn Lindeijer says:

@Junxuan: The curly braces are only matched when you press enter after them, and a closing brace is missing. In general we can’t automatically match curly braces since you can’t be sure enough whether that’s what the user wants. Other IDEs like Eclipse and IntelliJ don’t do it either as far as I know.

The cursor is indeed thicker. Maybe we should change that, but somebody must have liked it that way. It dates back to long before Qt Creator 1.0.

Commenting closed.

Get started today with Qt Download now