Dockwidgets - Only one per Area? (= Left, Right, Top, Bottom)

Milian Wolff mail at
Wed Oct 28 21:36:46 UTC 2009

Hey all!

I finally found the cause for an issue that bugs me personally a lot:

The menu "View -> Tool Views" cannot hide currently shown dock widgets, i.e. 
it does not toggle, but only activate. This makes it pretty useless IMO.

The problem is that the actions have a QActionCollection associated, which has 
setExclusive() set. Under that condition, Qt refuses to toggle actions (see 

When I remove the action collection (which has a "TODO: just for now..." 
associated with it ;-)), dock widgets behave differently:
You can enable more than one in each area at the same time. They get displayed 
next to each other (or on top of each other).

Now this may sound like it would suck, but actually I could think of a few 
cases where that would actually be helpful:

Assume a *very wide screen*™, currently you have no way to display more than 
two dock widgets (i.e. only one left, only one right). With this change, one 
could have as much visible at the same time as one wants.

But other than that, it of course also breaks actions like "previous/next 
toolview", the splitter resizing is broken, locked dock widgets are broken and 
possibly more.

My question is now: How should I proceed? Fix the menu (== remove the action 
collection), and introduce some code to Ideal that makes sure that only one 
dock widget is shown at the same time?

Of course I don't want to make the changes too big before beta6...
Milian Wolff
mail at
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part.
URL: <>

More information about the KDevelop-devel mailing list