forked from qt-creator/qt-creator
BinEditor: Simplify address field updates
Change-Id: Ia57348b25a28164061bca4f7cf336a9e9a555abb Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This commit is contained in:
@@ -216,7 +216,7 @@ public:
|
|||||||
|
|
||||||
void zoomF(float delta);
|
void zoomF(float delta);
|
||||||
|
|
||||||
qint64 cursorPosition() const;
|
qint64 cursorPosition() const { return m_cursorPosition; }
|
||||||
void setCursorPosition(qint64 pos, MoveMode moveMode = MoveAnchor);
|
void setCursorPosition(qint64 pos, MoveMode moveMode = MoveAnchor);
|
||||||
void jumpToAddress(quint64 address);
|
void jumpToAddress(quint64 address);
|
||||||
|
|
||||||
@@ -253,8 +253,8 @@ public:
|
|||||||
|
|
||||||
QLineEdit *addressEdit() const { return m_addressEdit; }
|
QLineEdit *addressEdit() const { return m_addressEdit; }
|
||||||
|
|
||||||
void updateCursorPosition(qint64 position) {
|
void updateAddressDisplay() {
|
||||||
m_addressEdit->setText(QString::number(baseAddress() + position, 16));
|
m_addressEdit->setText(QString::number(baseAddress() + m_cursorPosition, 16));
|
||||||
}
|
}
|
||||||
|
|
||||||
void onDataAdded() { viewport()->update(); }
|
void onDataAdded() { viewport()->update(); }
|
||||||
@@ -394,10 +394,9 @@ BinEditorWidget::BinEditorWidget(BinEditorDocument *doc)
|
|||||||
|
|
||||||
connect(m_addressEdit, &QLineEdit::editingFinished, this, [this] {
|
connect(m_addressEdit, &QLineEdit::editingFinished, this, [this] {
|
||||||
jumpToAddress(m_addressEdit->text().toULongLong(nullptr, 16));
|
jumpToAddress(m_addressEdit->text().toULongLong(nullptr, 16));
|
||||||
updateCursorPosition(cursorPosition());
|
|
||||||
});
|
});
|
||||||
|
|
||||||
updateCursorPosition(cursorPosition());
|
updateAddressDisplay();
|
||||||
|
|
||||||
init();
|
init();
|
||||||
}
|
}
|
||||||
@@ -1243,12 +1242,6 @@ void BinEditorWidget::paintEvent(QPaintEvent *e)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
qint64 BinEditorWidget::cursorPosition() const
|
|
||||||
{
|
|
||||||
return m_cursorPosition;
|
|
||||||
}
|
|
||||||
|
|
||||||
void BinEditorWidget::setCursorPosition(qint64 pos, MoveMode moveMode)
|
void BinEditorWidget::setCursorPosition(qint64 pos, MoveMode moveMode)
|
||||||
{
|
{
|
||||||
pos = qMin(m_doc->m_size - 1, qMax(qint64(0), pos));
|
pos = qMin(m_doc->m_size - 1, qMax(qint64(0), pos));
|
||||||
@@ -1263,7 +1256,7 @@ void BinEditorWidget::setCursorPosition(qint64 pos, MoveMode moveMode)
|
|||||||
|
|
||||||
updateLines(oldCursorPosition, m_cursorPosition);
|
updateLines(oldCursorPosition, m_cursorPosition);
|
||||||
ensureCursorVisible();
|
ensureCursorVisible();
|
||||||
updateCursorPosition(m_cursorPosition);
|
updateAddressDisplay();
|
||||||
}
|
}
|
||||||
|
|
||||||
void BinEditorWidget::ensureCursorVisible()
|
void BinEditorWidget::ensureCursorVisible()
|
||||||
@@ -1344,7 +1337,7 @@ void BinEditorWidget::clear()
|
|||||||
m_cursorPosition = 0;
|
m_cursorPosition = 0;
|
||||||
verticalScrollBar()->setValue(0);
|
verticalScrollBar()->setValue(0);
|
||||||
|
|
||||||
updateCursorPosition(m_cursorPosition);
|
updateAddressDisplay();
|
||||||
viewport()->update();
|
viewport()->update();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user