Add support for stepping through all threads or a selected thread.

This commit is contained in:
Ernie Pasveer
2022-09-17 09:14:46 -05:00
parent 2ce231bf20
commit 65ef10f10f
7 changed files with 181 additions and 25 deletions
+38 -2
View File
@@ -26,8 +26,10 @@ SeerThreadManagerWidget::SeerThreadManagerWidget (QWidget* parent) : QWidget(par
tabWidget->setCornerWidget(refreshToolButton, Qt::TopRightCorner);
// Connect things.
QObject::connect(refreshToolButton, &QToolButton::clicked, this, &SeerThreadManagerWidget::handleRefreshToolButtonClicked);
QObject::connect(forkFollowsComboBox, QOverload<int>::of(&QComboBox::currentIndexChanged), this, &SeerThreadManagerWidget::handleForkFollowComboBox);
QObject::connect(refreshToolButton, &QToolButton::clicked, this, &SeerThreadManagerWidget::handleRefreshToolButtonClicked);
QObject::connect(schedulerLockingComboBox, QOverload<int>::of(&QComboBox::currentIndexChanged), this, &SeerThreadManagerWidget::handleSchedulerLockingComboBox);
QObject::connect(scheduleMultipleComboBox, QOverload<int>::of(&QComboBox::currentIndexChanged), this, &SeerThreadManagerWidget::handleScheduleMultipleComboBox);
QObject::connect(forkFollowsComboBox, QOverload<int>::of(&QComboBox::currentIndexChanged), this, &SeerThreadManagerWidget::handleForkFollowComboBox);
}
SeerThreadManagerWidget::~SeerThreadManagerWidget () {
@@ -41,6 +43,26 @@ SeerThreadFramesBrowserWidget* SeerThreadManagerWidget::threadFramesBrowserWidge
return _threadFramesBrowserWidget;
}
void SeerThreadManagerWidget::setSchedulerLockingMode (const QString& mode) {
schedulerLockingComboBox->setCurrentText(mode);
}
QString SeerThreadManagerWidget::schedulerLockingMode () const {
return schedulerLockingComboBox->currentText();
}
void SeerThreadManagerWidget::setScheduleMultipleMode (const QString& mode) {
scheduleMultipleComboBox->setCurrentText(mode);
}
QString SeerThreadManagerWidget::scheduleMultipleMode () const {
return scheduleMultipleComboBox->currentText();
}
void SeerThreadManagerWidget::setForkFollowsMode (const QString& mode) {
forkFollowsComboBox->setCurrentText(mode);
@@ -57,6 +79,20 @@ void SeerThreadManagerWidget::handleRefreshToolButtonClicked () {
threadIdsBrowserWidget()->refresh();
}
void SeerThreadManagerWidget::handleSchedulerLockingComboBox (int index) {
Q_UNUSED(index);
emit schedulerLockingModeChanged(schedulerLockingComboBox->currentText());
}
void SeerThreadManagerWidget::handleScheduleMultipleComboBox (int index) {
Q_UNUSED(index);
emit scheduleMultipleModeChanged(scheduleMultipleComboBox->currentText());
}
void SeerThreadManagerWidget::handleForkFollowComboBox (int index) {
Q_UNUSED(index);