| 593 | |
| 594 | |
| 595 | void DebugRegistersWidget::copy() |
| 596 | { |
| 597 | QModelIndexList sel = selectionModel()->selectedIndexes(); |
| 598 | if (sel.empty()) |
| 599 | return; |
| 600 | |
| 601 | auto sourceIndex = m_filter->mapToSource(sel[0]); |
| 602 | if (!sourceIndex.isValid()) |
| 603 | return; |
| 604 | |
| 605 | auto reg = m_model->getRow(sourceIndex.row()); |
| 606 | QString text; |
| 607 | |
| 608 | switch (sel[0].column()) |
| 609 | { |
| 610 | case DebugRegistersListModel::NameColumn: |
| 611 | text = QString::fromStdString(reg.name()); |
| 612 | break; |
| 613 | case DebugRegistersListModel::ValueColumn: |
| 614 | text = QString::asprintf("0x%" PRIx64, reg.value()); |
| 615 | break; |
| 616 | case DebugRegistersListModel::HintColumn: |
| 617 | text = QString::fromStdString(reg.hint()); |
| 618 | break; |
| 619 | default: |
| 620 | break; |
| 621 | } |
| 622 | |
| 623 | auto* clipboard = QGuiApplication::clipboard(); |
| 624 | clipboard->clear(); |
| 625 | auto* mime = new QMimeData(); |
| 626 | mime->setText(text); |
| 627 | clipboard->setMimeData(mime); |
| 628 | } |
| 629 | |
| 630 | |
| 631 | void DebugRegistersWidget::paste() |