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) //