mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-23 14:19:46 -06:00
Add options for BreakpointWidget, WatchWidget, and CheatSearches to send address to Memory Widget
This commit is contained in:
@ -18,6 +18,7 @@
|
||||
#include "Core/PowerPC/PPCSymbolDB.h"
|
||||
#include "Core/PowerPC/PowerPC.h"
|
||||
|
||||
#include "DolphinQt/Debugger/MemoryWidget.h"
|
||||
#include "DolphinQt/Debugger/NewBreakpointDialog.h"
|
||||
#include "DolphinQt/Resources.h"
|
||||
#include "DolphinQt/Settings.h"
|
||||
@ -355,13 +356,13 @@ void BreakpointWidget::OnContextMenu()
|
||||
if (bp_iter == inst_breakpoints.end())
|
||||
return;
|
||||
|
||||
menu->addAction(tr("Show in Code"), [this, bp_address] { emit ShowCode(bp_address); });
|
||||
menu->addAction(bp_iter->is_enabled ? tr("Disable") : tr("Enable"), [this, &bp_address]() {
|
||||
PowerPC::breakpoints.ToggleBreakPoint(bp_address);
|
||||
|
||||
emit BreakpointsChanged();
|
||||
Update();
|
||||
});
|
||||
menu->addAction(tr("Go to"), [this, bp_address] { emit SelectedBreakpoint(bp_address); });
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -372,6 +373,7 @@ void BreakpointWidget::OnContextMenu()
|
||||
if (mb_iter == memory_breakpoints.end())
|
||||
return;
|
||||
|
||||
menu->addAction(tr("Show in Memory"), [this, bp_address] { emit ShowMemory(bp_address); });
|
||||
menu->addAction(mb_iter->is_enabled ? tr("Disable") : tr("Enable"), [this, &bp_address]() {
|
||||
PowerPC::memchecks.ToggleBreakPoint(bp_address);
|
||||
|
||||
|
@ -31,7 +31,8 @@ public:
|
||||
|
||||
signals:
|
||||
void BreakpointsChanged();
|
||||
void SelectedBreakpoint(u32 address);
|
||||
void ShowCode(u32 address);
|
||||
void ShowMemory(u32 address);
|
||||
|
||||
protected:
|
||||
void closeEvent(QCloseEvent*) override;
|
||||
|
@ -310,6 +310,7 @@ void WatchWidget::ShowContextMenu()
|
||||
|
||||
if (row >= 0)
|
||||
{
|
||||
menu->addAction(tr("Show in Memory"), this, [this, row] { ShowInMemory(row); });
|
||||
// i18n: This kind of "watch" is used for watching emulated memory.
|
||||
// It's not related to timekeeping devices.
|
||||
menu->addAction(tr("&Delete Watch"), this, [this, row] { DeleteWatch(row); });
|
||||
@ -395,6 +396,11 @@ void WatchWidget::AddWatchBreakpoint(int row)
|
||||
emit RequestMemoryBreakpoint(PowerPC::debug_interface.GetWatch(row).address);
|
||||
}
|
||||
|
||||
void WatchWidget::ShowInMemory(int row)
|
||||
{
|
||||
emit ShowMemory(PowerPC::debug_interface.GetWatch(row).address);
|
||||
}
|
||||
|
||||
void WatchWidget::AddWatch(QString name, u32 addr)
|
||||
{
|
||||
PowerPC::debug_interface.SetWatch(addr, name.toStdString());
|
||||
|
@ -24,6 +24,7 @@ public:
|
||||
void AddWatch(QString name, u32 addr);
|
||||
signals:
|
||||
void RequestMemoryBreakpoint(u32 addr);
|
||||
void ShowMemory(u32 addr);
|
||||
|
||||
protected:
|
||||
void closeEvent(QCloseEvent*) override;
|
||||
@ -47,7 +48,7 @@ private:
|
||||
void OnItemChanged(QTableWidgetItem* item);
|
||||
void DeleteWatch(int row);
|
||||
void AddWatchBreakpoint(int row);
|
||||
|
||||
void ShowInMemory(int row);
|
||||
void UpdateIcons();
|
||||
|
||||
QAction* m_new;
|
||||
|
Reference in New Issue
Block a user