From d396f66bf0bc8d4c777c744efe77ccb5b28b385f Mon Sep 17 00:00:00 2001 From: Neil Date: Thu, 15 Aug 2013 15:13:15 +1000 Subject: Feature: [feature-requests:#1007]. Option to allow mouse selection to switch to rectangular by pressing Alt after start of gesture. From Neomi. --- qt/ScintillaEditBase/ScintillaEditBase.cpp | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) (limited to 'qt/ScintillaEditBase/ScintillaEditBase.cpp') diff --git a/qt/ScintillaEditBase/ScintillaEditBase.cpp b/qt/ScintillaEditBase/ScintillaEditBase.cpp index e5de593a8..37dc888e4 100644 --- a/qt/ScintillaEditBase/ScintillaEditBase.cpp +++ b/qt/ScintillaEditBase/ScintillaEditBase.cpp @@ -319,7 +319,20 @@ void ScintillaEditBase::mouseDoubleClickEvent(QMouseEvent *event) void ScintillaEditBase::mouseMoveEvent(QMouseEvent *event) { Point pos = PointFromQPoint(event->pos()); - sqt->ButtonMove(pos); + + bool shift = QApplication::keyboardModifiers() & Qt::ShiftModifier; + bool ctrl = QApplication::keyboardModifiers() & Qt::ControlModifier; +#ifdef Q_WS_X11 + // On X allow choice of rectangular modifier since most window + // managers grab alt + click for moving windows. + bool alt = QApplication::keyboardModifiers() & modifierTranslated(sqt->rectangularSelectionModifier); +#else + bool alt = QApplication::keyboardModifiers() & Qt::AltModifier; +#endif + + int modifiers = (shift ? SCI_SHIFT : 0) | (ctrl ? SCI_CTRL : 0) | (alt ? SCI_ALT : 0); + + sqt->ButtonMoveWithModifiers(pos, modifiers); } void ScintillaEditBase::contextMenuEvent(QContextMenuEvent *event) -- cgit v1.2.3