Debugger: Rework register handling

Use register names as handle, not their index in the view.
Store the raw real values, not some stringified version
as primary data.  Use subentries to break down bigger
registers into smaller entities. Also remember the
previous value of a register and show it in a tooltip.

Change-Id: I8ae3cc8766a7b211bc7cc827c734e5cf6060825c
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
Reviewed-by: hjk <hjk121@nokiamail.com>
This commit is contained in:
hjk
2014-12-17 13:14:29 +01:00
parent b2bb7ea2da
commit 3743211e54
23 changed files with 881 additions and 745 deletions

View File

@@ -69,21 +69,17 @@ class RegisterMemoryView : public MemoryView
{
Q_OBJECT
public:
explicit RegisterMemoryView(QWidget *binEditor, QWidget *parent = 0);
explicit RegisterMemoryView(QWidget *binEditor, quint64 addr, const QByteArray &regName,
RegisterHandler *rh, QWidget *parent = 0);
void init(RegisterHandler *rh, int index);
static QList<MemoryMarkup> registerMarkup(quint64 a, const QString &name);
static QString title(const QString &registerName, quint64 a = 0);
private slots:
void slotRegisterSet(const QModelIndex &index);
static QList<MemoryMarkup> registerMarkup(quint64 a, const QByteArray &regName);
static QString title(const QByteArray &registerName, quint64 a = 0);
private:
void onRegisterChanged(const QByteArray &name, quint64 value);
void setRegisterAddress(quint64 v);
int m_registerIndex;
QString m_registerName;
QByteArray m_registerName;
quint64 m_registerAddress;
};