import QtQuick.tooling 1.2

// This file describes the plugin-supplied types contained in the library.
// It is used for QML tooling purposes only.
//
// This file was auto-generated by:
// 'qmlplugindump -nonrelocatable QtWayland.Compositor.WlShell 6.0'

Module {
    dependencies: ["QtQuick 2.0"]
    Component { name: "QWaylandCompositorExtension"; prototype: "QWaylandObject" }
    Component { name: "QWaylandObject"; prototype: "QObject" }
    Component {
        name: "QWaylandShell"
        prototype: "QWaylandCompositorExtension"
        Enum {
            name: "FocusPolicy"
            values: {
                "AutomaticFocus": 0,
                "ManualFocus": 1
            }
        }
        Property { name: "focusPolicy"; type: "FocusPolicy" }
    }
    Component {
        name: "QWaylandShellSurface"
        prototype: "QWaylandCompositorExtension"
        Property { name: "windowType"; type: "Qt::WindowType"; isReadonly: true }
    }
    Component {
        name: "QWaylandWlShell"
        prototype: "QWaylandShell"
        Signal {
            name: "wlShellSurfaceRequested"
            Parameter { name: "surface"; type: "QWaylandSurface"; isPointer: true }
            Parameter { name: "resource"; type: "QWaylandResource" }
        }
        Signal {
            name: "wlShellSurfaceCreated"
            Parameter { name: "shellSurface"; type: "QWaylandWlShellSurface"; isPointer: true }
        }
        Method { name: "closeAllPopups" }
    }
    Component {
        name: "QWaylandWlShellQuickExtension"
        defaultProperty: "data"
        prototype: "QWaylandWlShell"
        exports: ["QtWayland.Compositor.WlShell/WlShell 1.0"]
        exportMetaObjectRevisions: [0]
        Property { name: "data"; type: "QObject"; isList: true; isReadonly: true }
    }
    Component {
        name: "QWaylandWlShellSurface"
        defaultProperty: "data"
        prototype: "QWaylandShellSurface"
        exports: ["QtWayland.Compositor.WlShell/WlShellSurface 1.0"]
        exportMetaObjectRevisions: [0]
        Enum {
            name: "FullScreenMethod"
            values: {
                "DefaultFullScreen": 0,
                "ScaleFullScreen": 1,
                "DriverFullScreen": 2,
                "FillFullScreen": 3
            }
        }
        Enum {
            name: "ResizeEdge"
            values: {
                "NoneEdge": 0,
                "TopEdge": 1,
                "BottomEdge": 2,
                "LeftEdge": 4,
                "TopLeftEdge": 5,
                "BottomLeftEdge": 6,
                "RightEdge": 8,
                "TopRightEdge": 9,
                "BottomRightEdge": 10
            }
        }
        Property { name: "data"; type: "QObject"; isList: true; isReadonly: true }
        Property { name: "surface"; type: "QWaylandSurface"; isReadonly: true; isPointer: true }
        Property { name: "shell"; type: "QWaylandWlShell"; isReadonly: true; isPointer: true }
        Property { name: "title"; type: "string"; isReadonly: true }
        Property { name: "className"; type: "string"; isReadonly: true }
        Signal { name: "pong" }
        Signal {
            name: "startMove"
            Parameter { name: "seat"; type: "QWaylandSeat"; isPointer: true }
        }
        Signal {
            name: "startResize"
            Parameter { name: "seat"; type: "QWaylandSeat"; isPointer: true }
            Parameter { name: "edges"; type: "ResizeEdge" }
        }
        Signal { name: "setDefaultToplevel" }
        Signal {
            name: "setTransient"
            Parameter { name: "parentSurface"; type: "QWaylandSurface"; isPointer: true }
            Parameter { name: "relativeToParent"; type: "QPoint" }
            Parameter { name: "inactive"; type: "bool" }
        }
        Signal {
            name: "setFullScreen"
            Parameter { name: "method"; type: "FullScreenMethod" }
            Parameter { name: "framerate"; type: "uint" }
            Parameter { name: "output"; type: "QWaylandOutput"; isPointer: true }
        }
        Signal {
            name: "setPopup"
            Parameter { name: "seat"; type: "QWaylandSeat"; isPointer: true }
            Parameter { name: "parentSurface"; type: "QWaylandSurface"; isPointer: true }
            Parameter { name: "relativeToParent"; type: "QPoint" }
        }
        Signal {
            name: "setMaximized"
            Parameter { name: "output"; type: "QWaylandOutput"; isPointer: true }
        }
        Method { name: "ping" }
        Method {
            name: "initialize"
            Parameter { name: "shell"; type: "QWaylandWlShell"; isPointer: true }
            Parameter { name: "surface"; type: "QWaylandSurface"; isPointer: true }
            Parameter { name: "resource"; type: "QWaylandResource" }
        }
        Method {
            name: "sizeForResize"
            type: "QSize"
            Parameter { name: "size"; type: "QSizeF" }
            Parameter { name: "delta"; type: "QPointF" }
            Parameter { name: "edges"; type: "ResizeEdge" }
        }
        Method {
            name: "sendConfigure"
            Parameter { name: "size"; type: "QSize" }
            Parameter { name: "edges"; type: "ResizeEdge" }
        }
        Method { name: "sendPopupDone" }
    }
}
