forked from qt-creator/qt-creator
BinEditor: Fix Ctrl+Home/End for files
Doesn't seem to affect memory editor Change-Id: I9cc21744d0dcc5fe8cf2685c61f8e71f87af3961 Reviewed-by: hjk <qthjk@ovi.com>
This commit is contained in:
@@ -1302,20 +1302,22 @@ void BinEditor::keyPressEvent(QKeyEvent *e)
|
|||||||
setCursorPosition((verticalScrollBar()->value() + line) * m_bytesPerLine + m_cursorPosition % m_bytesPerLine, moveMode);
|
setCursorPosition((verticalScrollBar()->value() + line) * m_bytesPerLine + m_cursorPosition % m_bytesPerLine, moveMode);
|
||||||
} break;
|
} break;
|
||||||
|
|
||||||
case Qt::Key_Home:
|
case Qt::Key_Home: {
|
||||||
if (e->modifiers() & Qt::ControlModifier) {
|
int pos;
|
||||||
emit startOfFileRequested(editor());
|
if (e->modifiers() & Qt::ControlModifier)
|
||||||
} else {
|
pos = 0;
|
||||||
setCursorPosition(m_cursorPosition/m_bytesPerLine * m_bytesPerLine, moveMode);
|
else
|
||||||
}
|
pos = m_cursorPosition/m_bytesPerLine * m_bytesPerLine;
|
||||||
break;
|
setCursorPosition(pos, moveMode);
|
||||||
case Qt::Key_End:
|
} break;
|
||||||
if (e->modifiers() & Qt::ControlModifier) {
|
case Qt::Key_End: {
|
||||||
emit endOfFileRequested(editor());
|
int pos;
|
||||||
} else {
|
if (e->modifiers() & Qt::ControlModifier)
|
||||||
setCursorPosition(m_cursorPosition/m_bytesPerLine * m_bytesPerLine + 15, moveMode);
|
pos = m_size;
|
||||||
}
|
else
|
||||||
break;
|
pos = m_cursorPosition/m_bytesPerLine * m_bytesPerLine + 15;
|
||||||
|
setCursorPosition(pos, moveMode);
|
||||||
|
} break;
|
||||||
default:
|
default:
|
||||||
if (m_readOnly)
|
if (m_readOnly)
|
||||||
break;
|
break;
|
||||||
|
|||||||
@@ -142,8 +142,6 @@ Q_SIGNALS:
|
|||||||
void newWindowRequested(quint64 address);
|
void newWindowRequested(quint64 address);
|
||||||
void newRangeRequested(Core::IEditor *, quint64 address);
|
void newRangeRequested(Core::IEditor *, quint64 address);
|
||||||
void addWatchpointRequested(quint64 address, uint size);
|
void addWatchpointRequested(quint64 address, uint size);
|
||||||
void startOfFileRequested(Core::IEditor *);
|
|
||||||
void endOfFileRequested(Core::IEditor *);
|
|
||||||
void dataChanged(Core::IEditor *, quint64 address, const QByteArray &data);
|
void dataChanged(Core::IEditor *, quint64 address, const QByteArray &data);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
|
|||||||
@@ -187,10 +187,6 @@ public:
|
|||||||
this, SLOT(provideData(Core::IEditor*,quint64)));
|
this, SLOT(provideData(Core::IEditor*,quint64)));
|
||||||
connect(m_editor, SIGNAL(newRangeRequested(Core::IEditor*,quint64)),
|
connect(m_editor, SIGNAL(newRangeRequested(Core::IEditor*,quint64)),
|
||||||
this, SLOT(provideNewRange(Core::IEditor*,quint64)));
|
this, SLOT(provideNewRange(Core::IEditor*,quint64)));
|
||||||
connect(m_editor, SIGNAL(startOfFileRequested(Core::IEditor*)), this,
|
|
||||||
SLOT(handleStartOfFileRequested(Core::IEditor*)));
|
|
||||||
connect(m_editor, SIGNAL(endOfFileRequested(Core::IEditor*)), this,
|
|
||||||
SLOT(handleEndOfFileRequested(Core::IEditor*)));
|
|
||||||
}
|
}
|
||||||
~BinEditorDocument() {}
|
~BinEditorDocument() {}
|
||||||
|
|
||||||
@@ -273,14 +269,6 @@ private slots:
|
|||||||
open(0, m_fileName, offset);
|
open(0, m_fileName, offset);
|
||||||
}
|
}
|
||||||
|
|
||||||
void handleStartOfFileRequested(Core::IEditor *) {
|
|
||||||
open(0, m_fileName, 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
void handleEndOfFileRequested(Core::IEditor *) {
|
|
||||||
open(0, m_fileName, QFileInfo(m_fileName).size() - 1);
|
|
||||||
}
|
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
void setFilename(const QString &filename) {
|
void setFilename(const QString &filename) {
|
||||||
|
|||||||
@@ -140,12 +140,6 @@ void MemoryAgent::connectBinEditorWidget(QWidget *w)
|
|||||||
connect(w,
|
connect(w,
|
||||||
SIGNAL(newRangeRequested(Core::IEditor*,quint64)),
|
SIGNAL(newRangeRequested(Core::IEditor*,quint64)),
|
||||||
SLOT(provideNewRange(Core::IEditor*,quint64)));
|
SLOT(provideNewRange(Core::IEditor*,quint64)));
|
||||||
connect(w,
|
|
||||||
SIGNAL(startOfFileRequested(Core::IEditor*)),
|
|
||||||
SLOT(handleStartOfFileRequested(Core::IEditor*)));
|
|
||||||
connect(w,
|
|
||||||
SIGNAL(endOfFileRequested(Core::IEditor*)),
|
|
||||||
SLOT(handleEndOfFileRequested(Core::IEditor*)));
|
|
||||||
connect(w,
|
connect(w,
|
||||||
SIGNAL(dataChanged(Core::IEditor*,quint64,QByteArray)),
|
SIGNAL(dataChanged(Core::IEditor*,quint64,QByteArray)),
|
||||||
SLOT(handleDataChanged(Core::IEditor*,quint64,QByteArray)));
|
SLOT(handleDataChanged(Core::IEditor*,quint64,QByteArray)));
|
||||||
@@ -250,23 +244,6 @@ void MemoryAgent::provideNewRange(IEditor *, quint64 address)
|
|||||||
MemoryView::setBinEditorRange(w, address, DataRange, BinBlockSize);
|
MemoryView::setBinEditorRange(w, address, DataRange, BinBlockSize);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Since we are not dealing with files, we take these signals to mean
|
|
||||||
// "move to start/end of range". This seems to make more sense than
|
|
||||||
// jumping to the start or end of the address space, respectively.
|
|
||||||
void MemoryAgent::handleStartOfFileRequested(IEditor *)
|
|
||||||
{
|
|
||||||
QWidget *w = qobject_cast<QWidget *>(sender());
|
|
||||||
QTC_ASSERT(w, return);
|
|
||||||
MemoryView::binEditorSetCursorPosition(w, 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
void MemoryAgent::handleEndOfFileRequested(IEditor *)
|
|
||||||
{
|
|
||||||
QWidget *w = qobject_cast<QWidget *>(sender());
|
|
||||||
QTC_ASSERT(w, return);
|
|
||||||
MemoryView::binEditorSetCursorPosition(w, DataRange - 1);
|
|
||||||
}
|
|
||||||
|
|
||||||
void MemoryAgent::handleDataChanged(IEditor *,
|
void MemoryAgent::handleDataChanged(IEditor *,
|
||||||
quint64 addr, const QByteArray &data)
|
quint64 addr, const QByteArray &data)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -99,8 +99,6 @@ public slots:
|
|||||||
private slots:
|
private slots:
|
||||||
void fetchLazyData(Core::IEditor *, quint64 block);
|
void fetchLazyData(Core::IEditor *, quint64 block);
|
||||||
void provideNewRange(Core::IEditor *editor, quint64 address);
|
void provideNewRange(Core::IEditor *editor, quint64 address);
|
||||||
void handleStartOfFileRequested(Core::IEditor *editor);
|
|
||||||
void handleEndOfFileRequested(Core::IEditor *editor);
|
|
||||||
void handleDataChanged(Core::IEditor *editor, quint64 address,
|
void handleDataChanged(Core::IEditor *editor, quint64 address,
|
||||||
const QByteArray &data);
|
const QByteArray &data);
|
||||||
void handleWatchpointRequest(quint64 address, uint size);
|
void handleWatchpointRequest(quint64 address, uint size);
|
||||||
|
|||||||
Reference in New Issue
Block a user