[Interest] simulating pinch

Christopher Probst christop.probst at gmail.com
Wed Jan 10 23:01:00 CET 2018


Hi Shawn,

Based on the example you provided I wrote this QML code and wanted to see
if this does indeed simulate a pinch.

   //pinchArea is PinchArea QML type

   var pinchSequence = touchEvent( pinchArea );

      //first finger

   pinchSequence.press(0, pinchArea, 80, 80)

   pinchSequence.commit();


   pinchSequence.stationary(0)


   //second finger

   pinchSequence.press(1, pinchArea, 100, 100);

   pinchSequence.commit();

   //outward pinch or zoom

  pinchSequence.move(0, pinchArea, 70, 70);

  pinchSequence.move(1, pinchArea, 110, 110);

  pinchSequence.commit();




On 10 January 2018 at 15:18, Christopher Probst <christop.probst at gmail.com>
wrote:

> Thank-you Shawn, this is very helpful, I am going to try to use both
> testing approaches one in QML and one in C++. And I will post here what
> happens. But thanks again!
>
> On 10 January 2018 at 15:04, Shawn Rutledge <Shawn.Rutledge at qt.io> wrote:
>
>>
>> On Jan 9, 2018, at 18:21, Christopher Probst <christop.probst at gmail.com>
>> wrote:
>>
>> Hello,
>>
>> I am trying to use the QML test framework to simulate a pinch. The API
>> which is here
>>
>> http://doc.qt.io/qt-5/qml-qttest-testcase.html
>>
>> does not provide any methods to simulate a pinch. This seems like an
>> oversight.
>>
>> There is code that shows how to do this here:
>>
>> http://code.qt.io/cgit/qt/qtdeclarative.git/tree/tests/auto/
>> quick/qquickpincharea/tst_qquickpincharea.cpp
>>
>>
>> A pinch is a touch event with two touch points.  You can see how QTest::touchEvent
>> is started on line 222 for example, on line 234 it moves both touch points
>> simultaneously, etc.  So that’s an example of how to write a pinch test in
>> C++ (which I recommend, if you can: mainly because the C++ debugger is
>> nicer to use than the QML one, IMO, and tests always seem to end up needing
>> debugging at some point).
>>
>> If you want to write the test in QML, see http://doc.qt.io/qt-5/qml-
>> qttest-testcase.html#touchEvent-method and http://code.qt.io/cgit/qt/
>> qtdeclarative.git/tree/tests/auto/qmltest/events/tst_touch.qml#n146
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20180110/d8188768/attachment.html>


More information about the Interest mailing list