mirror of
https://github.com/neogeek23/rusty_snek_gaem.git
synced 2026-02-04 11:08:40 +00:00
73 lines
22 KiB
HTML
73 lines
22 KiB
HTML
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `Environment` struct in crate `smithay_client_toolkit`."><meta name="keywords" content="rust, rustlang, rust-lang, Environment"><title>smithay_client_toolkit::Environment - Rust</title><link rel="stylesheet" type="text/css" href="../normalize.css"><link rel="stylesheet" type="text/css" href="../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../dark.css"><link rel="stylesheet" type="text/css" href="../light.css" id="themeStyle"><script src="../storage.js"></script></head><body class="rustdoc struct"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">☰</div><p class='location'>Struct Environment</p><div class="sidebar-elems"><div class="block items"><a class="sidebar-title" href="#fields">Fields</a><div class="sidebar-links"><a href="#structfield.manager">manager</a><a href="#structfield.compositor">compositor</a><a href="#structfield.subcompositor">subcompositor</a><a href="#structfield.shell">shell</a><a href="#structfield.shm">shm</a><a href="#structfield.data_device_manager">data_device_manager</a><a href="#structfield.outputs">outputs</a><a href="#structfield.decorations_mgr">decorations_mgr</a></div><a class="sidebar-title" href="#methods">Methods</a><div class="sidebar-links"><a href="#method.from_registry">from_registry</a><a href="#method.from_registry_with_cb">from_registry_with_cb</a><a href="#method.shm_formats">shm_formats</a></div><a class="sidebar-title" href="#synthetic-implementations">Auto Trait Implementations</a><div class="sidebar-links"><a href="#impl-Send">Send</a><a href="#impl-Sync">Sync</a></div></div><p class='location'><a href='index.html'>smithay_client_toolkit</a></p><script>window.sidebarCurrent = {name: 'Environment', ty: 'struct', relpath: ''};</script><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><input class="search-input" name="search" autocomplete="off" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><a id="settings-menu" href="../settings.html"><img src="../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='in-band'>Struct <a href='index.html'>smithay_client_toolkit</a>::<wbr><a class="struct" href=''>Environment</a></span><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>−</span>]</a></span><a class='srclink' href='../src/smithay_client_toolkit/env.rs.html#47-69' title='goto source code'>[src]</a></span></h1><div class="docblock type-decl"><pre class='rust struct'>pub struct Environment {
|
||
pub manager: <a class="struct" href="../smithay_client_toolkit/reexports/client/struct.GlobalManager.html" title="struct smithay_client_toolkit::reexports::client::GlobalManager">GlobalManager</a>,
|
||
pub compositor: <a class="struct" href="../smithay_client_toolkit/reexports/client/struct.Proxy.html" title="struct smithay_client_toolkit::reexports::client::Proxy">Proxy</a><<a class="struct" href="../smithay_client_toolkit/reexports/client/protocol/wl_compositor/struct.WlCompositor.html" title="struct smithay_client_toolkit::reexports::client::protocol::wl_compositor::WlCompositor">WlCompositor</a>>,
|
||
pub subcompositor: <a class="struct" href="../smithay_client_toolkit/reexports/client/struct.Proxy.html" title="struct smithay_client_toolkit::reexports::client::Proxy">Proxy</a><<a class="struct" href="../smithay_client_toolkit/reexports/client/protocol/wl_subcompositor/struct.WlSubcompositor.html" title="struct smithay_client_toolkit::reexports::client::protocol::wl_subcompositor::WlSubcompositor">WlSubcompositor</a>>,
|
||
pub shell: <a class="enum" href="../smithay_client_toolkit/enum.Shell.html" title="enum smithay_client_toolkit::Shell">Shell</a>,
|
||
pub shm: <a class="struct" href="../smithay_client_toolkit/reexports/client/struct.Proxy.html" title="struct smithay_client_toolkit::reexports::client::Proxy">Proxy</a><<a class="struct" href="../smithay_client_toolkit/reexports/client/protocol/wl_shm/struct.WlShm.html" title="struct smithay_client_toolkit::reexports::client::protocol::wl_shm::WlShm">WlShm</a>>,
|
||
pub data_device_manager: <a class="struct" href="../smithay_client_toolkit/reexports/client/struct.Proxy.html" title="struct smithay_client_toolkit::reexports::client::Proxy">Proxy</a><<a class="struct" href="../smithay_client_toolkit/reexports/client/protocol/wl_data_device_manager/struct.WlDataDeviceManager.html" title="struct smithay_client_toolkit::reexports::client::protocol::wl_data_device_manager::WlDataDeviceManager">WlDataDeviceManager</a>>,
|
||
pub outputs: <a class="struct" href="../smithay_client_toolkit/output/struct.OutputMgr.html" title="struct smithay_client_toolkit::output::OutputMgr">OutputMgr</a>,
|
||
pub decorations_mgr: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../smithay_client_toolkit/reexports/client/struct.Proxy.html" title="struct smithay_client_toolkit::reexports::client::Proxy">Proxy</a><<a class="struct" href="../smithay_client_toolkit/reexports/protocols/unstable/xdg_decoration/v1/client/zxdg_decoration_manager_v1/struct.ZxdgDecorationManagerV1.html" title="struct smithay_client_toolkit::reexports::protocols::unstable::xdg_decoration::v1::client::zxdg_decoration_manager_v1::ZxdgDecorationManagerV1">ZxdgDecorationManagerV1</a>>>,
|
||
// some fields omitted
|
||
}</pre></div><div class='docblock'><p>A convenience for global management</p>
|
||
<p>This type provides convenience utilities for writing wayland
|
||
client apps, by auto-binding a large portion of the global
|
||
objects you'll likely need to write your app. This is mostly
|
||
provided as a mean to factor a consequent amount of dumb,
|
||
redundant code.</p>
|
||
</div><h2 id='fields' class='fields small-section-header'>
|
||
Fields<a href='#fields' class='anchor'></a></h2><span id="structfield.manager" class="structfield small-section-header">
|
||
<a href="#structfield.manager" class="anchor field"></a>
|
||
<span id="manager.v" class='invisible'>
|
||
<code>manager: <a class="struct" href="../smithay_client_toolkit/reexports/client/struct.GlobalManager.html" title="struct smithay_client_toolkit::reexports::client::GlobalManager">GlobalManager</a></code>
|
||
</span></span><div class='docblock'><p>The underlying GlobalManager wrapping your registry</p>
|
||
</div><span id="structfield.compositor" class="structfield small-section-header">
|
||
<a href="#structfield.compositor" class="anchor field"></a>
|
||
<span id="compositor.v" class='invisible'>
|
||
<code>compositor: <a class="struct" href="../smithay_client_toolkit/reexports/client/struct.Proxy.html" title="struct smithay_client_toolkit::reexports::client::Proxy">Proxy</a><<a class="struct" href="../smithay_client_toolkit/reexports/client/protocol/wl_compositor/struct.WlCompositor.html" title="struct smithay_client_toolkit::reexports::client::protocol::wl_compositor::WlCompositor">WlCompositor</a>></code>
|
||
</span></span><div class='docblock'><p>The compositor global, used to create surfaces</p>
|
||
</div><span id="structfield.subcompositor" class="structfield small-section-header">
|
||
<a href="#structfield.subcompositor" class="anchor field"></a>
|
||
<span id="subcompositor.v" class='invisible'>
|
||
<code>subcompositor: <a class="struct" href="../smithay_client_toolkit/reexports/client/struct.Proxy.html" title="struct smithay_client_toolkit::reexports::client::Proxy">Proxy</a><<a class="struct" href="../smithay_client_toolkit/reexports/client/protocol/wl_subcompositor/struct.WlSubcompositor.html" title="struct smithay_client_toolkit::reexports::client::protocol::wl_subcompositor::WlSubcompositor">WlSubcompositor</a>></code>
|
||
</span></span><div class='docblock'><p>The subcompositor global, used to create subsurfaces</p>
|
||
</div><span id="structfield.shell" class="structfield small-section-header">
|
||
<a href="#structfield.shell" class="anchor field"></a>
|
||
<span id="shell.v" class='invisible'>
|
||
<code>shell: <a class="enum" href="../smithay_client_toolkit/enum.Shell.html" title="enum smithay_client_toolkit::Shell">Shell</a></code>
|
||
</span></span><div class='docblock'><p>The shell global, used make your surfaces into windows</p>
|
||
<p>This tries to bind using the xdg_shell protocol, and fallbacks
|
||
to wl_shell if it fails</p>
|
||
</div><span id="structfield.shm" class="structfield small-section-header">
|
||
<a href="#structfield.shm" class="anchor field"></a>
|
||
<span id="shm.v" class='invisible'>
|
||
<code>shm: <a class="struct" href="../smithay_client_toolkit/reexports/client/struct.Proxy.html" title="struct smithay_client_toolkit::reexports::client::Proxy">Proxy</a><<a class="struct" href="../smithay_client_toolkit/reexports/client/protocol/wl_shm/struct.WlShm.html" title="struct smithay_client_toolkit::reexports::client::protocol::wl_shm::WlShm">WlShm</a>></code>
|
||
</span></span><div class='docblock'><p>The SHM global, to create shared memory buffers</p>
|
||
</div><span id="structfield.data_device_manager" class="structfield small-section-header">
|
||
<a href="#structfield.data_device_manager" class="anchor field"></a>
|
||
<span id="data_device_manager.v" class='invisible'>
|
||
<code>data_device_manager: <a class="struct" href="../smithay_client_toolkit/reexports/client/struct.Proxy.html" title="struct smithay_client_toolkit::reexports::client::Proxy">Proxy</a><<a class="struct" href="../smithay_client_toolkit/reexports/client/protocol/wl_data_device_manager/struct.WlDataDeviceManager.html" title="struct smithay_client_toolkit::reexports::client::protocol::wl_data_device_manager::WlDataDeviceManager">WlDataDeviceManager</a>></code>
|
||
</span></span><div class='docblock'><p>The data device manager, used to handle drag&drop and selection
|
||
copy/paste</p>
|
||
</div><span id="structfield.outputs" class="structfield small-section-header">
|
||
<a href="#structfield.outputs" class="anchor field"></a>
|
||
<span id="outputs.v" class='invisible'>
|
||
<code>outputs: <a class="struct" href="../smithay_client_toolkit/output/struct.OutputMgr.html" title="struct smithay_client_toolkit::output::OutputMgr">OutputMgr</a></code>
|
||
</span></span><div class='docblock'><p>A manager for handling the advertized outputs</p>
|
||
</div><span id="structfield.decorations_mgr" class="structfield small-section-header">
|
||
<a href="#structfield.decorations_mgr" class="anchor field"></a>
|
||
<span id="decorations_mgr.v" class='invisible'>
|
||
<code>decorations_mgr: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../smithay_client_toolkit/reexports/client/struct.Proxy.html" title="struct smithay_client_toolkit::reexports::client::Proxy">Proxy</a><<a class="struct" href="../smithay_client_toolkit/reexports/protocols/unstable/xdg_decoration/v1/client/zxdg_decoration_manager_v1/struct.ZxdgDecorationManagerV1.html" title="struct smithay_client_toolkit::reexports::protocols::unstable::xdg_decoration::v1::client::zxdg_decoration_manager_v1::ZxdgDecorationManagerV1">ZxdgDecorationManagerV1</a>>></code>
|
||
</span></span><div class='docblock'><p>The decoration manager, if the server supports server-side decorations</p>
|
||
</div><h2 id='methods' class='small-section-header'>Methods<a href='#methods' class='anchor'></a></h2><h3 id='impl' class='impl'><span class='in-band'><table class='table-display'><tbody><tr><td><code>impl <a class="struct" href="../smithay_client_toolkit/struct.Environment.html" title="struct smithay_client_toolkit::Environment">Environment</a></code><a href='#impl' class='anchor'></a></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/smithay_client_toolkit/env.rs.html#71-206' title='goto source code'>[src]</a></span></td></tr></tbody></table></h3><div class='impl-items'><h4 id='method.from_registry' class="method"><span id='from_registry.v' class='invisible'><table class='table-display'><tbody><tr><td><code>pub fn <a href='#method.from_registry' class='fnname'>from_registry</a>(<br> registry: <a class="struct" href="../smithay_client_toolkit/reexports/client/struct.NewProxy.html" title="struct smithay_client_toolkit::reexports::client::NewProxy">NewProxy</a><<a class="struct" href="../smithay_client_toolkit/reexports/client/protocol/wl_registry/struct.WlRegistry.html" title="struct smithay_client_toolkit::reexports::client::protocol::wl_registry::WlRegistry">WlRegistry</a>>, <br> evq: &mut <a class="struct" href="../smithay_client_toolkit/reexports/client/struct.EventQueue.html" title="struct smithay_client_toolkit::reexports::client::EventQueue">EventQueue</a><br>) -> <a class="type" href="https://doc.rust-lang.org/nightly/std/io/error/type.Result.html" title="type std::io::error::Result">Result</a><<a class="struct" href="../smithay_client_toolkit/struct.Environment.html" title="struct smithay_client_toolkit::Environment">Environment</a>></code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/smithay_client_toolkit/env.rs.html#80-85' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Create an environment wrapping a new registry</p>
|
||
<p>It requires you to provide the <code>EventQueue</code> as well because
|
||
the initialization process does a few roundtrip to the server
|
||
to initialize all the globals.</p>
|
||
<p>This may panic or fail if you do not provide the EventQueue hosting
|
||
the registry you provided.</p>
|
||
</div><h4 id='method.from_registry_with_cb' class="method"><span id='from_registry_with_cb.v' class='invisible'><table class='table-display'><tbody><tr><td><code>pub fn <a href='#method.from_registry_with_cb' class='fnname'>from_registry_with_cb</a><Impl>(<br> registry: <a class="struct" href="../smithay_client_toolkit/reexports/client/struct.NewProxy.html" title="struct smithay_client_toolkit::reexports::client::NewProxy">NewProxy</a><<a class="struct" href="../smithay_client_toolkit/reexports/client/protocol/wl_registry/struct.WlRegistry.html" title="struct smithay_client_toolkit::reexports::client::protocol::wl_registry::WlRegistry">WlRegistry</a>>, <br> evq: &mut <a class="struct" href="../smithay_client_toolkit/reexports/client/struct.EventQueue.html" title="struct smithay_client_toolkit::reexports::client::EventQueue">EventQueue</a>, <br> cb: Impl<br>) -> <a class="type" href="https://doc.rust-lang.org/nightly/std/io/error/type.Result.html" title="type std::io::error::Result">Result</a><<a class="struct" href="../smithay_client_toolkit/struct.Environment.html" title="struct smithay_client_toolkit::Environment">Environment</a>> <span class="where fmt-newline">where<br> Impl: <a class="trait" href="../smithay_client_toolkit/reexports/client/commons/trait.Implementation.html" title="trait smithay_client_toolkit::reexports::client::commons::Implementation">Implementation</a><<a class="struct" href="../smithay_client_toolkit/reexports/client/struct.Proxy.html" title="struct smithay_client_toolkit::reexports::client::Proxy">Proxy</a><<a class="struct" href="../smithay_client_toolkit/reexports/client/protocol/wl_registry/struct.WlRegistry.html" title="struct smithay_client_toolkit::reexports::client::protocol::wl_registry::WlRegistry">WlRegistry</a>>, <a class="enum" href="../smithay_client_toolkit/reexports/client/enum.GlobalEvent.html" title="enum smithay_client_toolkit::reexports::client::GlobalEvent">GlobalEvent</a>> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + 'static, </span></code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/smithay_client_toolkit/env.rs.html#93-200' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Create an environment wrapping a new registry</p>
|
||
<p>Additionnaly to <code>from_registry</code>, this allows you to provide
|
||
a callback to be notified of global events, just like
|
||
<code>GlobalManager::new_with_cb</code>. Note that you will still
|
||
receive events even if they are processed by this <code>Environment</code>.</p>
|
||
</div><h4 id='method.shm_formats' class="method"><div class="important-traits"><div class='tooltip'>ⓘ<span class='tooltiptext'>Important traits for <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>></span></div><div class="content hidden"><h3 class="important">Important traits for <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>></h3><code class="content"><span class="where fmt-newline">impl <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Write.html" title="trait std::io::Write">Write</a> for <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>></span></code></div></div><span id='shm_formats.v' class='invisible'><table class='table-display'><tbody><tr><td><code>pub fn <a href='#method.shm_formats' class='fnname'>shm_formats</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="enum" href="../smithay_client_toolkit/reexports/client/protocol/wl_shm/enum.Format.html" title="enum smithay_client_toolkit::reexports::client::protocol::wl_shm::Format">Format</a>></code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/smithay_client_toolkit/env.rs.html#203-205' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Retrive the accepted SHM formats of the server</p>
|
||
</div></div><h2 id='synthetic-implementations' class='small-section-header'>Auto Trait Implementations<a href='#synthetic-implementations' class='anchor'></a></h2><div id='synthetic-implementations-list'><h3 id='impl-Send' class='impl'><span class='in-band'><table class='table-display'><tbody><tr><td><code>impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="../smithay_client_toolkit/struct.Environment.html" title="struct smithay_client_toolkit::Environment">Environment</a></code><a href='#impl-Send' class='anchor'></a></span></td><td><span class='out-of-band'></span></td></tr></tbody></table></h3><div class='impl-items'></div><h3 id='impl-Sync' class='impl'><span class='in-band'><table class='table-display'><tbody><tr><td><code>impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="../smithay_client_toolkit/struct.Environment.html" title="struct smithay_client_toolkit::Environment">Environment</a></code><a href='#impl-Sync' class='anchor'></a></span></td><td><span class='out-of-band'></span></td></tr></tbody></table></h3><div class='impl-items'></div></div></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd>↑</kbd></dt><dd>Move up in search results</dd><dt><kbd>↓</kbd></dt><dd>Move down in search results</dd><dt><kbd>↹</kbd></dt><dd>Switch tab</dd><dt><kbd>⏎</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g. <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g. <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g. <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../";window.currentCrate = "smithay_client_toolkit";</script><script src="../aliases.js"></script><script src="../main.js"></script><script defer src="../search-index.js"></script></body></html> |