restricted gizmos to primary mouse button only

This commit is contained in:
itsmattkc
2019-01-18 11:54:29 +11:00
parent d0c9b0ba07
commit b2ff4db398
2 changed files with 19 additions and 11 deletions
+3
View File
@@ -48,7 +48,10 @@ EffectField::EffectField(EffectRow *parent, int t, const QString &i) :
case EFFECT_FIELD_STRING:
{
TextEditEx* edit = new TextEditEx();
// TODO magic number 2 - i'm not sure how to make this work otherwise though
edit->setFixedHeight(qCeil(edit->fontMetrics().lineSpacing()*config.effect_textbox_lines + edit->document()->documentMargin() + edit->document()->documentMargin() + 2));
edit->setUndoRedoEnabled(true);
ui_element = edit;
connect(edit, SIGNAL(textChanged()), this, SLOT(ui_element_change()));
+16 -11
View File
@@ -326,7 +326,7 @@ void ViewerWidget::mousePressEvent(QMouseEvent* event) {
seek_from_click(event->x());
} else if (event->buttons() & Qt::MiddleButton || panel_timeline->tool == TIMELINE_TOOL_HAND) {
container->dragScrollPress(event->pos());
} else {
} else if (event->buttons() & Qt::LeftButton) {
drag_start_x = event->pos().x();
drag_start_y = event->pos().y();
@@ -352,15 +352,17 @@ void ViewerWidget::mouseMoveEvent(QMouseEvent* event) {
seek_from_click(event->x());
} else if (event->buttons() & Qt::MiddleButton || panel_timeline->tool == TIMELINE_TOOL_HAND) {
container->dragScrollMove(event->pos());
} else if (gizmos == nullptr) {
QDrag* drag = new QDrag(this);
QMimeData* mimeData = new QMimeData;
mimeData->setText("h"); // QMimeData will fail without some kind of data
drag->setMimeData(mimeData);
drag->exec();
dragging = false;
} else {
move_gizmos(event, false);
} else if (event->buttons() & Qt::LeftButton) {
if (gizmos == nullptr) {
QDrag* drag = new QDrag(this);
QMimeData* mimeData = new QMimeData;
mimeData->setText("h"); // QMimeData will fail without some kind of data
drag->setMimeData(mimeData);
drag->exec();
dragging = false;
} else {
move_gizmos(event, false);
}
}
} else {
EffectGizmo* g = get_gizmo_from_mouse(event->pos().x(), event->pos().y());
@@ -373,7 +375,10 @@ void ViewerWidget::mouseMoveEvent(QMouseEvent* event) {
}
void ViewerWidget::mouseReleaseEvent(QMouseEvent *event) {
if (dragging && gizmos != nullptr && !(event->button() == Qt::MiddleButton || panel_timeline->tool == TIMELINE_TOOL_HAND)) {
if (dragging
&& gizmos != nullptr
&& event->button() == Qt::LeftButton
&& panel_timeline->tool != TIMELINE_TOOL_HAND) {
move_gizmos(event, true);
}
dragging = false;