Я хочу открепить QWidget от QTabWiget (установлен как centralWidget). Вкладка содержит некоторый контент Open Scene Graph (окно OpenGL). При удалении вкладки из списка и помещении ее в новое диалоговое окно (=> отстыковка от вкладки) данные сцены кажутся поврежденными. Он работает со «стандартными виджетами», но OSG, похоже, забывает сцену.
Удивительно, но отстыковка работает при использовании QDockWidget (сцена видна после отстыковки окна).
Кто-нибудь знает, как открепить вкладку, не повредив osgViewer?
Код, который требуется открепить от вкладки и показать в новом диалоговом окне:
QWidget* gv = // points to an osgViewer in a qt widget
QDialog* dlg = new QDialog(this);
dlg->setWindowTitle("hello earth");
QHBoxLayout* pMainLay = new QHBoxLayout;
gv->setMinimumSize(100,100);
gv->setGeometry(100,100,300,300);
pMainLay->addWidget(gv);
dlg->setLayout(pMainLay);
ui->tabWidget->removeTab(0); // removes the tab at position 0 (docked window)
dlg->show(); // should show the undocked dialog
В новом диалоге ничего не видно. Я что-то пропустил? Как правильно «скопировать» представление osg в новый виджет/диалог? Должен ли я использовать композитный просмотрщик для такого рода задач? Кажется, что даже пустое представление OSG не видно (без синего холста)...