From 509a05bdfaf2567ab8c7450be396af5737aa5838 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20M=C3=B6bius?= Date: Mon, 6 Apr 2009 06:24:48 +0000 Subject: [PATCH] Dennis: Place-detached-widgets-in-the-center-of-the-main-win git-svn-id: http://www.openflipper.org/svnrepo/OpenFlipper/branches/Free@5545 383ad7c9-94d9-4d36-a494-682f7c89f535 --- widgets/coreWidget/SideElement.cc | 10 ++++++++++ widgets/glWidget/QtSlideWindow.cc | 11 +++++++++++ 2 files changed, 21 insertions(+) diff --git a/widgets/coreWidget/SideElement.cc b/widgets/coreWidget/SideElement.cc index 49e347e1..955300a0 100644 --- a/widgets/coreWidget/SideElement.cc +++ b/widgets/coreWidget/SideElement.cc @@ -136,6 +136,16 @@ void SideElement::detachPressed (bool checked_) dialog_->setWindowTitle (name_); dialog_->setLayout (new QVBoxLayout); dialog_->resize (widget_->size ()); + if (window ()) + { + int x = (window ()->width () - widget_->width ()) / 2; + x += window ()->x (); + x = qMax (0, x); + int y = (window ()->height () - widget_->height ()) / 2; + y += window ()->y (); + y = qMax (0, y); + dialog_->move (x, y); + } dialog_->layout ()->addWidget (widget_); dialog_->show (); widget_->setAttribute(Qt::WA_DeleteOnClose, false); diff --git a/widgets/glWidget/QtSlideWindow.cc b/widgets/glWidget/QtSlideWindow.cc index a628b131..71af94bc 100644 --- a/widgets/glWidget/QtSlideWindow.cc +++ b/widgets/glWidget/QtSlideWindow.cc @@ -286,6 +286,17 @@ void QtSlideWindow::detachPressed () dialog_->setLayout (new QVBoxLayout); dialog_->resize (mainWidget_->size ()); dialog_->layout ()->addWidget (mainWidget_); + if (scene () && scene ()->views ()[0] && scene ()->views ()[0]->window ()) + { + QWidget *w = scene ()->views ()[0]->window (); + int x = (w->width () - mainWidget_->width ()) / 2; + x += w->x (); + x = qMax (0, x); + int y = (w->height () - mainWidget_->height ()) / 2; + y += w->y (); + y = qMax (0, y); + dialog_->move (x, y); + } hide (); dialog_->show (); mainWidget_->setAttribute(Qt::WA_DeleteOnClose, false); -- GitLab