From e43acc4f6d8f109ee93c3885766a006254ff6c5c Mon Sep 17 00:00:00 2001 From: peri4 Date: Fri, 1 May 2026 16:38:32 +0300 Subject: [PATCH] version 2.32.4 QAD::CursorOverrider now nave second argument in contructor - `bool condition = true` if it false, no operations performed --- CMakeLists.txt | 2 +- libs/utils/qad_types.cpp | 5 ++++- libs/utils/qad_types.h | 5 +++-- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index f1b1ef7..7ba909e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -4,7 +4,7 @@ cmake_policy(SET CMP0072 NEW) # FindOpenGL prefers GLVND by default project(QAD) set(QAD_MAJOR 2) set(QAD_MINOR 32) -set(QAD_REVISION 3) +set(QAD_REVISION 4) set(QAD_SUFFIX ) set(QAD_COMPANY SHS) set(QAD_DOMAIN org.SHS) diff --git a/libs/utils/qad_types.cpp b/libs/utils/qad_types.cpp index bd83d75..70ef31a 100644 --- a/libs/utils/qad_types.cpp +++ b/libs/utils/qad_types.cpp @@ -163,17 +163,20 @@ QString QAD::IODevice::toString() const { // QAD::CursorOverrider -QAD::CursorOverrider::CursorOverrider(const QCursor & c) { +QAD::CursorOverrider::CursorOverrider(const QCursor & c, bool condition): cond(condition) { + if (!cond) return; QApplication::setOverrideCursor(c); } QAD::CursorOverrider::~CursorOverrider() { + if (!cond) return; restore(); } void QAD::CursorOverrider::restore() { + if (!cond) return; if (!on) return; on = false; QApplication::restoreOverrideCursor(); diff --git a/libs/utils/qad_types.h b/libs/utils/qad_types.h index 047640c..787974d 100644 --- a/libs/utils/qad_types.h +++ b/libs/utils/qad_types.h @@ -130,12 +130,13 @@ struct QAD_UTILS_EXPORT MathMatrix { class QAD_UTILS_EXPORT CursorOverrider { public: - CursorOverrider(const QCursor & c = Qt::WaitCursor); + CursorOverrider(const QCursor & c = Qt::WaitCursor, bool condition = true); ~CursorOverrider(); void restore(); private: - bool on = true; + bool cond = true; + bool on = true; };