forked from qt-creator/qt-creator
CompileOutput: Activate links only on left button click
Complements a7ffd67a91.
Change-Id: I3e70cf635774db3e126984dd70362aa0d3baa82a
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This commit is contained in:
committed by
Orgad Shaneh
parent
119ff05ccc
commit
e59874f531
@@ -110,8 +110,8 @@ private:
|
|||||||
protected:
|
protected:
|
||||||
void mouseMoveEvent(QMouseEvent *ev)
|
void mouseMoveEvent(QMouseEvent *ev)
|
||||||
{
|
{
|
||||||
int line = cursorForPosition(ev->pos()).block().blockNumber();
|
const int line = cursorForPosition(ev->pos()).block().blockNumber();
|
||||||
if (m_taskids.value(line, 0))
|
if (m_taskids.contains(line) && m_mousePressButton == Qt::NoButton)
|
||||||
viewport()->setCursor(Qt::PointingHandCursor);
|
viewport()->setCursor(Qt::PointingHandCursor);
|
||||||
else
|
else
|
||||||
viewport()->setCursor(Qt::IBeamCursor);
|
viewport()->setCursor(Qt::IBeamCursor);
|
||||||
@@ -121,23 +121,27 @@ protected:
|
|||||||
void mousePressEvent(QMouseEvent *ev)
|
void mousePressEvent(QMouseEvent *ev)
|
||||||
{
|
{
|
||||||
m_mousePressPosition = ev->pos();
|
m_mousePressPosition = ev->pos();
|
||||||
|
m_mousePressButton = ev->button();
|
||||||
QPlainTextEdit::mousePressEvent(ev);
|
QPlainTextEdit::mousePressEvent(ev);
|
||||||
}
|
}
|
||||||
|
|
||||||
void mouseReleaseEvent(QMouseEvent *ev)
|
void mouseReleaseEvent(QMouseEvent *ev)
|
||||||
{
|
{
|
||||||
if ((m_mousePressPosition - ev->pos()).manhattanLength() < 4) {
|
if ((m_mousePressPosition - ev->pos()).manhattanLength() < 4
|
||||||
|
&& m_mousePressButton == Qt::LeftButton) {
|
||||||
int line = cursorForPosition(ev->pos()).block().blockNumber();
|
int line = cursorForPosition(ev->pos()).block().blockNumber();
|
||||||
if (unsigned taskid = m_taskids.value(line, 0))
|
if (unsigned taskid = m_taskids.value(line, 0))
|
||||||
TaskHub::showTaskInEditor(taskid);
|
TaskHub::showTaskInEditor(taskid);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
m_mousePressButton = Qt::NoButton;
|
||||||
QPlainTextEdit::mouseReleaseEvent(ev);
|
QPlainTextEdit::mouseReleaseEvent(ev);
|
||||||
}
|
}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
QHash<int, unsigned int> m_taskids; //Map blocknumber to taskId
|
QHash<int, unsigned int> m_taskids; //Map blocknumber to taskId
|
||||||
QPoint m_mousePressPosition;
|
QPoint m_mousePressPosition;
|
||||||
|
Qt::MouseButton m_mousePressButton = Qt::NoButton;
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace Internal
|
} // namespace Internal
|
||||||
|
|||||||
Reference in New Issue
Block a user