import QtQuick.tooling 1.0

// This file describes the plugin-supplied types contained in the library.
// It is used for QML tooling purposes only.

Module {
    Component {
        name: "QDeclarativeGestureArea"
        defaultProperty: "data"
        prototype: "QDeclarativeItem"
        exports: [
            "Qt.labs.gestures/GestureArea 1.0"
        ]
        Property { name: "gesture"; type: "QGesture"; isReadonly: true; isPointer: true }
        Signal { name: "tap" }
        Signal { name: "tapAndHold" }
        Signal { name: "pan" }
        Signal { name: "pinch" }
        Signal { name: "swipe" }
        Signal { name: "gesture" }
    }
    Component {
        name: "QGesture"
        prototype: "QObject"
        exports: [
            "Qt.labs.gestures/Gesture 1.0"
        ]
        Property { name: "state"; type: "Qt::GestureState"; isReadonly: true }
        Property { name: "gestureType"; type: "Qt::GestureType"; isReadonly: true }
        Property { name: "gestureCancelPolicy"; type: "QGesture::GestureCancelPolicy" }
        Property { name: "hotSpot"; type: "QPointF" }
        Property { name: "hasHotSpot"; type: "bool"; isReadonly: true }
    }
    Component {
        name: "QPanGesture"
        prototype: "QGesture"
        exports: [
            "Qt.labs.gestures/PanGesture 1.0"
        ]
        Property { name: "lastOffset"; type: "QPointF" }
        Property { name: "offset"; type: "QPointF" }
        Property { name: "delta"; type: "QPointF"; isReadonly: true }
        Property { name: "acceleration"; type: "qreal" }
        Property { name: "horizontalVelocity"; type: "qreal" }
        Property { name: "verticalVelocity"; type: "qreal" }
    }
    Component {
        name: "QPinchGesture"
        prototype: "QGesture"
        exports: [
            "Qt.labs.gestures/PinchGesture 1.0"
        ]
        Enum {
            name: "ChangeFlag"
            values: {
                "ScaleFactorChanged": 1,
                "RotationAngleChanged": 2,
                "CenterPointChanged": 4
            }
        }
        Enum {
            name: "ChangeFlags"
            values: {
                "ScaleFactorChanged": 1,
                "RotationAngleChanged": 2,
                "CenterPointChanged": 4
            }
        }
        Property { name: "totalChangeFlags"; type: "ChangeFlags" }
        Property { name: "changeFlags"; type: "ChangeFlags" }
        Property { name: "totalScaleFactor"; type: "qreal" }
        Property { name: "lastScaleFactor"; type: "qreal" }
        Property { name: "scaleFactor"; type: "qreal" }
        Property { name: "totalRotationAngle"; type: "qreal" }
        Property { name: "lastRotationAngle"; type: "qreal" }
        Property { name: "rotationAngle"; type: "qreal" }
        Property { name: "startCenterPoint"; type: "QPointF" }
        Property { name: "lastCenterPoint"; type: "QPointF" }
        Property { name: "centerPoint"; type: "QPointF" }
    }
    Component {
        name: "QSwipeGesture"
        prototype: "QGesture"
        exports: [
            "Qt.labs.gestures/SwipeGesture 1.0"
        ]
        Enum {
            name: "SwipeDirection"
            values: {
                "NoDirection": 0,
                "Left": 1,
                "Right": 2,
                "Up": 3,
                "Down": 4
            }
        }
        Property { name: "horizontalDirection"; type: "SwipeDirection"; isReadonly: true }
        Property { name: "verticalDirection"; type: "SwipeDirection"; isReadonly: true }
        Property { name: "swipeAngle"; type: "qreal" }
        Property { name: "velocity"; type: "qreal" }
    }
    Component {
        name: "QTapAndHoldGesture"
        prototype: "QGesture"
        exports: [
            "Qt.labs.gestures/TapAndHoldGesture 1.0"
        ]
        Property { name: "position"; type: "QPointF" }
    }
    Component {
        name: "QTapGesture"
        prototype: "QGesture"
        exports: [
            "Qt.labs.gestures/TapGesture 1.0"
        ]
        Property { name: "position"; type: "QPointF" }
    }
}
