mirror of
https://github.com/baldurk/renderdoc.git
synced 2026-09-22 21:55:52 +00:00
Add utility function to raise a toolwindow
This commit is contained in:
@@ -297,6 +297,26 @@ void ToolWindowManager::closeToolWindow(QWidget *toolWindow) {
|
||||
qWarning("window not child of any tool window");
|
||||
}
|
||||
|
||||
void ToolWindowManager::raiseToolWindow(QWidget *toolWindow) {
|
||||
if (!toolWindow) {
|
||||
qWarning("NULL tool window");
|
||||
return;
|
||||
}
|
||||
|
||||
// if the parent is a ToolWindowManagerArea, switch tabs
|
||||
QWidget *parent = toolWindow->parentWidget();
|
||||
ToolWindowManagerArea *area = qobject_cast<ToolWindowManagerArea*>(parent);
|
||||
if(area == NULL)
|
||||
parent = parent->parentWidget();
|
||||
|
||||
area = qobject_cast<ToolWindowManagerArea*>(parent);
|
||||
|
||||
if(area)
|
||||
area->setCurrentWidget(toolWindow);
|
||||
else
|
||||
qWarning("parent is not a tool window area");
|
||||
}
|
||||
|
||||
QWidget* ToolWindowManager::createToolWindow(const QString& objectName)
|
||||
{
|
||||
if (m_createCallback) {
|
||||
|
||||
@@ -235,6 +235,7 @@ public:
|
||||
void hideToolWindow(QWidget* toolWindow) { moveToolWindow(toolWindow, NoArea); }
|
||||
|
||||
static void closeToolWindow(QWidget *toolWindow);
|
||||
static void raiseToolWindow(QWidget *toolWindow);
|
||||
|
||||
/*!
|
||||
* \brief saveState
|
||||
|
||||
@@ -501,7 +501,7 @@ bool LiveCapture::checkAllowDelete()
|
||||
if(!needcheck || ui->captures->selectedItems().empty())
|
||||
return true;
|
||||
|
||||
this->activateWindow();
|
||||
ToolWindowManager::raiseToolWindow(this);
|
||||
|
||||
QMessageBox::StandardButton res = RDDialog::question(
|
||||
this, tr("Unsaved log(s)", "", ui->captures->selectedItems().size()),
|
||||
@@ -539,7 +539,7 @@ bool LiveCapture::checkAllowClose()
|
||||
continue;
|
||||
|
||||
ui->captures->clearSelection();
|
||||
this->activateWindow();
|
||||
ToolWindowManager::raiseToolWindow(this);
|
||||
ui->captures->setFocus();
|
||||
item->setSelected(true);
|
||||
|
||||
|
||||
@@ -868,7 +868,7 @@ void MainWindow::OnLogfileLoaded()
|
||||
|
||||
PopulateRecentFiles();
|
||||
|
||||
m_Ctx->eventBrowser()->activateWindow();
|
||||
ToolWindowManager::raiseToolWindow(m_Ctx->eventBrowser());
|
||||
}
|
||||
|
||||
void MainWindow::OnLogfileClosed()
|
||||
@@ -922,7 +922,7 @@ void MainWindow::on_action_Event_Browser_triggered()
|
||||
EventBrowser *eventBrowser = m_Ctx->eventBrowser();
|
||||
|
||||
if(ui->toolWindowManager->toolWindows().contains(eventBrowser))
|
||||
eventBrowser->activateWindow();
|
||||
ToolWindowManager::raiseToolWindow(eventBrowser);
|
||||
else
|
||||
ui->toolWindowManager->addToolWindow(eventBrowser, leftToolArea());
|
||||
}
|
||||
@@ -932,7 +932,7 @@ void MainWindow::on_action_Texture_Viewer_triggered()
|
||||
TextureViewer *textureViewer = m_Ctx->textureViewer();
|
||||
|
||||
if(ui->toolWindowManager->toolWindows().contains(textureViewer))
|
||||
textureViewer->activateWindow();
|
||||
ToolWindowManager::raiseToolWindow(textureViewer);
|
||||
else
|
||||
ui->toolWindowManager->addToolWindow(textureViewer, mainToolArea());
|
||||
}
|
||||
@@ -944,7 +944,7 @@ void MainWindow::on_action_Capture_Log_triggered()
|
||||
capDialog->setInjectMode(false);
|
||||
|
||||
if(ui->toolWindowManager->toolWindows().contains(capDialog))
|
||||
capDialog->activateWindow();
|
||||
ToolWindowManager::raiseToolWindow(capDialog);
|
||||
else
|
||||
ui->toolWindowManager->addToolWindow(capDialog, mainToolArea());
|
||||
}
|
||||
@@ -956,7 +956,7 @@ void MainWindow::on_action_Inject_into_Process_triggered()
|
||||
capDialog->setInjectMode(true);
|
||||
|
||||
if(ui->toolWindowManager->toolWindows().contains(capDialog))
|
||||
capDialog->activateWindow();
|
||||
ToolWindowManager::raiseToolWindow(capDialog);
|
||||
else
|
||||
ui->toolWindowManager->addToolWindow(capDialog, mainToolArea());
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user