[Qt-interest] QGraphicsView with QGestureEvent
Elias Capito
elias.capito at gmail.com
Tue Dec 8 17:55:15 CET 2009
Hi,
I am using Qt 4.6.0 on Windows 7 x64, who is installed on a Dell Latitude XT
with the last N-Trig driver.
Is not related with the topic, but if you can answer, it would be good.
I have a question about the gesture QSwipeGesture and QTapAndHoldGesture,
the first are sometimes detect when I do strange gesture with many fingers,
but I don't know how :D and the second is never detect, but the match in
Windows is detect.
Best regards
Elias
2009/12/8 Raymond de Vries <reedev at xs4all.nl>
> Hi,
>
> Ok, I can confirm this here too with your sample application as well as my
> own application. Fyi, I am using my own built
> qt-everywhere-opensource-src-4.6.0 on Windows 7, Visual Studio 9 2008. I'm
> sorry that I did not get your (by Denis) first remark to grab the getures
> with the *viewport*, I was doing it on the graphicsview directly (which
> resulted in the same asserion btw).
>
> Any hints or tips are welcome.
>
> best regards
> Raymond
>
>
>
> Elias Capito wrote:
>
>>
>> Thanks for your reply Denis.
>>
>> I have add the all gesture to the viewport with
>> viewport()->grabGesture(...) in QGraphicsView and to my item, but when I
>> debug my application any gesture are delivered to the items.
>>
>> I have tested with QGraphicsView and my own herited class of
>> QGraphicsView.
>>
>> I have the following error when I make a gesture on an item and after i
>> touch the viewport (not an item) : *ASSERT: "!isEmpty<>" ..
>>
>> *
>> I add the source code* *in attachement*.
>> *
>>
>> Best regards
>>
>> 2009/12/7 Raymond de Vries <reedev at xs4all.nl <mailto:reedev at xs4all.nl>>
>>
>>
>> Hi Denis,
>>
>> I was also following this thread and I tried the same, with
>> QGraphicsWebView but even with your advice, I don't get the
>> gesture events...
>>
>> This is what you mean to do:
>> MTCanvas : public QGraphicsView
>> constructor
>> viewport()->setAttribute(Qt::WA_AcceptTouchEvents);
>> grabGesture(Qt::PanGesture);
>> grabGesture(Qt::PinchGesture);
>> grabGesture(Qt::SwipeGesture);
>> etc
>> MTCancas::event() does receive Gesture events
>>
>> MTWebBrowser : public QGraphicsWebView
>> constructor
>> setAcceptTouchEvents(true);
>> grabGesture(Qt::PanGesture);
>> grabGesture(Qt::PinchGesture);
>> grabGesture(Qt::SwipeGesture);
>> etc
>> MTWebBrowser::event(QEvent *event) does not receive Gesture events
>>
>> Is this supposed to work?
>>
>> Thanks a lot, best regards
>> Raymond
>>
>>
>>
>>
>>
>> Denis Dzyubenko wrote:
>>
>> Hi Elias,
>>
>> 2009/12/3 Elias Capito <elias.capito at gmail.com
>> <mailto:elias.capito at gmail.com>>:
>>
>>
>> I want to do a multitouch application.
>>
>> I have a problem with the QGestureEvent on a
>> QGraphicsObject item . I use
>> "grabGesture" on my item in constructor and i debug to see
>> the input event.
>>
>> When I run the application, the QGestureEvent never
>> appear, but if I use
>> QTouchEvent on item in place of QGestureEvent, with
>> "setAcceptTouchEvent",
>> in my debug I can see the touch event.
>>
>> If I use QGestureEvent with a simple QWidget and I run it,
>> I can see the
>> gesture event, so i think it's correct.
>>
>> It's the first time, that I use QGraphicsView, so I think
>> i have miss
>> something.
>>
>> Anyone have an idea, why the QGestureEvent not appear on
>> my item ?
>>
>>
>> right now to get gesture events on a QGraphicsObject it should
>> subscribe to a gesture _and_ the viewport of the graphicsview
>> should
>> also explicitly subscribe to the same gesture. Apparently it isn't
>> documented right now, sorry about that. Anyway, I this will be
>> improved in future versions of Qt so that you will not have to
>> do that
>> manually (thank god I forgot to document that, so we can
>> change the
>> behavior ;) )
>>
>> However for now you need to make sure the viewport also
>> subscribes to
>> the same gesture type.
>>
>>
>>
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.qt-project.org/pipermail/qt-interest-old/attachments/20091208/b4b14df8/attachment.html
More information about the Qt-interest-old
mailing list