Debugger: Further work on memory leak hunting.
[haiku.git] / src / apps / debugger / user_interface / gui / team_window / RegistersView.h
blob399d463b7cb404c5b96f7e27c15a27090f46b22b
1 /*
2 * Copyright 2009, Ingo Weinhold, ingo_weinhold@gmx.de.
3 * Copyright 2013-2015, Rene Gollent, rene@gollent.com.
4 * Distributed under the terms of the MIT License.
5 */
6 #ifndef REGISTERS_VIEW_H
7 #define REGISTERS_VIEW_H
9 #include <GroupView.h>
11 #include "table/Table.h"
12 #include "Team.h"
15 class Architecture;
16 class BMenu;
19 class RegistersView : public BGroupView, private TableListener {
20 public:
21 RegistersView(Architecture* architecture);
22 ~RegistersView();
24 static RegistersView* Create(Architecture* architecture);
25 // throws
27 virtual void MessageReceived(BMessage* message);
29 void SetCpuState(CpuState* cpuState);
31 void LoadSettings(const BMessage& settings);
32 status_t SaveSettings(BMessage& settings);
34 private:
35 class RegisterValueColumn;
36 class RegisterTableModel;
38 private:
39 // TableListener
40 virtual void TableRowInvoked(Table* table, int32 rowIndex);
42 virtual void TableCellMouseDown(Table* table, int32 rowIndex,
43 int32 columnIndex, BPoint screenWhere,
44 uint32 buttons);
46 void _Init();
47 status_t _AddFormatItem(BMenu* menu, int32 format);
49 private:
50 Architecture* fArchitecture;
51 CpuState* fCpuState;
52 Table* fRegisterTable;
53 RegisterTableModel* fRegisterTableModel;
57 #endif // REGISTERS_VIEW_H