diff --git a/src/gui/Src/Gui/CalculatorDialog.ui b/src/gui/Src/Gui/CalculatorDialog.ui index 6044c09c..b031d13b 100644 --- a/src/gui/Src/Gui/CalculatorDialog.ui +++ b/src/gui/Src/Gui/CalculatorDialog.ui @@ -7,7 +7,7 @@ 0 0 502 - 254 + 270 @@ -27,8 +27,8 @@ 10 - 220 - 121 + 240 + 141 23 @@ -42,7 +42,7 @@ 11 8 481 - 211 + 225 @@ -211,7 +211,7 @@ 417 - 220 + 240 75 23 @@ -223,8 +223,8 @@ - 140 - 220 + 160 + 240 141 23 diff --git a/src/gui/Src/Gui/EditBreakpointDialog.cpp b/src/gui/Src/Gui/EditBreakpointDialog.cpp index f9bca966..f44c3ea5 100644 --- a/src/gui/Src/Gui/EditBreakpointDialog.cpp +++ b/src/gui/Src/Gui/EditBreakpointDialog.cpp @@ -1,6 +1,7 @@ #include "EditBreakpointDialog.h" #include "ui_EditBreakpointDialog.h" #include "StringUtil.h" +#include "MiscUtil.h" EditBreakpointDialog::EditBreakpointDialog(QWidget* parent, const BRIDGEBP & bp) : QDialog(parent), @@ -15,7 +16,7 @@ EditBreakpointDialog::EditBreakpointDialog(QWidget* parent, const BRIDGEBP & bp) } else { - setWindowTitle(QString(tr("Edit Breakpoint %1")).arg(ToHexString(bp.addr))); + setWindowTitle(QString(tr("Edit Breakpoint %1")).arg(getSymbolicName(bp.addr))); } setWindowIcon(DIcon("breakpoint.png")); loadFromBp(); diff --git a/src/gui/Src/Utils/MiscUtil.cpp b/src/gui/Src/Utils/MiscUtil.cpp index d9c21eec..6aa0130b 100644 --- a/src/gui/Src/Utils/MiscUtil.cpp +++ b/src/gui/Src/Utils/MiscUtil.cpp @@ -2,6 +2,7 @@ #include #include "LineEditDialog.h" #include +#include "StringUtil.h" void SetApplicationIcon(WId winId) { @@ -56,3 +57,21 @@ void SimpleWarningBox(QWidget* parent, const QString & title, const QString & te msg.setWindowFlags(msg.windowFlags() & (~Qt::WindowContextHelpButtonHint)); msg.exec(); } + +QString getSymbolicName(duint addr) +{ + char labelText[MAX_LABEL_SIZE] = ""; + char moduleText[MAX_MODULE_SIZE] = ""; + bool bHasLabel = DbgGetLabelAt(addr, SEG_DEFAULT, labelText); + bool bHasModule = (DbgGetModuleAt(addr, moduleText) && !QString(labelText).startsWith("JMP.&")); + QString addrText = ToPtrString(addr); + + if(bHasLabel && bHasModule) // + return QString("%1 <%2.%3>").arg(addrText).arg(moduleText).arg(labelText); + else if(bHasModule) // module.addr + return QString("%1.%2").arg(moduleText).arg(addrText); + else if(bHasLabel) //