From 3b7fbd77588b2864887bb012ff63fb3fc4aa3f51 Mon Sep 17 00:00:00 2001 From: Zack Rusin Date: Wed, 27 Apr 2011 23:48:16 -0400 Subject: [PATCH] Don't hide the state dock while looking up the defaults. --- gui/mainwindow.cpp | 18 +++++++++++++++--- gui/mainwindow.h | 2 ++ 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/gui/mainwindow.cpp b/gui/mainwindow.cpp index 877c93d..d9f9e38 100644 --- a/gui/mainwindow.cpp +++ b/gui/mainwindow.cpp @@ -37,7 +37,8 @@ MainWindow::MainWindow() : QMainWindow(), m_selectedEvent(0), - m_stateEvent(0) + m_stateEvent(0), + m_nonDefaultsLookupEvent(0) { m_ui.setupUi(this); initObjects(); @@ -219,6 +220,7 @@ void MainWindow::replayError(const QString &message) m_ui.actionReplay->setEnabled(true); m_ui.actionLookupState->setEnabled(true); m_stateEvent = 0; + m_nonDefaultsLookupEvent = 0; m_progressBar->hide(); statusBar()->showMessage( @@ -441,6 +443,12 @@ void MainWindow::fillStateForFrame() if (!m_selectedEvent || m_selectedEvent->state().isEmpty()) return; + if (m_nonDefaultsLookupEvent) { + m_ui.nonDefaultsCB->blockSignals(true); + m_ui.nonDefaultsCB->setChecked(true); + m_ui.nonDefaultsCB->blockSignals(false); + } + bool nonDefaults = m_ui.nonDefaultsCB->isChecked(); QVariantMap defaultParams; if (nonDefaults) { @@ -753,7 +761,8 @@ void MainWindow::initConnections() m_ui.actionShowErrorsDock, SLOT(setChecked(bool))); connect(m_ui.actionShowErrorsDock, SIGNAL(triggered(bool)), m_ui.errorsDock, SLOT(setVisible(bool))); - connect(m_ui.errorsTreeWidget, SIGNAL(currentItemChanged(QTreeWidgetItem*, QTreeWidgetItem*)), + connect(m_ui.errorsTreeWidget, + SIGNAL(currentItemChanged(QTreeWidgetItem*, QTreeWidgetItem*)), this, SLOT(slotErrorSelected(QTreeWidgetItem*))); } @@ -761,11 +770,13 @@ void MainWindow::replayStateFound(const ApiTraceState &state) { m_stateEvent->setState(state); m_model->stateSetOnEvent(m_stateEvent); - if (m_selectedEvent == m_stateEvent) { + if (m_selectedEvent == m_stateEvent || + m_nonDefaultsLookupEvent == m_selectedEvent) { fillStateForFrame(); } else { m_ui.stateDock->hide(); } + m_nonDefaultsLookupEvent = 0; } void MainWindow::slotGoTo() @@ -928,6 +939,7 @@ void MainWindow::fillState(bool nonDefaults) ApiTraceEvent *oldSelected = m_selectedEvent; if (!firstFrame) return; + m_nonDefaultsLookupEvent = m_selectedEvent; m_selectedEvent = firstFrame; lookupState(); m_selectedEvent = oldSelected; diff --git a/gui/mainwindow.h b/gui/mainwindow.h index f276f2e..ee25fb3 100644 --- a/gui/mainwindow.h +++ b/gui/mainwindow.h @@ -103,6 +103,8 @@ private: TraceProcess *m_traceProcess; ArgumentsEditor *m_argsEditor; + + ApiTraceEvent *m_nonDefaultsLookupEvent; }; -- 2.43.0