<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html> <html lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <!-- qwaylandxdgshell.cpp --> <title>QWaylandXdgShell Class | Qt Wayland Compositor 5.12.6</title> <link rel="stylesheet" type="text/css" href="style/offline-simple.css" /> <script type="text/javascript"> document.getElementsByTagName("link").item(0).setAttribute("href", "style/offline.css"); // loading style sheet breaks anchors that were jumped to before // so force jumping to anchor again setTimeout(function() { var anchor = location.hash; // need to jump to different anchor first (e.g. none) location.hash = "#"; setTimeout(function() { location.hash = anchor; }, 0); }, 0); </script> </head> <body> <div class="header" id="qtdocheader"> <div class="main"> <div class="main-rounded"> <div class="navigationbar"> <table><tr> <td >Qt 5.12</td><td ><a href="qtwaylandcompositor-index.html">Qt Wayland Compositor</a></td><td ><a href="qtwaylandcompositor-module.html">C++ Classes</a></td><td >QWaylandXdgShell</td></tr></table><table class="buildversion"><tr> <td id="buildversion" width="100%" align="right"><a href="qtwaylandcompositor-index.html">Qt 5.12.6 Reference Documentation</a></td> </tr></table> </div> </div> <div class="content"> <div class="line"> <div class="content mainContent"> <div class="sidebar"> <div class="toc"> <h3><a name="toc">Contents</a></h3> <ul> <li class="level1"><a href="#public-functions">Public Functions</a></li> <li class="level1"><a href="#public-slots">Public Slots</a></li> <li class="level1"><a href="#signals">Signals</a></li> <li class="level1"><a href="#static-public-members">Static Public Members</a></li> <li class="level1"><a href="#details">Detailed Description</a></li> </ul> </div> <div class="sidebar-content" id="sidebar-content"></div></div> <h1 class="title">QWaylandXdgShell Class</h1> <!-- $$$QWaylandXdgShell-brief --> <p>The <a href="qwaylandxdgshell.html">QWaylandXdgShell</a> class is an extension for desktop-style user interfaces. <a href="#details">More...</a></p> <!-- @@@QWaylandXdgShell --> <div class="table"><table class="alignedsummary"> <tr><td class="memItemLeft rightAlign topAlign"> Header:</td><td class="memItemRight bottomAlign"> <span class="preprocessor">#include <QWaylandXdgShell></span> </td></tr><tr><td class="memItemLeft rightAlign topAlign"> qmake:</td><td class="memItemRight bottomAlign"> QT += waylandcompositor</td></tr><tr><td class="memItemLeft rightAlign topAlign"> Since:</td><td class="memItemRight bottomAlign"> Qt 5.12</td></tr></table></div><ul> <li><a href="qwaylandxdgshell-members.html">List of all members, including inherited members</a></li> </ul> <a name="public-functions"></a> <h2 id="public-functions">Public Functions</h2> <div class="table"><table class="alignedsummary"> <tr><td class="memItemLeft rightAlign topAlign"> </td><td class="memItemRight bottomAlign"><b><a href="qwaylandxdgshell.html#QWaylandXdgShell">QWaylandXdgShell</a></b>()</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> </td><td class="memItemRight bottomAlign"><b><a href="qwaylandxdgshell.html#QWaylandXdgShell-1">QWaylandXdgShell</a></b>(QWaylandCompositor *<i>compositor</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="qwaylandxdgshell.html#initialize">initialize</a></b>()</td></tr> </table></div> <a name="public-slots"></a> <h2 id="public-slots">Public Slots</h2> <div class="table"><table class="alignedsummary"> <tr><td class="memItemLeft rightAlign topAlign"> uint </td><td class="memItemRight bottomAlign"><b><a href="qwaylandxdgshell.html#ping">ping</a></b>(QWaylandClient *<i>client</i>)</td></tr> </table></div> <a name="signals"></a> <h2 id="signals">Signals</h2> <div class="table"><table class="alignedsummary"> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="qwaylandxdgshell.html#pong">pong</a></b>(uint <i>serial</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="qwaylandxdgshell.html#popupCreated">popupCreated</a></b>(QWaylandXdgPopup *<i>popup</i>, QWaylandXdgSurface *<i>xdgSurface</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="qwaylandxdgshell.html#toplevelCreated">toplevelCreated</a></b>(QWaylandXdgToplevel *<i>toplevel</i>, QWaylandXdgSurface *<i>xdgSurface</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="qwaylandxdgshell.html#xdgSurfaceCreated">xdgSurfaceCreated</a></b>(QWaylandXdgSurface *<i>xdgSurface</i>)</td></tr> </table></div> <a name="static-public-members"></a> <h2 id="static-public-members">Static Public Members</h2> <div class="table"><table class="alignedsummary"> <tr><td class="memItemLeft rightAlign topAlign"> const struct wl_interface *</td><td class="memItemRight bottomAlign"><b><a href="qwaylandxdgshell.html#interface">interface</a></b>()</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> QByteArray </td><td class="memItemRight bottomAlign"><b><a href="qwaylandxdgshell.html#interfaceName">interfaceName</a></b>()</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> const QMetaObject </td><td class="memItemRight bottomAlign"><b><a href="qwaylandxdgshell.html#staticMetaObject-var">staticMetaObject</a></b></td></tr> </table></div> <a name="details"></a> <!-- $$$QWaylandXdgShell-description --> <div class="descr"> <h2 id="details">Detailed Description</h2> <p>The <a href="qwaylandxdgshell.html">QWaylandXdgShell</a> class is an extension for desktop-style user interfaces.</p> <p>The <a href="qwaylandxdgshell.html">QWaylandXdgShell</a> extension provides a way to associate a <a href="qwaylandxdgtoplevel.html">QWaylandXdgToplevel</a> or <a href="qwaylandxdgpopup.html">QWaylandXdgPopup</a> with a regular Wayland surface. Using the <a href="qwaylandxdgtoplevel.html">QWaylandXdgToplevel</a> interface, the client can request that the surface is resized, moved, and so on.</p> <p><a href="qwaylandxdgshell.html">QWaylandXdgShell</a> corresponds to the Wayland interface, <code>xdg_shell</code>.</p> </div> <!-- @@@QWaylandXdgShell --> <div class="func"> <h2>Member Function Documentation</h2> <!-- $$$QWaylandXdgShell[overload1]$$$QWaylandXdgShell --> <h3 class="fn" id="QWaylandXdgShell"><a name="QWaylandXdgShell"></a>QWaylandXdgShell::<span class="name">QWaylandXdgShell</span>()</h3> <p>Constructs a <a href="qwaylandxdgshell.html">QWaylandXdgShell</a> object.</p> <!-- @@@QWaylandXdgShell --> <!-- $$$QWaylandXdgShell$$$QWaylandXdgShellQWaylandCompositor* --> <h3 class="fn" id="QWaylandXdgShell-1"><a name="QWaylandXdgShell-1"></a>QWaylandXdgShell::<span class="name">QWaylandXdgShell</span>(<span class="type"><a href="qwaylandcompositor.html">QWaylandCompositor</a></span> *<i>compositor</i>)</h3> <p>Constructs a <a href="qwaylandxdgshell.html">QWaylandXdgShell</a> object for the provided <i>compositor</i>.</p> <!-- @@@QWaylandXdgShell --> <!-- $$$initialize[overload1]$$$initialize --> <h3 class="fn" id="initialize"><a name="initialize"></a><span class="type">void</span> QWaylandXdgShell::<span class="name">initialize</span>()</h3> <p>Initializes the shell extension.</p> <!-- @@@initialize --> <!-- $$$interface[overload1]$$$interface --> <h3 class="fn" id="interface"><a name="interface"></a><code>[static] </code>const <span class="type">struct</span> <span class="type">wl_interface</span> *QWaylandXdgShell::<span class="name">interface</span>()</h3> <p>Returns the Wayland interface for the <a href="qwaylandxdgshell.html">QWaylandXdgShell</a>.</p> <!-- @@@interface --> <!-- $$$interfaceName[overload1]$$$interfaceName --> <h3 class="fn" id="interfaceName"><a name="interfaceName"></a><code>[static] </code><span class="type">QByteArray</span> QWaylandXdgShell::<span class="name">interfaceName</span>()</h3> <!-- @@@interfaceName --> <!-- $$$ping[overload1]$$$pingQWaylandClient* --> <h3 class="fn" id="ping"><a name="ping"></a><code>[slot] </code><span class="type">uint</span> QWaylandXdgShell::<span class="name">ping</span>(<span class="type"><a href="qwaylandclient.html">QWaylandClient</a></span> *<i>client</i>)</h3> <p>Sends a ping event to <i>client</i>. If the client replies to the event the <a href="qwaylandxdgshell.html#pong">pong</a> signal will be emitted.</p> <!-- @@@ping --> <!-- $$$pong[overload1]$$$ponguint --> <h3 class="fn" id="pong"><a name="pong"></a><code>[signal] </code><span class="type">void</span> QWaylandXdgShell::<span class="name">pong</span>(<span class="type">uint</span> <i>serial</i>)</h3> <p>This signal is emitted when the client has responded to a ping event with serial, <i>serial</i>.</p> <p><b>See also </b><a href="qwaylandxdgshell.html#ping">QWaylandXdgShell::ping</a>().</p> <!-- @@@pong --> <!-- $$$popupCreated[overload1]$$$popupCreatedQWaylandXdgPopup*QWaylandXdgSurface* --> <h3 class="fn" id="popupCreated"><a name="popupCreated"></a><code>[signal] </code><span class="type">void</span> QWaylandXdgShell::<span class="name">popupCreated</span>(<span class="type"><a href="qwaylandxdgpopup.html">QWaylandXdgPopup</a></span> *<i>popup</i>, <span class="type"><a href="qwaylandxdgsurface.html">QWaylandXdgSurface</a></span> *<i>xdgSurface</i>)</h3> <p>This signal is emitted when the client has created a <code>xdg_popup</code>. A common use case is to let the handler of this signal instantiate a QWaylandShellSurfaceItem or <a href="qwaylandquickitem.html">QWaylandQuickItem</a> for displaying <i>popup</i> in a QtQuick scene.</p> <p><i>xdgSurface</i> is the <a href="qml-qtwayland-compositor-xdgsurface.html">XdgSurface</a> <i>popup</i> is the role object for.</p> <!-- @@@popupCreated --> <!-- $$$toplevelCreated[overload1]$$$toplevelCreatedQWaylandXdgToplevel*QWaylandXdgSurface* --> <h3 class="fn" id="toplevelCreated"><a name="toplevelCreated"></a><code>[signal] </code><span class="type">void</span> QWaylandXdgShell::<span class="name">toplevelCreated</span>(<span class="type"><a href="qwaylandxdgtoplevel.html">QWaylandXdgToplevel</a></span> *<i>toplevel</i>, <span class="type"><a href="qwaylandxdgsurface.html">QWaylandXdgSurface</a></span> *<i>xdgSurface</i>)</h3> <p>This signal is emitted when the client has created a <code>xdg_toplevel</code>. A common use case is to let the handler of this signal instantiate a QWaylandShellSurfaceItem or <a href="qwaylandquickitem.html">QWaylandQuickItem</a> for displaying <i>toplevel</i> in a QtQuick scene.</p> <p><i>xdgSurface</i> is the <a href="qml-qtwayland-compositor-xdgsurface.html">XdgSurface</a> <i>toplevel</i> is the role object for.</p> <!-- @@@toplevelCreated --> <!-- $$$xdgSurfaceCreated[overload1]$$$xdgSurfaceCreatedQWaylandXdgSurface* --> <h3 class="fn" id="xdgSurfaceCreated"><a name="xdgSurfaceCreated"></a><code>[signal] </code><span class="type">void</span> QWaylandXdgShell::<span class="name">xdgSurfaceCreated</span>(<span class="type"><a href="qwaylandxdgsurface.html">QWaylandXdgSurface</a></span> *<i>xdgSurface</i>)</h3> <p>This signal is emitted when the client has created a <code>xdg_surface</code>. Note that <i>xdgSurface</i> is not mapped, i.e. according to the <code>xdg-shell</code> protocol it should not be displayed, until it has received a role object.</p> <p><b>See also </b><a href="qwaylandxdgshell.html#toplevelCreated">toplevelCreated</a>() and <a href="qwaylandxdgshell.html#popupCreated">popupCreated</a>().</p> <!-- @@@xdgSurfaceCreated --> </div> </div> </div> </div> </div> </div> <div class="footer"> <p> <acronym title="Copyright">©</acronym> 2019 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners.<br/> The documentation provided herein is licensed under the terms of the <a href="http://www.gnu.org/licenses/fdl.html">GNU Free Documentation License version 1.3</a> as published by the Free Software Foundation.<br/> Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners. </p> </div> </body> </html>