| 583 | } |
| 584 | |
| 585 | void MainWindow::debugGuiState(bool state) { |
| 586 | if (state) { |
| 587 | ui->buttonRun->setText(tr("Run")); |
| 588 | ui->buttonRun->setIcon(m_iconRun); |
| 589 | } else { |
| 590 | ui->buttonRun->setText(tr("Stop")); |
| 591 | ui->buttonRun->setIcon(m_iconStop); |
| 592 | ui->debuggerLabel->clear(); |
| 593 | } |
| 594 | |
| 595 | m_disasm->setEnabled(state); |
| 596 | ui->buttonGoto->setEnabled(state); |
| 597 | ui->buttonStepIn->setEnabled(state); |
| 598 | ui->buttonStepOver->setEnabled(state); |
| 599 | ui->buttonStepNext->setEnabled(state); |
| 600 | ui->buttonStepOut->setEnabled(state); |
| 601 | ui->buttonCertID->setEnabled(state); |
| 602 | ui->groupCPU->setEnabled(state); |
| 603 | ui->groupFlags->setEnabled(state); |
| 604 | ui->groupRegisters->setEnabled(state); |
| 605 | ui->groupInterrupts->setEnabled(state); |
| 606 | ui->groupStack->setEnabled(state); |
| 607 | ui->groupFlash->setEnabled(state); |
| 608 | ui->groupRAM->setEnabled(state); |
| 609 | ui->cycleView->setEnabled(state); |
| 610 | ui->flashAvgView->setEnabled(state); |
| 611 | ui->flashMissesView->setEnabled(state); |
| 612 | ui->freqView->setEnabled(state); |
| 613 | ui->groupRTC->setEnabled(state); |
| 614 | ui->groupGPT->setEnabled(state); |
| 615 | ui->groupLcdState->setEnabled(state); |
| 616 | ui->groupLcdRegs->setEnabled(state); |
| 617 | ui->groupBattery->setEnabled(state); |
| 618 | ui->groupTrigger->setEnabled(state); |
| 619 | |
| 620 | ui->opView->setEnabled(state && m_normalOs); |
| 621 | ui->vatView->setEnabled(state && m_normalOs); |
| 622 | ui->opStack->setEnabled(state && m_normalOs); |
| 623 | ui->fpStack->setEnabled(state && m_normalOs); |
| 624 | |
| 625 | ui->buttonSend->setEnabled(!state); |
| 626 | ui->buttonResendFiles->setEnabled(!state); |
| 627 | |
| 628 | QList<QDockWidget*> docks = findChildren<QDockWidget*>(); |
| 629 | foreach (QDockWidget* dock, docks) { |
| 630 | if (dock->windowTitle().contains(TXT_MEM_DOCK)) { |
| 631 | if (dock->isVisible()) { |
| 632 | QList<QPushButton*> buttons = dock->findChildren<QPushButton*>(); |
| 633 | QList<QToolButton*> tools = dock->findChildren<QToolButton*>(); |
| 634 | QList<HexWidget*> editChildren = dock->findChildren<HexWidget*>(); |
| 635 | QList<QSpinBox*> spinChildren = dock->findChildren<QSpinBox*>(); |
| 636 | editChildren.first()->setEnabled(state); |
| 637 | spinChildren.first()->setEnabled(state); |
| 638 | foreach (QPushButton *button, buttons) { |
| 639 | button->setEnabled(state); |
| 640 | } |
| 641 | foreach (QToolButton *tool, tools) { |
| 642 | tool->setEnabled(state); |