diff m4/acinclude.m4 @ 29048:440ace36950e stable

avoid warnings about deprecated QWheelEvent::pos method * TerminalView.cpp (TerminalView::wheelEvent): Use QWheelEvent::position if available. * Canvas.cc (Canvas::canvasWheelEvent): Likewise. * acinclude.m4 (OCTAVE_CHECK_FUNC_QWHEELEVENT_POSITION): New macro. (OCTAVE_CHECK_QT_VERSION): Use it.
author John W. Eaton <jwe@octave.org>
date Wed, 11 Nov 2020 23:18:47 -0500
parents 94396ec1a89d
children 461bd8b9ce91
line wrap: on
line diff
--- a/m4/acinclude.m4	Wed Nov 11 23:08:08 2020 -0500
+++ b/m4/acinclude.m4	Wed Nov 11 23:18:47 2020 -0500
@@ -862,6 +862,36 @@
   fi
 ])
 dnl
+dnl Check whether the Qt class QWheelEvent has the position member function.
+dnl This member function was introduced in Qt 5.14.
+dnl
+AC_DEFUN([OCTAVE_CHECK_FUNC_QWHEELEVENT_POSITION], [
+  AC_CACHE_CHECK([for QWheelEvent::position in <QWheelEvent>],
+    [octave_cv_func_qwheelevent_position],
+    [AC_LANG_PUSH(C++)
+    ac_octave_save_CPPFLAGS="$CPPFLAGS"
+    ac_octave_save_CXXFLAGS="$CXXFLAGS"
+    CPPFLAGS="$QT_CPPFLAGS $CXXPICFLAG $CPPFLAGS"
+    CXXFLAGS="$CXXPICFLAG $CXXFLAGS"
+    AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
+        #include <QWheelEvent>
+        void foo (const QWheelEvent& ev)
+        {
+          ev.position ();
+        };
+        ]])],
+      octave_cv_func_qwheelevent_position=yes,
+      octave_cv_func_qwheelevent_position=no)
+    CPPFLAGS="$ac_octave_save_CPPFLAGS"
+    CXXFLAGS="$ac_octave_save_CXXFLAGS"
+    AC_LANG_POP(C++)
+  ])
+  if test $octave_cv_func_qwheelevent_position = yes; then
+    AC_DEFINE(HAVE_QWHEELEVENT_POSITION, 1,
+      [Define to 1 if you have the `QWheelEvent::position' member function.])
+  fi
+])
+dnl
 dnl Check whether Qt message handler function accepts QMessageLogContext
 dnl argument.  This change was introduced in Qt 5.
 dnl
@@ -2405,6 +2435,7 @@
     OCTAVE_CHECK_FUNC_QTABWIDGET_SETMOVABLE
     OCTAVE_CHECK_FUNC_QTMESSAGEHANDLER_ACCEPTS_QMESSAGELOGCONTEXT
     OCTAVE_CHECK_FUNC_QWHEELEVENT_ANGLEDELTA
+    OCTAVE_CHECK_FUNC_QWHEELEVENT_POSITION
     OCTAVE_CHECK_MEMBER_QFONT_FORCE_INTEGER_METRICS
     OCTAVE_CHECK_MEMBER_QFONT_MONOSPACE
     OCTAVE_HAVE_QGUIAPPLICATION