Made register inspection window a child - it will now close when it's parent is deleted, as it should

This commit is contained in:
Nav
2021-09-23 21:19:47 +01:00
parent 1f112fb179
commit 10b879a964
3 changed files with 12 additions and 6 deletions

View File

@@ -28,11 +28,15 @@ TargetRegisterInspectorWindow::TargetRegisterInspectorWindow(
const Targets::TargetRegisterDescriptor& registerDescriptor, const Targets::TargetRegisterDescriptor& registerDescriptor,
InsightWorker& insightWorker, InsightWorker& insightWorker,
TargetState currentTargetState, TargetState currentTargetState,
std::optional<Targets::TargetMemoryBuffer> registerValue std::optional<Targets::TargetMemoryBuffer> registerValue,
QWidget* parent
): ):
registerDescriptor(registerDescriptor), QWidget(parent),
insightWorker(insightWorker), registerDescriptor(registerDescriptor),
registerValue(registerValue.value_or(Targets::TargetMemoryBuffer(registerDescriptor.size, 0))) { insightWorker(insightWorker),
registerValue(registerValue.value_or(Targets::TargetMemoryBuffer(registerDescriptor.size, 0)))
{
this->setWindowFlag(Qt::Window);
auto registerName = QString::fromStdString(this->registerDescriptor.name.value()).toUpper(); auto registerName = QString::fromStdString(this->registerDescriptor.name.value()).toUpper();
this->setObjectName("target-register-inspector-window"); this->setObjectName("target-register-inspector-window");
this->setWindowTitle("Inspect Register"); this->setWindowTitle("Inspect Register");

View File

@@ -63,7 +63,8 @@ namespace Bloom::Widgets
const Targets::TargetRegisterDescriptor& registerDescriptor, const Targets::TargetRegisterDescriptor& registerDescriptor,
InsightWorker& insightWorker, InsightWorker& insightWorker,
Targets::TargetState currentTargetState, Targets::TargetState currentTargetState,
std::optional<Targets::TargetMemoryBuffer> registerValue = std::nullopt std::optional<Targets::TargetMemoryBuffer> registerValue = std::nullopt,
QWidget* parent = nullptr
); );
static bool registerSupported(const Targets::TargetRegisterDescriptor& descriptor); static bool registerSupported(const Targets::TargetRegisterDescriptor& descriptor);

View File

@@ -102,7 +102,8 @@ void RegisterWidget::openInspectionWindow() {
this->descriptor, this->descriptor,
this->insightWorker, this->insightWorker,
this->targetState, this->targetState,
this->currentRegister.has_value() ? std::optional(this->currentRegister->value) : std::nullopt this->currentRegister.has_value() ? std::optional(this->currentRegister->value) : std::nullopt,
this
); );
} else { } else {