From 8c591d616358f45fec5bd601e220cd0dee161af6 Mon Sep 17 00:00:00 2001 From: Person Date: Tue, 29 Dec 2020 23:33:44 -0800 Subject: [PATCH] --User changes -Make a space bar press be the equivalent of a double click when inside of a spin box. This makes it easy to toggle without using the mouse. --- Source/Fractorium/DoubleSpinBox.cpp | 7 +++++++ Source/Fractorium/SpinBox.cpp | 13 +++++++++++++ 2 files changed, 20 insertions(+) diff --git a/Source/Fractorium/DoubleSpinBox.cpp b/Source/Fractorium/DoubleSpinBox.cpp index 28d1d31..adff3d5 100644 --- a/Source/Fractorium/DoubleSpinBox.cpp +++ b/Source/Fractorium/DoubleSpinBox.cpp @@ -310,6 +310,13 @@ void DoubleSpinBox::keyPressEvent(QKeyEvent* ke) ke->accept(); } + else if (ke->key() == Qt::Key_Space) + { + if (IsClose(m_DoubleClickLowVal, value())) + setValue(m_DoubleClickZero); + else + setValue(m_DoubleClickNonZero); + } else QDoubleSpinBox::keyPressEvent(ke); } diff --git a/Source/Fractorium/SpinBox.cpp b/Source/Fractorium/SpinBox.cpp index 31d6fb1..754d121 100644 --- a/Source/Fractorium/SpinBox.cpp +++ b/Source/Fractorium/SpinBox.cpp @@ -306,6 +306,19 @@ void SpinBox::keyPressEvent(QKeyEvent* ke) ke->accept(); } + else if (ke->key() == Qt::Key_Space) + { + if (m_DoubleClickLowVal == value()) + { + m_DoubleClickZeroEvent(this, m_DoubleClickZero); + setValue(m_DoubleClickZero); + } + else + { + m_DoubleClickNonZeroEvent(this, m_DoubleClickNonZero); + setValue(m_DoubleClickNonZero); + } + } else QSpinBox::keyPressEvent(ke); }