Skip to content

Commit

Permalink
Merge pull request #3077 from torusrxxx/patch000000da
Browse files Browse the repository at this point in the history
Add breakpoint background color in call stack view
  • Loading branch information
mrexodia committed Apr 29, 2023
2 parents 19e93ae + 42a43fc commit 0afb65d
Show file tree
Hide file tree
Showing 3 changed files with 31 additions and 1 deletion.
9 changes: 9 additions & 0 deletions src/gui/Src/Gui/AppearanceDialog.ui
Original file line number Diff line number Diff line change
Expand Up @@ -392,6 +392,9 @@ border-width: 1px 2px 2px 1px;</string>
<height>18</height>
</size>
</property>
<property name="toolTip">
<string>Open color selector</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: #FFFFFF; border : 2px solid black</string>
</property>
Expand Down Expand Up @@ -422,6 +425,9 @@ border-width: 1px 2px 2px 1px;</string>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="toolTip">
<string>Transparent</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: #C0C0C0;
border: solid black;
Expand Down Expand Up @@ -593,6 +599,9 @@ border-width: 1px 2px 2px 1px;</string>
<height>18</height>
</size>
</property>
<property name="toolTip">
<string>Open color selector</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: #FFFFFF; border : 2px solid black</string>
</property>
Expand Down
21 changes: 21 additions & 0 deletions src/gui/Src/Gui/CallStackView.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -96,6 +96,25 @@ QString CallStackView::paintContent(QPainter* painter, dsint rowBase, int rowOff
auto mid = h / 2.0;
painter->drawLine(QPointF(x, y + mid), QPointF(x + w, y + mid));
}
else if(col == ColFrom || col == ColTo || col == ColAddress)
{
QString ret = getCellContent(rowBase + rowOffset, col);
BPXTYPE bpxtype = DbgGetBpxTypeAt(getCellUserdata(rowBase + rowOffset, col));
if(bpxtype & bp_normal)
{
painter->fillRect(QRect(x, y, w, h), QBrush(ConfigColor("DisassemblyBreakpointBackgroundColor")));
painter->setPen(QPen(ConfigColor("DisassemblyBreakpointColor")));
painter->drawText(QRect(x + 4, y, w - 4, h), Qt::AlignVCenter | Qt::AlignLeft, ret);
return "";
}
else if(bpxtype & bp_hardware)
{
painter->fillRect(QRect(x, y, w, h), QBrush(ConfigColor("DisassemblyHardwareBreakpointBackgroundColor")));
painter->setPen(QPen(ConfigColor("DisassemblyHardwareBreakpointColor")));
painter->drawText(QRect(x + 4, y, w - 4, h), Qt::AlignVCenter | Qt::AlignLeft, ret);
return "";
}
}
return StdIconTable::paintContent(painter, rowBase, rowOffset, col, x, y, w, h);
}

Expand Down Expand Up @@ -140,6 +159,8 @@ void CallStackView::updateCallStack()
setCellContent(currentRow, ColFrom, addrText);
}
setCellUserdata(currentRow, ColFrom, callstack.entries[i].from);
setCellUserdata(currentRow, ColTo, callstack.entries[i].to);
setCellUserdata(currentRow, ColAddress, callstack.entries[i].addr);
if(i != callstack.total - 1)
setCellContent(currentRow, ColSize, ToHexString(callstack.entries[i + 1].addr - callstack.entries[i].addr));
else
Expand Down
2 changes: 1 addition & 1 deletion src/gui/Src/Utils/Configuration.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ Configuration::Configuration() : QObject(), noMoreMsgbox(false)
defaultColors.insert("DisassemblyBreakpointColor", QColor("#000000"));
defaultColors.insert("DisassemblyBreakpointBackgroundColor", QColor("#FF0000"));
defaultColors.insert("DisassemblyHardwareBreakpointColor", QColor("#000000"));
defaultColors.insert("DisassemblyHardwareBreakpointBackgroundColor", Qt::transparent);
defaultColors.insert("DisassemblyHardwareBreakpointBackgroundColor", QColor("#FF8080"));
defaultColors.insert("DisassemblyBookmarkColor", QColor("#000000"));
defaultColors.insert("DisassemblyBookmarkBackgroundColor", QColor("#FEE970"));
defaultColors.insert("DisassemblyLabelColor", QColor("#FF0000"));
Expand Down

0 comments on commit 0afb65d

Please sign in to comment.