[Interest] Qt Quick 5.3.2 wheel event cascade

Jérôme Godbout jerome at bodycad.com
Wed Nov 12 15:43:05 CET 2014


Hi,
I posted to the forum and been ask to forward this on the mailing list.
Maybe someone can shed some light on the new behavior for the scrollwheel
and the Qt Quick Controls.
Here's the forum link: http://qt-project.org/forums/viewthread/48228/

This behavior changed from 5.3.0 (version we are using right now and we
stick until we can solve this) and the 5.3.2 (haven't check 5.3.1).

Let's assume the following (rectangle are only there to see the scroll view
effect, 2 sliders to see the under mouse effect):
import QtQuick 2.3
import QtQuick.Controls 1.2

Rectangle
{

ScrollView

{

width: 300
height: 300
Column
{

Rectangle { width: 500; height: 500; color: “red” }
Slider { }
Slider { }
Rectangle { width: 500; height: 500; color: “blue” }

}

}

}

If you use the scroll wheel to control the slider value, you will also
scroll the scroll view at the same time, This is not only annoying, but we
cannot accept the event in any way on the control. If like us you have 2D
UI on top of a 3D UI you scroll on a slider (or any widget for that
matter):

   1. the slider change value (for a single event, since it will no more
   under mouse soon enough inside the scroll view)
   2. the scroll view panel scroll up/down (changing what's under the mouse)
   3. the 3D view end up zooming in/out.

All on the same mouse event, making a big mess.

The only solution I have for now is to put a mouseArea under every control
and accept the mouse event or change the Qt Api to send the full event to
control and be able to accept it.

Have I miss something into the API that could help us to prevent this or
better control the wanted behavior between cascading or not of the event.

Thanks, reagards,
Jerome
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20141112/bd227d0b/attachment.html>


More information about the Interest mailing list