mirror of
https://github.com/cemu-project/Cemu.git
synced 2025-07-11 17:28:29 +12:00
Add all the files
This commit is contained in:
parent
e3db07a16a
commit
d60742f52b
1445 changed files with 430238 additions and 0 deletions
48
src/gui/debugger/DisasmCtrl.h
Normal file
48
src/gui/debugger/DisasmCtrl.h
Normal file
|
@ -0,0 +1,48 @@
|
|||
#pragma once
|
||||
#include "gui/components/TextList.h"
|
||||
|
||||
class DisasmCtrl : public TextList
|
||||
{
|
||||
public:
|
||||
DisasmCtrl(wxWindow* parent, const wxWindowID& id, const wxPoint& pos, const wxSize& size, long style);
|
||||
|
||||
void Init();
|
||||
wxSize DoGetBestSize() const override;
|
||||
|
||||
void OnUpdateView();
|
||||
|
||||
uint32 GetViewBaseAddress() const;
|
||||
std::optional<MPTR> LinePixelPosToAddress(sint32 posY);
|
||||
|
||||
uint32 AddressToScrollPos(uint32 offset) const;
|
||||
void CenterOffset(uint32 offset);
|
||||
void GoToAddressDialog();
|
||||
|
||||
|
||||
|
||||
protected:
|
||||
void OnDraw(wxDC& dc, sint32 start, sint32 count, const wxPoint& start_position) override;
|
||||
void OnMouseMove(const wxPoint& position, uint32 line) override;
|
||||
void OnKeyPressed(sint32 key_code, const wxPoint& position) override;
|
||||
void OnMouseDClick(const wxPoint& position, uint32 line) override;
|
||||
void OnContextMenu(const wxPoint& position, uint32 line) override;
|
||||
bool OnShowTooltip(const wxPoint& position, uint32 line) override;
|
||||
void ScrollWindow(int dx, int dy, const wxRect* prect) override;
|
||||
|
||||
void DrawDisassemblyLine(wxDC& dc, const wxPoint& linePosition, MPTR virtualAddress, struct RPLModule* rplModule);
|
||||
void DrawLabelName(wxDC& dc, const wxPoint& linePosition, MPTR virtualAddress, struct RPLStoredSymbol* storedSymbol);
|
||||
|
||||
void SelectCodeRegion(uint32 newAddress);
|
||||
|
||||
private:
|
||||
void CopyToClipboard(std::string text);
|
||||
|
||||
sint32 m_mouse_line, m_mouse_line_drawn;
|
||||
sint32 m_active_line;
|
||||
uint32 m_lastGotoTarget{};
|
||||
// code region info
|
||||
uint32 currentCodeRegionStart;
|
||||
uint32 currentCodeRegionEnd;
|
||||
// line to address mapping
|
||||
std::vector<std::optional<MPTR>> m_lineToAddress;
|
||||
};
|
Loading…
Add table
Add a link
Reference in a new issue