<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"><html><head><meta name="qrichtext" content="1" /><style type="text/css">p, li { white-space: pre-wrap; }</style></head><body style=" font-family:'DejaVu Sans'; font-size:9pt; font-weight:400; font-style:normal;">Hi,<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>I have been playing around with the idea of a DockWidget catcher, the idea is a tab bar where the user drag a DockWidget, and then the dockwidget opperate as a popup with a button in the bar, if you have used photoshop, it's used for the brush settings (see [2]).<br>
In Krita, we have been wanting to use something similar, also for the paintop settings. Currently it's a popup widget, but we would like to have the possibility to depopup it and have it has a dock widget. So on a small screen you use it as popup, and when you have a bigger screen, you can move it to a docker.<br>
I don't know if it's usefull for other application, unfortunately it's rather intrusive, to do this I had to reimplement QDockWidget::event (to check when the title bar of the dock is released on the tab bar) , as far as I can see, the only solution would be to have this in kolibs. Even if only useful in Krita. You can see the code in a sample application in [1].<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>If it's ok, next step is to integrate it in libs/main, instead of reimplementing QDockWidget::event, I will probably have to do this in KoDockWidgetTitleBar.<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>The main outstanding issue is that I am not sure how to correctly restore the state.<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>[1] http://cyrille.diwi.org/tmp/koffice/dockercatcher.tar.bz2<br>
[2] http://www.webdesign.org/img_articles/8278/7.jpg<br>
-- <br>
Cyrille Berger</p></body></html>