Merge pull request #8219 from Pokechu22/float-watch
Show values as floats in watch
This commit is contained in:
commit
0d2c3e6efc
|
@ -82,7 +82,7 @@ void WatchWidget::CreateWidgets()
|
||||||
m_table = new QTableWidget;
|
m_table = new QTableWidget;
|
||||||
|
|
||||||
m_table->setContentsMargins(0, 0, 0, 0);
|
m_table->setContentsMargins(0, 0, 0, 0);
|
||||||
m_table->setColumnCount(5);
|
m_table->setColumnCount(NUM_COLUMNS);
|
||||||
m_table->verticalHeader()->setHidden(true);
|
m_table->verticalHeader()->setHidden(true);
|
||||||
m_table->setContextMenuPolicy(Qt::CustomContextMenu);
|
m_table->setContextMenuPolicy(Qt::CustomContextMenu);
|
||||||
m_table->setSelectionMode(QAbstractItemView::SingleSelection);
|
m_table->setSelectionMode(QAbstractItemView::SingleSelection);
|
||||||
|
@ -132,7 +132,9 @@ void WatchWidget::Update()
|
||||||
// i18n: The base 10 numeral system. Not related to non-integer numbers
|
// i18n: The base 10 numeral system. Not related to non-integer numbers
|
||||||
tr("Decimal"),
|
tr("Decimal"),
|
||||||
// i18n: Data type used in computing
|
// i18n: Data type used in computing
|
||||||
tr("String")});
|
tr("String"),
|
||||||
|
// i18n: Floating-point (non-integer) number
|
||||||
|
tr("Float")});
|
||||||
|
|
||||||
for (int i = 0; i < size; i++)
|
for (int i = 0; i < size; i++)
|
||||||
{
|
{
|
||||||
|
@ -144,6 +146,10 @@ void WatchWidget::Update()
|
||||||
auto* hex = new QTableWidgetItem;
|
auto* hex = new QTableWidgetItem;
|
||||||
auto* decimal = new QTableWidgetItem;
|
auto* decimal = new QTableWidgetItem;
|
||||||
auto* string = new QTableWidgetItem;
|
auto* string = new QTableWidgetItem;
|
||||||
|
auto* floatValue = new QTableWidgetItem;
|
||||||
|
|
||||||
|
std::array<QTableWidgetItem*, NUM_COLUMNS> items = {label, address, hex,
|
||||||
|
decimal, string, floatValue};
|
||||||
|
|
||||||
QBrush brush = QPalette().brush(QPalette::Text);
|
QBrush brush = QPalette().brush(QPalette::Text);
|
||||||
|
|
||||||
|
@ -158,26 +164,20 @@ void WatchWidget::Update()
|
||||||
QLatin1Char('0')));
|
QLatin1Char('0')));
|
||||||
decimal->setText(QString::number(PowerPC::HostRead_U32(entry.address)));
|
decimal->setText(QString::number(PowerPC::HostRead_U32(entry.address)));
|
||||||
string->setText(QString::fromStdString(PowerPC::HostGetString(entry.address, 32)));
|
string->setText(QString::fromStdString(PowerPC::HostGetString(entry.address, 32)));
|
||||||
|
floatValue->setText(QString::number(PowerPC::HostRead_F32(entry.address)));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
address->setForeground(brush);
|
address->setForeground(brush);
|
||||||
|
|
||||||
int column = 0;
|
|
||||||
|
|
||||||
for (auto* item : {label, address, hex, decimal, string})
|
|
||||||
{
|
|
||||||
item->setData(Qt::UserRole, i);
|
|
||||||
item->setData(Qt::UserRole + 1, column++);
|
|
||||||
}
|
|
||||||
|
|
||||||
string->setFlags(Qt::ItemIsEnabled);
|
string->setFlags(Qt::ItemIsEnabled);
|
||||||
|
|
||||||
m_table->setItem(i, 0, label);
|
for (int column = 0; column < NUM_COLUMNS; column++)
|
||||||
m_table->setItem(i, 1, address);
|
{
|
||||||
m_table->setItem(i, 2, hex);
|
auto* item = items[column];
|
||||||
m_table->setItem(i, 3, decimal);
|
item->setData(Qt::UserRole, i);
|
||||||
m_table->setItem(i, 4, string);
|
item->setData(Qt::UserRole + 1, column);
|
||||||
|
m_table->setItem(i, column, item);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
auto* label = new QTableWidgetItem;
|
auto* label = new QTableWidgetItem;
|
||||||
|
@ -185,7 +185,7 @@ void WatchWidget::Update()
|
||||||
|
|
||||||
m_table->setItem(size, 0, label);
|
m_table->setItem(size, 0, label);
|
||||||
|
|
||||||
for (int i = 1; i < 5; i++)
|
for (int i = 1; i < NUM_COLUMNS; i++)
|
||||||
{
|
{
|
||||||
auto* no_edit = new QTableWidgetItem;
|
auto* no_edit = new QTableWidgetItem;
|
||||||
no_edit->setFlags(Qt::ItemIsEnabled);
|
no_edit->setFlags(Qt::ItemIsEnabled);
|
||||||
|
|
|
@ -50,4 +50,6 @@ private:
|
||||||
QTableWidget* m_table;
|
QTableWidget* m_table;
|
||||||
|
|
||||||
bool m_updating = false;
|
bool m_updating = false;
|
||||||
|
|
||||||
|
static constexpr size_t NUM_COLUMNS = 6;
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in New Issue