make FunctionsWidget and SectionsWidget sort numbers correctly and align right (#344)

This commit is contained in:
exokortex 2018-02-28 21:12:51 +01:00 committed by xarkes
parent a82275bf34
commit 607b8b8ca8
2 changed files with 8 additions and 2 deletions

View File

@ -134,7 +134,7 @@ QVariant FunctionModel::data(const QModelIndex &index, int role) const
case NameColumn: case NameColumn:
return function.name; return function.name;
case SizeColumn: case SizeColumn:
return RSizeString(function.size); return function.size;
case OffsetColumn: case OffsetColumn:
return RAddressString(function.offset); return RAddressString(function.offset);
default: default:
@ -153,6 +153,11 @@ QVariant FunctionModel::data(const QModelIndex &index, int role) const
return highlightFont; return highlightFont;
return defaultFont; return defaultFont;
case Qt::TextAlignmentRole:
if (index.column() == 1)
return static_cast<int>(Qt::AlignRight | Qt::AlignVCenter);
return static_cast<int>(Qt::AlignLeft | Qt::AlignVCenter);
case Qt::ToolTipRole: case Qt::ToolTipRole:
{ {
QList<QString> info = CutterCore::getInstance()->cmd("afi @ " + function.name).split("\n"); QList<QString> info = CutterCore::getInstance()->cmd("afi @ " + function.name).split("\n");

View File

@ -88,7 +88,8 @@ void SectionsWidget::fillSections(int row, const SectionDescription &section)
QTreeWidgetItem *tempItem = new QTreeWidgetItem(); QTreeWidgetItem *tempItem = new QTreeWidgetItem();
tempItem->setText(0, section.name); tempItem->setText(0, section.name);
tempItem->setText(1, RSizeString(section.size)); tempItem->setData(1, Qt::DisplayRole, section.size);
tempItem->setTextAlignment(1, Qt::AlignRight | Qt::AlignVCenter);
tempItem->setText(2, RAddressString(section.vaddr)); tempItem->setText(2, RAddressString(section.vaddr));
tempItem->setText(3, RAddressString(section.vaddr + section.vsize)); tempItem->setText(3, RAddressString(section.vaddr + section.vsize));
tempItem->setData(0, Qt::DecorationRole, colors[row % colors.size()]); tempItem->setData(0, Qt::DecorationRole, colors[row % colors.size()]);