Add option to disable resize delay feature by setting the delay to zero.

This commit is contained in:
Frank Palazzolo 2023-10-24 13:32:26 -04:00
parent a9bfcab4b9
commit 58197d19c5
2 changed files with 9 additions and 4 deletions

View File

@ -1370,8 +1370,13 @@ void JKQTPlotter::resizeEvent(QResizeEvent *event) {
sizeChanged=true; sizeChanged=true;
} }
if (sizeChanged) { if (sizeChanged) {
resizeTimer.setSingleShot(true); if (jkqtp_RESIZE_DELAY == 0) {
resizeTimer.start(jkqtp_RESIZE_DELAY); // Do this now
delayedResizeEvent();
} else {
resizeTimer.setSingleShot(true);
resizeTimer.start(jkqtp_RESIZE_DELAY);
}
} }
//updateGeometry(); //updateGeometry();

View File

@ -364,7 +364,7 @@ JKQTPLOTTER_LIB_EXPORT void initJKQTPlotterResources();
class JKQTPLOTTER_LIB_EXPORT JKQTPlotter: public QWidget { class JKQTPLOTTER_LIB_EXPORT JKQTPlotter: public QWidget {
Q_OBJECT Q_OBJECT
public: public:
/** \brief sets the global resize delay in milliseconds \a delayMS. After calling this function all plots will use the new delay. This function is thread-safe! /** \brief sets the global resize delay in milliseconds \a delayMS. After calling this function all plots will use the new delay. Setting the the delay to 0 disables the delayed resize feature. This function is thread-safe!
* *
* \see jkqtp_RESIZE_DELAY, setGlobalResizeDelay(), getGlobalResizeDelay(), resizeTimer */ * \see jkqtp_RESIZE_DELAY, setGlobalResizeDelay(), getGlobalResizeDelay(), resizeTimer */
static void setGlobalResizeDelay(int delayMS); static void setGlobalResizeDelay(int delayMS);
@ -1687,7 +1687,7 @@ class JKQTPLOTTER_LIB_EXPORT JKQTPlotter: public QWidget {
*/ */
QTimer resizeTimer; QTimer resizeTimer;
/** \brief delay for resizing in milliseconds /** \brief delay for resizing in milliseconds. If set to 0, resize delay is disabled and resizeTimer is unused.
* *
* \see jkqtp_RESIZE_DELAY, setGlobalResizeDelay(), getGlobalResizeDelay(), resizeTimer * \see jkqtp_RESIZE_DELAY, setGlobalResizeDelay(), getGlobalResizeDelay(), resizeTimer
*/ */