void KviMdiManager::destroyChild(KviMdiChild *lpC) { removeSubWindow(lpC); delete lpC; if(!m_bInSDIMode && KVI_OPTION_BOOL(KviOption_boolAutoTileWindows)) tile(); }
void Workspace::addBrowseView(QString cubename) { /* Close the last browse window if necessary. */ if (subWindowList().size()) { QWeakPointer<QMdiSubWindow> windowToRemove = subWindowList()[subWindowList().size() - 1]; removeSubWindow(windowToRemove.data()); delete windowToRemove.data(); } addCubeViewport(cubename); }
RenderWindow::~RenderWindow() { D("Entering\n"); removeSubWindow(); D("Sending CMD_FINALIZE\n"); RenderWindowMessage msg; msg.cmd = CMD_FINALIZE; (void) processMessage(msg); if (mThread) { mThread->wait(NULL); delete mThread; delete mChannel; } }
/*! Reimplemented from QObject::eventFilter. Filters events for the watched \a object. */ bool UiGeneratorArea::eventFilter(QObject *object, QEvent *event) { QMdiSubWindow* win = qobject_cast<QMdiSubWindow*>(object); if (win != NULL) { switch(event->type()) { case QEvent::Move: case QEvent::Resize: // the widget hasn't been shown yet which means that it isn't // the user that is changing the size -> don't modify tile state. if (!mHasBeenShown) break; // the complete UiGeneratorArea is changing its size -> don't // modify tile state if (mTileCalledFromResizeEvent) break; mIsSubWindowsTiled = false; break; case QEvent::Close: mIsSubWindowsTiled = false; removeSubWindow(win); if (win == mDigitalWin) { emit generatorClosed(DigitalGenerator); } else if (win == mAnalogWin) { emit generatorClosed(AnalogGenerator); } break; default: break; } } return QMdiArea::eventFilter(object, event); }
/*! Enable/disable the \a generator according to \a enabled. */ void UiGeneratorArea::setGeneratorEnabled(GeneratorType generator, bool enabled) { GeneratorDevice* device = DeviceManager::instance().activeDevice() ->generatorDevice(); if (device == NULL) return; QMdiSubWindow* win; if (generator == AnalogGenerator) { win = mAnalogWin; device->enableAnalogGenerator(enabled); } else { win = mDigitalWin; device->enableDigitalGenerator(enabled); } bool added = (subWindowList().indexOf(win) != -1); if (enabled && !added) { addSubWindow(win); // for some reason the subwindow (win) can have a very small size // in some circumstances. Make sure it at least gets the same // size as its widget if (win->size().width() < win->widget()->size().width() || win->size().height() < win->widget()->size().height()) { win->resize(win->widget()->size()); } win->show(); win->widget()->show(); } else if (!enabled && added) { removeSubWindow(win); } }
void CUIWindowResizer::removeSubWindow(int controlID) { removeSubWindow(GetDlgItem(hWindow, controlID)); }