| <protocol name="custom"> |
| |
| <copyright> |
| Copyright (C) 2015 The Qt Company Ltd. |
| Contact: http://www.qt.io/licensing/ |
| |
| This file is part of the examples of the Qt Wayland module |
| |
| $QT_BEGIN_LICENSE:BSD$ |
| You may use this file under the terms of the BSD license as follows: |
| |
| "Redistribution and use in source and binary forms, with or without |
| modification, are permitted provided that the following conditions are |
| met: |
| * Redistributions of source code must retain the above copyright |
| notice, this list of conditions and the following disclaimer. |
| * Redistributions in binary form must reproduce the above copyright |
| notice, this list of conditions and the following disclaimer in |
| the documentation and/or other materials provided with the |
| distribution. |
| * Neither the name of The Qt Company Ltd nor the names of its |
| contributors may be used to endorse or promote products derived |
| from this software without specific prior written permission. |
| |
| |
| THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
| "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
| LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
| A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
| OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
| SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
| LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
| DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
| THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
| (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
| OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." |
| |
| $QT_END_LICENSE$ |
| </copyright> |
| |
| <interface name="qt_example_extension" version="1"> |
| |
| <description summary="Example Wayland extension"> |
| This example shows how to add extra functionality to Wayland |
| through an extension. This is the global object of the extension. |
| </description> |
| |
| <request name="register_surface"> |
| <description summary="Register a surface with the example extension"> |
| Inform the compositor that the client has a new surface that is |
| covered by the extension. |
| </description> |
| |
| <arg name="surface" type="object" interface="wl_surface"/> |
| </request> |
| |
| <request name="bounce"> |
| <description summary="Move the surface around for a little while"> |
| The compositor should perform a move animation on the surface. |
| </description> |
| <arg name="surface" type="object" interface="wl_surface"/> |
| <arg name="duration" type="uint" summary="duration in ms"/> |
| </request> |
| |
| <request name="spin"> |
| <description summary="Rotate the surface for a little while"> |
| The compositor should perform a rotating animation on the surface. |
| </description> |
| <arg name="surface" type="object" interface="wl_surface"/> |
| <arg name="duration" type="uint" summary="duration in ms"/> |
| </request> |
| |
| <event name="close"> |
| <description summary="close window"> |
| Ask the client to close the window for the surface. |
| </description> |
| <arg name="surface" type="object" interface="wl_surface"/> |
| </event> |
| |
| <event name="set_font_size"> |
| <description summary="change the font size"> |
| Ask the client to change the font size on the surface. |
| </description> |
| <arg name="surface" type="object" interface="wl_surface"/> |
| <arg name="pixel_size" type="uint"/> |
| </event> |
| |
| <enum name="decoration_state"> |
| <description summary="window decoration state"> |
| Describes whether window decorations should be shown. |
| </description> |
| <entry name="hidden" value="0" summary="Decorations are not shown"/> |
| <entry name="shown" value="1" summary="Decorations are shown"/> |
| </enum> |
| |
| <event name="set_window_decoration"> |
| <description summary="turn window decoration on/off"> |
| Ask the client to turn window decoration on/off on all surfaces. |
| </description> |
| |
| <arg name="state" type="uint"/> |
| </event> |
| |
| <request name="create_local_object"> |
| <description summary="Create a sily object"> |
| Create a new object that should be visualized by the compositor |
| </description> |
| <arg name="id" type="new_id" interface="qt_example_local_object"/> |
| <arg name="color" type = "string"/> |
| <arg name="text" type = "string"/> |
| </request> |
| </interface> |
| |
| <interface name="qt_example_local_object" version="1"> |
| <description summary="An object created on the client side"> |
| This object should have a visual representation in the compositor. |
| </description> |
| |
| <request name="set_text"> |
| <description summary="Change the text"> |
| Tell the compositor that the object's text is changed |
| </description> |
| <arg name="text" type="string"/> |
| </request> |
| |
| <event name="clicked"> |
| <description summary="The object was clicked"> |
| Notification to the client that the user clicked the representation of |
| the object in the compositor. |
| </description> |
| |
| </event> |
| |
| </interface> |
| |
| </protocol> |