diff options
author | Tse Kit Yam <me@kytse.com> | 2016-11-23 10:46:28 +1100 |
---|---|---|
committer | Tse Kit Yam <me@kytse.com> | 2016-11-23 10:46:28 +1100 |
commit | d2c7abab397926735f5a41ca17fd280a409e2940 (patch) | |
tree | efe207d319eef0ac417295439593a7baf36e20c7 /qt/ScintillaEditBase/ScintillaEditBase.cpp | |
parent | 4ae76e455aec66826a284356d63cc2b5995c0b2f (diff) | |
download | scintilla-mirror-d2c7abab397926735f5a41ca17fd280a409e2940.tar.gz |
Implementation of MarginRightClick event.
Diffstat (limited to 'qt/ScintillaEditBase/ScintillaEditBase.cpp')
-rw-r--r-- | qt/ScintillaEditBase/ScintillaEditBase.cpp | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/qt/ScintillaEditBase/ScintillaEditBase.cpp b/qt/ScintillaEditBase/ScintillaEditBase.cpp index 9656af283..762cf8820 100644 --- a/qt/ScintillaEditBase/ScintillaEditBase.cpp +++ b/qt/ScintillaEditBase/ScintillaEditBase.cpp @@ -289,9 +289,7 @@ void ScintillaEditBase::mousePressEvent(QMouseEvent *event) return; } - bool button = event->button() == Qt::LeftButton; - - if (button) { + if (event->button() == Qt::LeftButton) { bool shift = QApplication::keyboardModifiers() & Qt::ShiftModifier; bool ctrl = QApplication::keyboardModifiers() & Qt::ControlModifier; #ifdef Q_WS_X11 @@ -304,6 +302,14 @@ void ScintillaEditBase::mousePressEvent(QMouseEvent *event) sqt->ButtonDown(pos, time.elapsed(), shift, ctrl, alt); } + + if (event->button() == Qt::RightButton) { + bool shift = QApplication::keyboardModifiers() & Qt::ShiftModifier; + bool ctrl = QApplication::keyboardModifiers() & Qt::ControlModifier; + bool alt = QApplication::keyboardModifiers() & Qt::AltModifier; + + sqt->RightButtonDownWithModifiers(pos, time.elapsed(), ScintillaQt::ModifierFlags(shift, ctrl, alt)); + } } void ScintillaEditBase::mouseReleaseEvent(QMouseEvent *event) @@ -350,9 +356,12 @@ void ScintillaEditBase::contextMenuEvent(QContextMenuEvent *event) { Point pos = PointFromQPoint(event->globalPos()); Point pt = PointFromQPoint(event->pos()); - if (!sqt->PointInSelection(pt)) + if (!sqt->PointInSelection(pt)) { sqt->SetEmptySelection(sqt->PositionFromLocation(pt)); - sqt->ContextMenu(pos); + } + if (sqt->ShouldDisplayPopup(pt)) { + sqt->ContextMenu(pos); + } } void ScintillaEditBase::dragEnterEvent(QDragEnterEvent *event) |