Dialogs on the Canvas

Published Wednesday June 6th, 2007
9 Comments on Dialogs on the Canvas
Posted in Graphics View, KDE, Labs, Qt

With 4.3.0 released, it’s finally time to get back to maintenance and research again. It’s been both an exciting and exhausting release, and mostly we’re all very happy with the way things have gone. There’s certainly something special about features you spent so much time working on, popping up as topics in forums here and there, and seeing diverse screenshots in magazines showing off how someone made perfect use of something that you busted your pyjamas implementing. But, nothing beats laying out plans for what to do next.

So what happens next? I’ve got two major projects planned for making life easier for all you canvas-lovers out there. The initial research is starting to bear fruit, and all I can say is that 4.4 will (also!) have a lot of good stuff in it. And Graphics View is just a part of it, but it will certainly be a spectacular part of it.


The screenshot seems to be showing QMdiArea with several QMdiSubWindows, with a texture background. But it’s not. It’s actually Graphics View, and this particular demo is running 250 dialogs with 5 buttons in a gridlayout. This is Widgets On The Canvas, one large enhancement we’ll be doing to Graphics View. We’re planning on implementing support for several widgets, but initially we’ll spend most of the time available making sure that the corner stones, the widget and layout classes, reach rock solid Qt 4 quality. You know, the kind that makes you go mmmmmmmmm.

The sweetest thing about these widgets are that they seem to run faster than regular widgets; at least when there’s no transformation. They’re perfectly stylable (the scene provides the font, palette, style, etc, defaulting to QApplication’s defaults); it even works well and fast, and looks good, on Windows XP.


It’s fast. On Windows XP, running fullscreen with full colors on a 1600×1200 display, it’s just as fast to scroll this thing as the chip demo. If you scale or rotate it, it becomes really slow. But that just shows that we’re on thef right track (I mean – if it was all blindingly fast, you just know something must be very wrong, right?).

As much as I’d love to provide the source code, it’s in a miserable state right now (since we’re basically throwing around ideas and prototyping, the source code looks like crap, and I’d like to spare you from the ugliness). But you can try it on Windows with
this executable. Hope to provide source code later on.

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

Posted in Graphics View, KDE, Labs, Qt


Adrien de Sentenac says:

That looks great !
Are the screenshots something that can be expected for 4.4 ?
I’m really looking forward to be able to be using widgets in a graphics view ๐Ÿ™‚

Nicolas says:

Wahou ! Looks great !
I’m waiting for the source to see it (under Linux). With independant resolution UI, Qt will rock.
And GraphicsView is definitevely the futur.

Thanks for your work

Matt Smith says:

Do you reckon Qt 4.4 will be out before KDE 4.0?

Is Qt 5 on the cards? (After all, there hasn’t been a version 3.4.) Do you think that will be out before KDE 4?

Andreas says:

We have no plans to release Qt 5; it’s not even on the roadmap. What is on the plan is 4.4 and 4.5, so you can rely on Qt 4 as a stable, yet innovative Qt platform, as we do both minor and patch releases quite often. I personally hope we’ll do 4.4, 4.5, 4.6, 4.7, and more. If we ever do release Qt 5, it will be nowhere close to as big a change as what Qt 4 was compared to Qt 3. Now, we don’t actually need a Qt 5 release any time soon. There’s so much fantastic stuff we and you can do using Qt 4. I firmly believe we’ll release plenty of minor versions of Qt 4 before we venture into the Qt 5 area. In fact, all the Widgets On The Canvas work we’ve done so far is done using unmodified Qt 4.3.

Btw, KDE release schedule: http://techbase.kde.org/Schedules/KDE4/4.0_Release_Schedule (freeze in June, release in October this year). Qt 4.4 will probably be out in 8 months or so, but early adopters can play with snapshots before that.

anonymous coward says:

So, what you’re saying, full widget and layout functionality will be available inside Graphics Views?

What do you think about Vista’s WPF – an example: http://blogs.msdn.com/greg_schechter/archive/2007/04/15/making-parallaxui-look-right-field-of-view-selection.aspx

I must say it’s getting better and better, even GUI n00bs like me will now be able to easily create GUIs for interactive displays, vector graphics…

Ian Monroe says:

Will you be able to layout normal GQV items?

girish says:

> Will you be able to layout normal GQV items?

Yes, we are working on a layout system for GQV items.

Devon Rueckner says:

Hi, Andreas –

First of all, thank you for your tireless efforts on Qt; it’s a great framework.

My coworkers and I are in a bit of a predicament that this functionality would solve perfectly. In fact, we donโ€™t even need transformations; essentially we just need effective scene management and the ability to paint and add/remove/move widgets at arbitrary Z levels.

Since you’re currently just focusing on the base widget and layouts, does that mean something like the tree widget is much farther off?
When do you think it might appear in the snapshots?

(BTW, weโ€™re using PyQt; Iโ€™m not sure if that would hinder our efforts – OTOH you said that all changes have been to just 4.3 code)

Thanks again
~ Devon

Andreas says:

The itemviews classes are the most complex widgets we provide; I’m not sure but absolutely hope that we’ll be able to provide support for them. It all depends on how successful our initial work is on solving the fundamental problems. My “gut-feeling” says that we will provide these classes, but perhaps with limited features, perhaps a bit slot (e.g., no scroll optimizations), and so on. More info will follow as the research progresses.

Commenting closed.

Get started today with Qt Download now