mirror of
https://github.com/a-b-street/abstreet.git
synced 2024-11-23 08:54:30 +03:00
deploy: 6e5b874637
This commit is contained in:
parent
7a06a138b9
commit
d813f3dc0e
@ -4,6 +4,6 @@
|
||||
</nav>
|
||||
<nav class="sidebar"><a class="sidebar-logo" href="../../../../map_gui/index.html"><div class="logo-container"><img class="rust-logo" src="../../../../rust-logo.svg" alt="logo"></div>
|
||||
</a><div class="sidebar-elems"><h2 class="location"><a href="index.html">In map_gui::tools::title_screen::built_info</a></h2><div id="sidebar-vars" data-name="BUILT_TIME_UTC" data-ty="constant" data-relpath=""></div><script defer src="sidebar-items.js"></script></div></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../../../../map_gui/index.html"><img class="rust-logo" src="../../../../rust-logo.svg" alt="logo"></a><nav class="sub"><div class="theme-picker hidden"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu" title="themes"><img width="22" height="22" alt="Pick another theme!" src="../../../../brush.svg"></button><div id="theme-choices" role="menu"></div></div><form class="search-form"><div class="search-container"><span></span><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><button type="button" id="help-button" title="help">?</button><a id="settings-menu" href="../../../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../../../wheel.svg"></a></div></form></nav></div><section id="main-content" class="content"><div class="main-heading">
|
||||
<h1 class="fqn"><span class="in-band">Constant <a href="../../../index.html">map_gui</a>::<wbr><a href="../../index.html">tools</a>::<wbr><a href="../index.html">title_screen</a>::<wbr><a href="index.html">built_info</a>::<wbr><a class="constant" href="#">BUILT_TIME_UTC</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../../../../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span></h1><span class="out-of-band"><a class="srclink" href="../../../../src/map_gui/home/runner/work/abstreet/abstreet/target/debug/build/map_gui-ed50344f6d8f69b9/out/built.rs.html#78">source</a> · <a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span></div><div class="docblock item-decl"><pre class="rust const"><code>pub const BUILT_TIME_UTC: &<a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.str.html">str</a> = r"Mon, 20 Jun 2022 10:42:49 +0000";</code></pre></div><details class="rustdoc-toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>The build time in RFC2822, UTC.</p>
|
||||
<h1 class="fqn"><span class="in-band">Constant <a href="../../../index.html">map_gui</a>::<wbr><a href="../../index.html">tools</a>::<wbr><a href="../index.html">title_screen</a>::<wbr><a href="index.html">built_info</a>::<wbr><a class="constant" href="#">BUILT_TIME_UTC</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../../../../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span></h1><span class="out-of-band"><a class="srclink" href="../../../../src/map_gui/home/runner/work/abstreet/abstreet/target/debug/build/map_gui-ed50344f6d8f69b9/out/built.rs.html#78">source</a> · <a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span></div><div class="docblock item-decl"><pre class="rust const"><code>pub const BUILT_TIME_UTC: &<a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.str.html">str</a> = r"Mon, 20 Jun 2022 12:36:17 +0000";</code></pre></div><details class="rustdoc-toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>The build time in RFC2822, UTC.</p>
|
||||
</div></details></section><section id="search" class="content hidden"></section></div></main><div id="rustdoc-vars" data-root-path="../../../../" data-current-crate="map_gui" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.61.0 (fe5b13d68 2022-05-18)" ></div>
|
||||
</body></html>
|
File diff suppressed because one or more lines are too long
@ -179,7 +179,7 @@
|
||||
<span class="kw">pub</span> <span class="kw">const</span> <span class="ident">RUSTDOC_VERSION</span>: <span class="kw-2">&</span><span class="ident">str</span> <span class="op">=</span> <span class="string">r"rustdoc 1.61.0 (fe5b13d68 2022-05-18)"</span>;
|
||||
<span class="attribute">#[<span class="ident">doc</span><span class="op">=</span><span class="string">r#"The build time in RFC2822, UTC."#</span>]</span>
|
||||
<span class="attribute">#[<span class="ident">allow</span>(<span class="ident">dead_code</span>)]</span>
|
||||
<span class="kw">pub</span> <span class="kw">const</span> <span class="ident">BUILT_TIME_UTC</span>: <span class="kw-2">&</span><span class="ident">str</span> <span class="op">=</span> <span class="string">r"Mon, 20 Jun 2022 10:42:49 +0000"</span>;
|
||||
<span class="kw">pub</span> <span class="kw">const</span> <span class="ident">BUILT_TIME_UTC</span>: <span class="kw-2">&</span><span class="ident">str</span> <span class="op">=</span> <span class="string">r"Mon, 20 Jun 2022 12:36:17 +0000"</span>;
|
||||
<span class="attribute">#[<span class="ident">doc</span><span class="op">=</span><span class="string">r#"The target architecture, given by `CARGO_CFG_TARGET_ARCH`."#</span>]</span>
|
||||
<span class="attribute">#[<span class="ident">allow</span>(<span class="ident">dead_code</span>)]</span>
|
||||
<span class="kw">pub</span> <span class="kw">const</span> <span class="ident">CFG_TARGET_ARCH</span>: <span class="kw-2">&</span><span class="ident">str</span> <span class="op">=</span> <span class="string">r"x86_64"</span>;
|
||||
|
@ -660,6 +660,12 @@
|
||||
<span id="655">655</span>
|
||||
<span id="656">656</span>
|
||||
<span id="657">657</span>
|
||||
<span id="658">658</span>
|
||||
<span id="659">659</span>
|
||||
<span id="660">660</span>
|
||||
<span id="661">661</span>
|
||||
<span id="662">662</span>
|
||||
<span id="663">663</span>
|
||||
</pre><pre class="rust"><code><span class="kw">use</span> <span class="ident">std::collections::HashMap</span>;
|
||||
<span class="kw">use</span> <span class="ident">std::fmt::Debug</span>;
|
||||
<span class="kw">use</span> <span class="ident">std::hash::Hash</span>;
|
||||
@ -1084,6 +1090,12 @@
|
||||
.<span class="ident">and_then</span>(<span class="op">|</span><span class="ident">cursor</span><span class="op">|</span> <span class="self">self</span>.<span class="ident">calculate_hover</span>(<span class="ident">cursor</span>));
|
||||
}
|
||||
|
||||
<span class="doccomment">/// Forcibly reset the hovering state to empty. This is a necessary hack when launching a new</span>
|
||||
<span class="doccomment">/// state that uses `DrawBaselayer::PreviousState` and has tooltips.</span>
|
||||
<span class="kw">pub</span> <span class="kw">fn</span> <span class="ident">hack_unset_hovering</span>(<span class="kw-2">&mut</span> <span class="self">self</span>) {
|
||||
<span class="self">self</span>.<span class="ident">hovering</span> <span class="op">=</span> <span class="prelude-val">None</span>;
|
||||
}
|
||||
|
||||
<span class="doccomment">/// If a drag event causes the world to be totally rebuilt, call this with the previous world</span>
|
||||
<span class="doccomment">/// to preserve the ongoing drag.</span>
|
||||
<span class="doccomment">///</span>
|
||||
|
File diff suppressed because one or more lines are too long
@ -3,7 +3,7 @@
|
||||
</a><h2 class="location"></h2>
|
||||
</nav>
|
||||
<nav class="sidebar"><a class="sidebar-logo" href="../../widgetry/index.html"><div class="logo-container"><img class="rust-logo" src="../../rust-logo.svg" alt="logo"></div>
|
||||
</a><h2 class="location"><a href="#">World</a></h2><div class="sidebar-elems"><section><div class="block"><h3 class="sidebar-title"><a href="#fields">Fields</a></h3><ul><li><a href="#structfield.dragging_from">dragging_from</a></li><li><a href="#structfield.draw_master_batches">draw_master_batches</a></li><li><a href="#structfield.hovering">hovering</a></li><li><a href="#structfield.objects">objects</a></li><li><a href="#structfield.quadtree">quadtree</a></li></ul></div><div class="block"><h3 class="sidebar-title"><a href="#implementations">Methods</a></h3><ul><li><a href="#method.add">add</a></li><li><a href="#method.add_unnamed">add_unnamed</a></li><li><a href="#method.bounded">bounded</a></li><li><a href="#method.calculate_hover">calculate_hover</a></li><li><a href="#method.calculate_hovering">calculate_hovering</a></li><li><a href="#method.delete">delete</a></li><li><a href="#method.delete_before_replacement">delete_before_replacement</a></li><li><a href="#method.draw">draw</a></li><li><a href="#method.draw_master_batch">draw_master_batch</a></li><li><a href="#method.draw_master_batch_built">draw_master_batch_built</a></li><li><a href="#method.event">event</a></li><li><a href="#method.get_hovered_keybindings">get_hovered_keybindings</a></li><li><a href="#method.get_hovering">get_hovering</a></li><li><a href="#method.initialize_hover">initialize_hover</a></li><li><a href="#method.maybe_delete">maybe_delete</a></li><li><a href="#method.override_tooltip">override_tooltip</a></li><li><a href="#method.rebuilt_during_drag">rebuilt_during_drag</a></li><li><a href="#method.unbounded">unbounded</a></li></ul></div><div class="block"><h3 class="sidebar-title"><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul><li><a href="#impl-RefUnwindSafe">RefUnwindSafe</a></li><li><a href="#impl-Send">!Send</a></li><li><a href="#impl-Sync">!Sync</a></li><li><a href="#impl-Unpin">Unpin</a></li><li><a href="#impl-UnwindSafe">UnwindSafe</a></li></ul></div><div class="block"><h3 class="sidebar-title"><a href="#blanket-implementations">Blanket Implementations</a></h3><ul><li><a href="#impl-Any">Any</a></li><li><a href="#impl-Borrow%3CT%3E">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E">BorrowMut<T></a></li><li><a href="#impl-Downcast">Downcast</a></li><li><a href="#impl-From%3CT%3E">From<T></a></li><li><a href="#impl-Instrument">Instrument</a></li><li><a href="#impl-Into%3CU%3E">Into<U></a></li><li><a href="#impl-Same%3CT%3E">Same<T></a></li><li><a href="#impl-TryFrom%3CU%3E">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E">TryInto<U></a></li></ul></div></section><h2 class="location"><a href="index.html">In widgetry::mapspace</a></h2><div id="sidebar-vars" data-name="World" data-ty="struct" data-relpath=""></div><script defer src="sidebar-items.js"></script></div></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../../widgetry/index.html"><img class="rust-logo" src="../../rust-logo.svg" alt="logo"></a><nav class="sub"><div class="theme-picker hidden"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu" title="themes"><img width="22" height="22" alt="Pick another theme!" src="../../brush.svg"></button><div id="theme-choices" role="menu"></div></div><form class="search-form"><div class="search-container"><span></span><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><button type="button" id="help-button" title="help">?</button><a id="settings-menu" href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../wheel.svg"></a></div></form></nav></div><section id="main-content" class="content"><div class="main-heading">
|
||||
</a><h2 class="location"><a href="#">World</a></h2><div class="sidebar-elems"><section><div class="block"><h3 class="sidebar-title"><a href="#fields">Fields</a></h3><ul><li><a href="#structfield.dragging_from">dragging_from</a></li><li><a href="#structfield.draw_master_batches">draw_master_batches</a></li><li><a href="#structfield.hovering">hovering</a></li><li><a href="#structfield.objects">objects</a></li><li><a href="#structfield.quadtree">quadtree</a></li></ul></div><div class="block"><h3 class="sidebar-title"><a href="#implementations">Methods</a></h3><ul><li><a href="#method.add">add</a></li><li><a href="#method.add_unnamed">add_unnamed</a></li><li><a href="#method.bounded">bounded</a></li><li><a href="#method.calculate_hover">calculate_hover</a></li><li><a href="#method.calculate_hovering">calculate_hovering</a></li><li><a href="#method.delete">delete</a></li><li><a href="#method.delete_before_replacement">delete_before_replacement</a></li><li><a href="#method.draw">draw</a></li><li><a href="#method.draw_master_batch">draw_master_batch</a></li><li><a href="#method.draw_master_batch_built">draw_master_batch_built</a></li><li><a href="#method.event">event</a></li><li><a href="#method.get_hovered_keybindings">get_hovered_keybindings</a></li><li><a href="#method.get_hovering">get_hovering</a></li><li><a href="#method.hack_unset_hovering">hack_unset_hovering</a></li><li><a href="#method.initialize_hover">initialize_hover</a></li><li><a href="#method.maybe_delete">maybe_delete</a></li><li><a href="#method.override_tooltip">override_tooltip</a></li><li><a href="#method.rebuilt_during_drag">rebuilt_during_drag</a></li><li><a href="#method.unbounded">unbounded</a></li></ul></div><div class="block"><h3 class="sidebar-title"><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul><li><a href="#impl-RefUnwindSafe">RefUnwindSafe</a></li><li><a href="#impl-Send">!Send</a></li><li><a href="#impl-Sync">!Sync</a></li><li><a href="#impl-Unpin">Unpin</a></li><li><a href="#impl-UnwindSafe">UnwindSafe</a></li></ul></div><div class="block"><h3 class="sidebar-title"><a href="#blanket-implementations">Blanket Implementations</a></h3><ul><li><a href="#impl-Any">Any</a></li><li><a href="#impl-Borrow%3CT%3E">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E">BorrowMut<T></a></li><li><a href="#impl-Downcast">Downcast</a></li><li><a href="#impl-From%3CT%3E">From<T></a></li><li><a href="#impl-Instrument">Instrument</a></li><li><a href="#impl-Into%3CU%3E">Into<U></a></li><li><a href="#impl-Same%3CT%3E">Same<T></a></li><li><a href="#impl-TryFrom%3CU%3E">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E">TryInto<U></a></li></ul></div></section><h2 class="location"><a href="index.html">In widgetry::mapspace</a></h2><div id="sidebar-vars" data-name="World" data-ty="struct" data-relpath=""></div><script defer src="sidebar-items.js"></script></div></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../../widgetry/index.html"><img class="rust-logo" src="../../rust-logo.svg" alt="logo"></a><nav class="sub"><div class="theme-picker hidden"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu" title="themes"><img width="22" height="22" alt="Pick another theme!" src="../../brush.svg"></button><div id="theme-choices" role="menu"></div></div><form class="search-form"><div class="search-container"><span></span><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><button type="button" id="help-button" title="help">?</button><a id="settings-menu" href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../wheel.svg"></a></div></form></nav></div><section id="main-content" class="content"><div class="main-heading">
|
||||
<h1 class="fqn"><span class="in-band">Struct <a href="../index.html">widgetry</a>::<wbr><a href="index.html">mapspace</a>::<wbr><a class="struct" href="#">World</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span></h1><span class="out-of-band"><a class="srclink" href="../../src/widgetry/mapspace/world.rs.html#20-31">source</a> · <a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span></div><div class="docblock item-decl"><pre class="rust struct"><code>pub struct World<ID: <a class="trait" href="world/trait.ObjectID.html" title="trait widgetry::mapspace::world::ObjectID">ObjectID</a>> {
|
||||
objects: <a class="struct" href="https://doc.rust-lang.org/1.61.0/std/collections/hash/map/struct.HashMap.html" title="struct std::collections::hash::map::HashMap">HashMap</a><ID, <a class="struct" href="world/struct.Object.html" title="struct widgetry::mapspace::world::Object">Object</a><ID>>,
|
||||
quadtree: QuadTree<ID>,
|
||||
@ -12,7 +12,7 @@
|
||||
dragging_from: <a class="enum" href="https://doc.rust-lang.org/1.61.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.tuple.html">(</a><a class="struct" href="../../geom/pt/struct.Pt2D.html" title="struct geom::pt::Pt2D">Pt2D</a>, <a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.bool.html">bool</a><a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.tuple.html">)</a>>,
|
||||
}</code></pre></div><details class="rustdoc-toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A <code>World</code> manages objects that exist in “map-space”, the zoomable and pannable canvas. These
|
||||
objects can be drawn, hovered on, clicked, dragged, etc.</p>
|
||||
</div></details><h2 id="fields" class="fields small-section-header">Fields<a href="#fields" class="anchor"></a></h2><span id="structfield.objects" class="structfield small-section-header"><a href="#structfield.objects" class="anchor field"></a><code>objects: <a class="struct" href="https://doc.rust-lang.org/1.61.0/std/collections/hash/map/struct.HashMap.html" title="struct std::collections::hash::map::HashMap">HashMap</a><ID, <a class="struct" href="world/struct.Object.html" title="struct widgetry::mapspace::world::Object">Object</a><ID>></code></span><span id="structfield.quadtree" class="structfield small-section-header"><a href="#structfield.quadtree" class="anchor field"></a><code>quadtree: QuadTree<ID></code></span><span id="structfield.draw_master_batches" class="structfield small-section-header"><a href="#structfield.draw_master_batches" class="anchor field"></a><code>draw_master_batches: <a class="struct" href="https://doc.rust-lang.org/1.61.0/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="struct" href="struct.ToggleZoomed.html" title="struct widgetry::mapspace::ToggleZoomed">ToggleZoomed</a>></code></span><span id="structfield.hovering" class="structfield small-section-header"><a href="#structfield.hovering" class="anchor field"></a><code>hovering: <a class="enum" href="https://doc.rust-lang.org/1.61.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><ID></code></span><span id="structfield.dragging_from" class="structfield small-section-header"><a href="#structfield.dragging_from" class="anchor field"></a><code>dragging_from: <a class="enum" href="https://doc.rust-lang.org/1.61.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.tuple.html">(</a><a class="struct" href="../../geom/pt/struct.Pt2D.html" title="struct geom::pt::Pt2D">Pt2D</a>, <a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.bool.html">bool</a><a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.tuple.html">)</a>></code></span><h2 id="implementations" class="small-section-header">Implementations<a href="#implementations" class="anchor"></a></h2><div id="implementations-list"><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../../src/widgetry/mapspace/world.rs.html#318-640">source</a></span><a href="#impl" class="anchor"></a><h3 class="code-header in-band">impl<ID: <a class="trait" href="world/trait.ObjectID.html" title="trait widgetry::mapspace::world::ObjectID">ObjectID</a>> <a class="struct" href="world/struct.World.html" title="struct widgetry::mapspace::world::World">World</a><ID></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.unbounded" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../src/widgetry/mapspace/world.rs.html#320-333">source</a></span><a href="#method.unbounded" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.unbounded" class="fnname">unbounded</a>() -> <a class="struct" href="world/struct.World.html" title="struct widgetry::mapspace::world::World">World</a><ID></h4></section></summary><div class="docblock"><p>Creates an empty <code>World</code>, whose objects can exist anywhere from (0, 0) to the max f64.</p>
|
||||
</div></details><h2 id="fields" class="fields small-section-header">Fields<a href="#fields" class="anchor"></a></h2><span id="structfield.objects" class="structfield small-section-header"><a href="#structfield.objects" class="anchor field"></a><code>objects: <a class="struct" href="https://doc.rust-lang.org/1.61.0/std/collections/hash/map/struct.HashMap.html" title="struct std::collections::hash::map::HashMap">HashMap</a><ID, <a class="struct" href="world/struct.Object.html" title="struct widgetry::mapspace::world::Object">Object</a><ID>></code></span><span id="structfield.quadtree" class="structfield small-section-header"><a href="#structfield.quadtree" class="anchor field"></a><code>quadtree: QuadTree<ID></code></span><span id="structfield.draw_master_batches" class="structfield small-section-header"><a href="#structfield.draw_master_batches" class="anchor field"></a><code>draw_master_batches: <a class="struct" href="https://doc.rust-lang.org/1.61.0/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="struct" href="struct.ToggleZoomed.html" title="struct widgetry::mapspace::ToggleZoomed">ToggleZoomed</a>></code></span><span id="structfield.hovering" class="structfield small-section-header"><a href="#structfield.hovering" class="anchor field"></a><code>hovering: <a class="enum" href="https://doc.rust-lang.org/1.61.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><ID></code></span><span id="structfield.dragging_from" class="structfield small-section-header"><a href="#structfield.dragging_from" class="anchor field"></a><code>dragging_from: <a class="enum" href="https://doc.rust-lang.org/1.61.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.tuple.html">(</a><a class="struct" href="../../geom/pt/struct.Pt2D.html" title="struct geom::pt::Pt2D">Pt2D</a>, <a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.bool.html">bool</a><a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.tuple.html">)</a>></code></span><h2 id="implementations" class="small-section-header">Implementations<a href="#implementations" class="anchor"></a></h2><div id="implementations-list"><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../../src/widgetry/mapspace/world.rs.html#318-646">source</a></span><a href="#impl" class="anchor"></a><h3 class="code-header in-band">impl<ID: <a class="trait" href="world/trait.ObjectID.html" title="trait widgetry::mapspace::world::ObjectID">ObjectID</a>> <a class="struct" href="world/struct.World.html" title="struct widgetry::mapspace::world::World">World</a><ID></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.unbounded" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../src/widgetry/mapspace/world.rs.html#320-333">source</a></span><a href="#method.unbounded" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.unbounded" class="fnname">unbounded</a>() -> <a class="struct" href="world/struct.World.html" title="struct widgetry::mapspace::world::World">World</a><ID></h4></section></summary><div class="docblock"><p>Creates an empty <code>World</code>, whose objects can exist anywhere from (0, 0) to the max f64.</p>
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.bounded" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../src/widgetry/mapspace/world.rs.html#336-346">source</a></span><a href="#method.bounded" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.bounded" class="fnname">bounded</a>(bounds: &<a class="struct" href="../../geom/bounds/struct.Bounds.html" title="struct geom::bounds::Bounds">Bounds</a>) -> <a class="struct" href="world/struct.World.html" title="struct widgetry::mapspace::world::World">World</a><ID></h4></section></summary><div class="docblock"><p>Creates an empty <code>World</code>, whose objects can exist in the provided rectangular boundary.</p>
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.add" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../src/widgetry/mapspace/world.rs.html#350-365">source</a></span><a href="#method.add" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.add" class="fnname">add</a>(&mut self, id: ID) -> <a class="struct" href="world/struct.ObjectBuilder.html" title="struct widgetry::mapspace::world::ObjectBuilder">ObjectBuilder</a><'_, ID></h4></section></summary><div class="docblock"><p>Start adding an object to the <code>World</code>. The caller should specify the object with methods on
|
||||
<code>ObjectBuilder</code>, then call <code>build</code>.</p>
|
||||
@ -24,24 +24,26 @@ if the object is deleted in the middle of being dragged.</p>
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.initialize_hover" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../src/widgetry/mapspace/world.rs.html#418-423">source</a></span><a href="#method.initialize_hover" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.initialize_hover" class="fnname">initialize_hover</a>(&mut self, ctx: &<a class="struct" href="../event_ctx/struct.EventCtx.html" title="struct widgetry::event_ctx::EventCtx">EventCtx</a><'_>)</h4></section></summary><div class="docblock"><p>After adding all objects to a <code>World</code>, call this to initially detect if the cursor is
|
||||
hovering on an object. This may also be called after adding or deleting objects to
|
||||
immediately recalculate hover before the mouse moves.</p>
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.rebuilt_during_drag" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../src/widgetry/mapspace/world.rs.html#432-438">source</a></span><a href="#method.rebuilt_during_drag" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.rebuilt_during_drag" class="fnname">rebuilt_during_drag</a>(&mut self, prev_world: &<a class="struct" href="world/struct.World.html" title="struct widgetry::mapspace::world::World">World</a><ID>)</h4></section></summary><div class="docblock"><p>If a drag event causes the world to be totally rebuilt, call this with the previous world
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.hack_unset_hovering" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../src/widgetry/mapspace/world.rs.html#427-429">source</a></span><a href="#method.hack_unset_hovering" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.hack_unset_hovering" class="fnname">hack_unset_hovering</a>(&mut self)</h4></section></summary><div class="docblock"><p>Forcibly reset the hovering state to empty. This is a necessary hack when launching a new
|
||||
state that uses <code>DrawBaselayer::PreviousState</code> and has tooltips.</p>
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.rebuilt_during_drag" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../src/widgetry/mapspace/world.rs.html#438-444">source</a></span><a href="#method.rebuilt_during_drag" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.rebuilt_during_drag" class="fnname">rebuilt_during_drag</a>(&mut self, prev_world: &<a class="struct" href="world/struct.World.html" title="struct widgetry::mapspace::world::World">World</a><ID>)</h4></section></summary><div class="docblock"><p>If a drag event causes the world to be totally rebuilt, call this with the previous world
|
||||
to preserve the ongoing drag.</p>
|
||||
<p>This should be called after <code>initialize_hover</code>.</p>
|
||||
<p>Important: the rebuilt world must include the same object ID that’s currently being dragged
|
||||
from the previous world.</p>
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.draw_master_batch" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../src/widgetry/mapspace/world.rs.html#442-444">source</a></span><a href="#method.draw_master_batch" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.draw_master_batch" class="fnname">draw_master_batch</a><I: <a class="trait" href="https://doc.rust-lang.org/1.61.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><<a class="struct" href="struct.ToggleZoomedBuilder.html" title="struct widgetry::mapspace::ToggleZoomedBuilder">ToggleZoomedBuilder</a>>>(<br> &mut self, <br> ctx: &<a class="struct" href="../event_ctx/struct.EventCtx.html" title="struct widgetry::event_ctx::EventCtx">EventCtx</a><'_>, <br> draw: I<br>)</h4></section></summary><div class="docblock"><p>Draw something underneath all objects. This is useful for performance, when a large number
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.draw_master_batch" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../src/widgetry/mapspace/world.rs.html#448-450">source</a></span><a href="#method.draw_master_batch" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.draw_master_batch" class="fnname">draw_master_batch</a><I: <a class="trait" href="https://doc.rust-lang.org/1.61.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><<a class="struct" href="struct.ToggleZoomedBuilder.html" title="struct widgetry::mapspace::ToggleZoomedBuilder">ToggleZoomedBuilder</a>>>(<br> &mut self, <br> ctx: &<a class="struct" href="../event_ctx/struct.EventCtx.html" title="struct widgetry::event_ctx::EventCtx">EventCtx</a><'_>, <br> draw: I<br>)</h4></section></summary><div class="docblock"><p>Draw something underneath all objects. This is useful for performance, when a large number
|
||||
of objects never change appearance.</p>
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.draw_master_batch_built" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../src/widgetry/mapspace/world.rs.html#447-449">source</a></span><a href="#method.draw_master_batch_built" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.draw_master_batch_built" class="fnname">draw_master_batch_built</a>(&mut self, draw: <a class="struct" href="struct.ToggleZoomed.html" title="struct widgetry::mapspace::ToggleZoomed">ToggleZoomed</a>)</h4></section></summary><div class="docblock"><p>Like <code>draw_master_batch</code>, but for already-built objects.</p>
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.event" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../src/widgetry/mapspace/world.rs.html#452-553">source</a></span><a href="#method.event" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.event" class="fnname">event</a>(&mut self, ctx: &mut <a class="struct" href="../event_ctx/struct.EventCtx.html" title="struct widgetry::event_ctx::EventCtx">EventCtx</a><'_>) -> <a class="enum" href="world/enum.WorldOutcome.html" title="enum widgetry::mapspace::world::WorldOutcome">WorldOutcome</a><ID></h4></section></summary><div class="docblock"><p>Let objects in the world respond to something happening.</p>
|
||||
</div></details><section id="method.calculate_hover" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../src/widgetry/mapspace/world.rs.html#555-576">source</a></span><a href="#method.calculate_hover" class="anchor"></a><h4 class="code-header">fn <a href="#method.calculate_hover" class="fnname">calculate_hover</a>(&self, cursor: <a class="struct" href="../../geom/pt/struct.Pt2D.html" title="struct geom::pt::Pt2D">Pt2D</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.61.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><ID></h4></section><details class="rustdoc-toggle method-toggle" open><summary><section id="method.draw" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../src/widgetry/mapspace/world.rs.html#579-607">source</a></span><a href="#method.draw" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.draw" class="fnname">draw</a>(&self, g: &mut <a class="struct" href="../drawing/struct.GfxCtx.html" title="struct widgetry::drawing::GfxCtx">GfxCtx</a><'_>)</h4></section></summary><div class="docblock"><p>Draw objects in the world that’re currently visible.</p>
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.get_hovering" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../src/widgetry/mapspace/world.rs.html#610-612">source</a></span><a href="#method.get_hovering" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.get_hovering" class="fnname">get_hovering</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/1.61.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><ID></h4></section></summary><div class="docblock"><p>Returns the object currently hovered on.</p>
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.override_tooltip" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../src/widgetry/mapspace/world.rs.html#615-622">source</a></span><a href="#method.override_tooltip" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.override_tooltip" class="fnname">override_tooltip</a>(&mut self, id: <a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.reference.html">&</a>ID, tooltip: <a class="enum" href="https://doc.rust-lang.org/1.61.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../text/struct.Text.html" title="struct widgetry::text::Text">Text</a>>) -> <a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Change an object’s tooltip. Returns true for success, false if the object didn’t exist.</p>
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.calculate_hovering" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../src/widgetry/mapspace/world.rs.html#627-633">source</a></span><a href="#method.calculate_hovering" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.calculate_hovering" class="fnname">calculate_hovering</a>(&self, ctx: &<a class="struct" href="../event_ctx/struct.EventCtx.html" title="struct widgetry::event_ctx::EventCtx">EventCtx</a><'_>) -> <a class="enum" href="https://doc.rust-lang.org/1.61.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><ID></h4></section></summary><div class="docblock"><p>Calculate the object currently underneath the cursor. This should only be used when the
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.draw_master_batch_built" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../src/widgetry/mapspace/world.rs.html#453-455">source</a></span><a href="#method.draw_master_batch_built" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.draw_master_batch_built" class="fnname">draw_master_batch_built</a>(&mut self, draw: <a class="struct" href="struct.ToggleZoomed.html" title="struct widgetry::mapspace::ToggleZoomed">ToggleZoomed</a>)</h4></section></summary><div class="docblock"><p>Like <code>draw_master_batch</code>, but for already-built objects.</p>
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.event" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../src/widgetry/mapspace/world.rs.html#458-559">source</a></span><a href="#method.event" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.event" class="fnname">event</a>(&mut self, ctx: &mut <a class="struct" href="../event_ctx/struct.EventCtx.html" title="struct widgetry::event_ctx::EventCtx">EventCtx</a><'_>) -> <a class="enum" href="world/enum.WorldOutcome.html" title="enum widgetry::mapspace::world::WorldOutcome">WorldOutcome</a><ID></h4></section></summary><div class="docblock"><p>Let objects in the world respond to something happening.</p>
|
||||
</div></details><section id="method.calculate_hover" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../src/widgetry/mapspace/world.rs.html#561-582">source</a></span><a href="#method.calculate_hover" class="anchor"></a><h4 class="code-header">fn <a href="#method.calculate_hover" class="fnname">calculate_hover</a>(&self, cursor: <a class="struct" href="../../geom/pt/struct.Pt2D.html" title="struct geom::pt::Pt2D">Pt2D</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.61.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><ID></h4></section><details class="rustdoc-toggle method-toggle" open><summary><section id="method.draw" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../src/widgetry/mapspace/world.rs.html#585-613">source</a></span><a href="#method.draw" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.draw" class="fnname">draw</a>(&self, g: &mut <a class="struct" href="../drawing/struct.GfxCtx.html" title="struct widgetry::drawing::GfxCtx">GfxCtx</a><'_>)</h4></section></summary><div class="docblock"><p>Draw objects in the world that’re currently visible.</p>
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.get_hovering" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../src/widgetry/mapspace/world.rs.html#616-618">source</a></span><a href="#method.get_hovering" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.get_hovering" class="fnname">get_hovering</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/1.61.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><ID></h4></section></summary><div class="docblock"><p>Returns the object currently hovered on.</p>
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.override_tooltip" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../src/widgetry/mapspace/world.rs.html#621-628">source</a></span><a href="#method.override_tooltip" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.override_tooltip" class="fnname">override_tooltip</a>(&mut self, id: <a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.reference.html">&</a>ID, tooltip: <a class="enum" href="https://doc.rust-lang.org/1.61.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../text/struct.Text.html" title="struct widgetry::text::Text">Text</a>>) -> <a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Change an object’s tooltip. Returns true for success, false if the object didn’t exist.</p>
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.calculate_hovering" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../src/widgetry/mapspace/world.rs.html#633-639">source</a></span><a href="#method.calculate_hovering" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.calculate_hovering" class="fnname">calculate_hovering</a>(&self, ctx: &<a class="struct" href="../event_ctx/struct.EventCtx.html" title="struct widgetry::event_ctx::EventCtx">EventCtx</a><'_>) -> <a class="enum" href="https://doc.rust-lang.org/1.61.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><ID></h4></section></summary><div class="docblock"><p>Calculate the object currently underneath the cursor. This should only be used when the
|
||||
<code>World</code> is not being actively updated by calling <code>event</code>. If another state temporarily
|
||||
needs to disable most interactions with objects, it can poll this instead.</p>
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.get_hovered_keybindings" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../src/widgetry/mapspace/world.rs.html#637-639">source</a></span><a href="#method.get_hovered_keybindings" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.get_hovered_keybindings" class="fnname">get_hovered_keybindings</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/1.61.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><&<a class="struct" href="https://doc.rust-lang.org/1.61.0/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.tuple.html">(</a><a class="enum" href="../event/enum.MultiKey.html" title="enum widgetry::event::MultiKey">MultiKey</a>, &'static <a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.str.html">str</a><a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.tuple.html">)</a>>></h4></section></summary><div class="docblock"><p>If an object is currently being hovered on, return its keybindings. This should be used to
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.get_hovered_keybindings" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../src/widgetry/mapspace/world.rs.html#643-645">source</a></span><a href="#method.get_hovered_keybindings" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.get_hovered_keybindings" class="fnname">get_hovered_keybindings</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/1.61.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><&<a class="struct" href="https://doc.rust-lang.org/1.61.0/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.tuple.html">(</a><a class="enum" href="../event/enum.MultiKey.html" title="enum widgetry::event::MultiKey">MultiKey</a>, &'static <a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.str.html">str</a><a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.tuple.html">)</a>>></h4></section></summary><div class="docblock"><p>If an object is currently being hovered on, return its keybindings. This should be used to
|
||||
describe interactions; to detect the keypresses, listen for <code>WorldOutcome::Keypress</code>.</p>
|
||||
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-1" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../../src/widgetry/mapspace/world.rs.html#647-657">source</a></span><a href="#impl-1" class="anchor"></a><h3 class="code-header in-band">impl <a class="struct" href="world/struct.World.html" title="struct widgetry::mapspace::world::World">World</a><<a class="struct" href="world/struct.DummyID.html" title="struct widgetry::mapspace::world::DummyID">DummyID</a>></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.add_unnamed" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../src/widgetry/mapspace/world.rs.html#654-656">source</a></span><a href="#method.add_unnamed" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.add_unnamed" class="fnname">add_unnamed</a>(&mut self) -> <a class="struct" href="world/struct.ObjectBuilder.html" title="struct widgetry::mapspace::world::ObjectBuilder">ObjectBuilder</a><'_, <a class="struct" href="world/struct.DummyID.html" title="struct widgetry::mapspace::world::DummyID">DummyID</a>></h4></section></summary><div class="docblock"><p>Begin adding an unnamed object to the <code>World</code>.</p>
|
||||
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-1" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../../src/widgetry/mapspace/world.rs.html#653-663">source</a></span><a href="#impl-1" class="anchor"></a><h3 class="code-header in-band">impl <a class="struct" href="world/struct.World.html" title="struct widgetry::mapspace::world::World">World</a><<a class="struct" href="world/struct.DummyID.html" title="struct widgetry::mapspace::world::DummyID">DummyID</a>></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.add_unnamed" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../src/widgetry/mapspace/world.rs.html#660-662">source</a></span><a href="#method.add_unnamed" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.add_unnamed" class="fnname">add_unnamed</a>(&mut self) -> <a class="struct" href="world/struct.ObjectBuilder.html" title="struct widgetry::mapspace::world::ObjectBuilder">ObjectBuilder</a><'_, <a class="struct" href="world/struct.DummyID.html" title="struct widgetry::mapspace::world::DummyID">DummyID</a>></h4></section></summary><div class="docblock"><p>Begin adding an unnamed object to the <code>World</code>.</p>
|
||||
<p>Note: You must call <code>build</code> on this object before calling <code>add_unnamed</code> again. Otherwise,
|
||||
the object IDs will collide.</p>
|
||||
<p>TODO This will break when objects are deleted!</p>
|
||||
|
@ -5,5 +5,5 @@
|
||||
<nav class="sidebar"><a class="sidebar-logo" href="../../widgetry/index.html"><div class="logo-container"><img class="rust-logo" src="../../rust-logo.svg" alt="logo"></div>
|
||||
</a><h2 class="location"><a href="#">ObjectID</a></h2><div class="sidebar-elems"><section><div class="block"><h3 class="sidebar-title"><a href="#implementors">Implementors</a></h3></div></section><h2 class="location"><a href="index.html">In widgetry::mapspace</a></h2><div id="sidebar-vars" data-name="ObjectID" data-ty="trait" data-relpath=""></div><script defer src="sidebar-items.js"></script></div></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../../widgetry/index.html"><img class="rust-logo" src="../../rust-logo.svg" alt="logo"></a><nav class="sub"><div class="theme-picker hidden"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu" title="themes"><img width="22" height="22" alt="Pick another theme!" src="../../brush.svg"></button><div id="theme-choices" role="menu"></div></div><form class="search-form"><div class="search-container"><span></span><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><button type="button" id="help-button" title="help">?</button><a id="settings-menu" href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../wheel.svg"></a></div></form></nav></div><section id="main-content" class="content"><div class="main-heading">
|
||||
<h1 class="fqn"><span class="in-band">Trait <a href="../index.html">widgetry</a>::<wbr><a href="index.html">mapspace</a>::<wbr><a class="trait" href="#">ObjectID</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span></h1><span class="out-of-band"><a class="srclink" href="../../src/widgetry/mapspace/world.rs.html#101">source</a> · <a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span></div><div class="docblock item-decl"><pre class="rust trait"><code>pub trait ObjectID: <a class="trait" href="https://doc.rust-lang.org/1.61.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> + <a class="trait" href="https://doc.rust-lang.org/1.61.0/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> + <a class="trait" href="https://doc.rust-lang.org/1.61.0/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> + <a class="trait" href="https://doc.rust-lang.org/1.61.0/core/cmp/trait.Eq.html" title="trait core::cmp::Eq">Eq</a> + <a class="trait" href="https://doc.rust-lang.org/1.61.0/core/hash/trait.Hash.html" title="trait core::hash::Hash">Hash</a> { }</code></pre></div><details class="rustdoc-toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Objects in a <code>World</code> are uniquely identified by this caller-specified type</p>
|
||||
</div></details><h2 id="implementors" class="small-section-header">Implementors<a href="#implementors" class="anchor"></a></h2><div class="item-list" id="implementors-list"><section id="impl-ObjectID" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../../src/widgetry/mapspace/world.rs.html#645">source</a></span><a href="#impl-ObjectID" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="world/trait.ObjectID.html" title="trait widgetry::mapspace::world::ObjectID">ObjectID</a> for <a class="struct" href="world/struct.DummyID.html" title="struct widgetry::mapspace::world::DummyID">DummyID</a></h3></section></div><script type="text/javascript" src="../../implementors/widgetry/mapspace/trait.ObjectID.js" async></script></section><section id="search" class="content hidden"></section></div></main><div id="rustdoc-vars" data-root-path="../../" data-current-crate="widgetry" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.61.0 (fe5b13d68 2022-05-18)" ></div>
|
||||
</div></details><h2 id="implementors" class="small-section-header">Implementors<a href="#implementors" class="anchor"></a></h2><div class="item-list" id="implementors-list"><section id="impl-ObjectID" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../../src/widgetry/mapspace/world.rs.html#651">source</a></span><a href="#impl-ObjectID" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="world/trait.ObjectID.html" title="trait widgetry::mapspace::world::ObjectID">ObjectID</a> for <a class="struct" href="world/struct.DummyID.html" title="struct widgetry::mapspace::world::DummyID">DummyID</a></h3></section></div><script type="text/javascript" src="../../implementors/widgetry/mapspace/trait.ObjectID.js" async></script></section><section id="search" class="content hidden"></section></div></main><div id="rustdoc-vars" data-root-path="../../" data-current-crate="widgetry" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.61.0 (fe5b13d68 2022-05-18)" ></div>
|
||||
</body></html>
|
@ -4,7 +4,7 @@
|
||||
</nav>
|
||||
<nav class="sidebar"><a class="sidebar-logo" href="../../../widgetry/index.html"><div class="logo-container"><img class="rust-logo" src="../../../rust-logo.svg" alt="logo"></div>
|
||||
</a><h2 class="location"><a href="#">Module world</a></h2><div class="sidebar-elems"><section><div class="block"><ul><li><a href="#structs">Structs</a></li><li><a href="#enums">Enums</a></li><li><a href="#traits">Traits</a></li></ul></div></section><div id="sidebar-vars" data-name="world" data-ty="mod" data-relpath="./"></div><script defer src="./sidebar-items.js"></script></div></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../../../widgetry/index.html"><img class="rust-logo" src="../../../rust-logo.svg" alt="logo"></a><nav class="sub"><div class="theme-picker hidden"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu" title="themes"><img width="22" height="22" alt="Pick another theme!" src="../../../brush.svg"></button><div id="theme-choices" role="menu"></div></div><form class="search-form"><div class="search-container"><span></span><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><button type="button" id="help-button" title="help">?</button><a id="settings-menu" href="../../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../../wheel.svg"></a></div></form></nav></div><section id="main-content" class="content"><div class="main-heading">
|
||||
<h1 class="fqn"><span class="in-band">Module <a href="../../index.html">widgetry</a>::<wbr><a href="../index.html">mapspace</a>::<wbr><a class="mod" href="#">world</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../../../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span></h1><span class="out-of-band"><a class="srclink" href="../../../src/widgetry/mapspace/world.rs.html#1-657">source</a> · <a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span></div><h2 id="structs" class="small-section-header"><a href="#structs">Structs</a></h2>
|
||||
<h1 class="fqn"><span class="in-band">Module <a href="../../index.html">widgetry</a>::<wbr><a href="../index.html">mapspace</a>::<wbr><a class="mod" href="#">world</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../../../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span></h1><span class="out-of-band"><a class="srclink" href="../../../src/widgetry/mapspace/world.rs.html#1-663">source</a> · <a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span></div><h2 id="structs" class="small-section-header"><a href="#structs">Structs</a></h2>
|
||||
<div class="item-table"><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.DummyID.html" title="widgetry::mapspace::world::DummyID struct">DummyID</a></div><div class="item-right docblock-short"><p>If you don’t ever need to refer to objects in a <code>World</code>, you can auto-assign dummy IDs.</p>
|
||||
</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.Object.html" title="widgetry::mapspace::world::Object struct">Object</a><span title="Restricted Visibility"> 🔒</span> </div><div class="item-right docblock-short"></div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.ObjectBuilder.html" title="widgetry::mapspace::world::ObjectBuilder struct">ObjectBuilder</a></div><div class="item-right docblock-short"><p>This provides a builder API for adding objects to a <code>World</code>.</p>
|
||||
</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.World.html" title="widgetry::mapspace::world::World struct">World</a></div><div class="item-right docblock-short"><p>A <code>World</code> manages objects that exist in “map-space”, the zoomable and pannable canvas. These
|
||||
|
File diff suppressed because one or more lines are too long
@ -3,7 +3,7 @@
|
||||
</a><h2 class="location"></h2>
|
||||
</nav>
|
||||
<nav class="sidebar"><a class="sidebar-logo" href="../../../widgetry/index.html"><div class="logo-container"><img class="rust-logo" src="../../../rust-logo.svg" alt="logo"></div>
|
||||
</a><h2 class="location"><a href="#">World</a></h2><div class="sidebar-elems"><section><div class="block"><h3 class="sidebar-title"><a href="#fields">Fields</a></h3><ul><li><a href="#structfield.dragging_from">dragging_from</a></li><li><a href="#structfield.draw_master_batches">draw_master_batches</a></li><li><a href="#structfield.hovering">hovering</a></li><li><a href="#structfield.objects">objects</a></li><li><a href="#structfield.quadtree">quadtree</a></li></ul></div><div class="block"><h3 class="sidebar-title"><a href="#implementations">Methods</a></h3><ul><li><a href="#method.add">add</a></li><li><a href="#method.add_unnamed">add_unnamed</a></li><li><a href="#method.bounded">bounded</a></li><li><a href="#method.calculate_hover">calculate_hover</a></li><li><a href="#method.calculate_hovering">calculate_hovering</a></li><li><a href="#method.delete">delete</a></li><li><a href="#method.delete_before_replacement">delete_before_replacement</a></li><li><a href="#method.draw">draw</a></li><li><a href="#method.draw_master_batch">draw_master_batch</a></li><li><a href="#method.draw_master_batch_built">draw_master_batch_built</a></li><li><a href="#method.event">event</a></li><li><a href="#method.get_hovered_keybindings">get_hovered_keybindings</a></li><li><a href="#method.get_hovering">get_hovering</a></li><li><a href="#method.initialize_hover">initialize_hover</a></li><li><a href="#method.maybe_delete">maybe_delete</a></li><li><a href="#method.override_tooltip">override_tooltip</a></li><li><a href="#method.rebuilt_during_drag">rebuilt_during_drag</a></li><li><a href="#method.unbounded">unbounded</a></li></ul></div><div class="block"><h3 class="sidebar-title"><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul><li><a href="#impl-RefUnwindSafe">RefUnwindSafe</a></li><li><a href="#impl-Send">!Send</a></li><li><a href="#impl-Sync">!Sync</a></li><li><a href="#impl-Unpin">Unpin</a></li><li><a href="#impl-UnwindSafe">UnwindSafe</a></li></ul></div><div class="block"><h3 class="sidebar-title"><a href="#blanket-implementations">Blanket Implementations</a></h3><ul><li><a href="#impl-Any">Any</a></li><li><a href="#impl-Borrow%3CT%3E">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E">BorrowMut<T></a></li><li><a href="#impl-Downcast">Downcast</a></li><li><a href="#impl-From%3CT%3E">From<T></a></li><li><a href="#impl-Instrument">Instrument</a></li><li><a href="#impl-Into%3CU%3E">Into<U></a></li><li><a href="#impl-Same%3CT%3E">Same<T></a></li><li><a href="#impl-TryFrom%3CU%3E">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E">TryInto<U></a></li></ul></div></section><h2 class="location"><a href="index.html">In widgetry::mapspace::world</a></h2><div id="sidebar-vars" data-name="World" data-ty="struct" data-relpath=""></div><script defer src="sidebar-items.js"></script></div></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../../../widgetry/index.html"><img class="rust-logo" src="../../../rust-logo.svg" alt="logo"></a><nav class="sub"><div class="theme-picker hidden"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu" title="themes"><img width="22" height="22" alt="Pick another theme!" src="../../../brush.svg"></button><div id="theme-choices" role="menu"></div></div><form class="search-form"><div class="search-container"><span></span><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><button type="button" id="help-button" title="help">?</button><a id="settings-menu" href="../../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../../wheel.svg"></a></div></form></nav></div><section id="main-content" class="content"><div class="main-heading">
|
||||
</a><h2 class="location"><a href="#">World</a></h2><div class="sidebar-elems"><section><div class="block"><h3 class="sidebar-title"><a href="#fields">Fields</a></h3><ul><li><a href="#structfield.dragging_from">dragging_from</a></li><li><a href="#structfield.draw_master_batches">draw_master_batches</a></li><li><a href="#structfield.hovering">hovering</a></li><li><a href="#structfield.objects">objects</a></li><li><a href="#structfield.quadtree">quadtree</a></li></ul></div><div class="block"><h3 class="sidebar-title"><a href="#implementations">Methods</a></h3><ul><li><a href="#method.add">add</a></li><li><a href="#method.add_unnamed">add_unnamed</a></li><li><a href="#method.bounded">bounded</a></li><li><a href="#method.calculate_hover">calculate_hover</a></li><li><a href="#method.calculate_hovering">calculate_hovering</a></li><li><a href="#method.delete">delete</a></li><li><a href="#method.delete_before_replacement">delete_before_replacement</a></li><li><a href="#method.draw">draw</a></li><li><a href="#method.draw_master_batch">draw_master_batch</a></li><li><a href="#method.draw_master_batch_built">draw_master_batch_built</a></li><li><a href="#method.event">event</a></li><li><a href="#method.get_hovered_keybindings">get_hovered_keybindings</a></li><li><a href="#method.get_hovering">get_hovering</a></li><li><a href="#method.hack_unset_hovering">hack_unset_hovering</a></li><li><a href="#method.initialize_hover">initialize_hover</a></li><li><a href="#method.maybe_delete">maybe_delete</a></li><li><a href="#method.override_tooltip">override_tooltip</a></li><li><a href="#method.rebuilt_during_drag">rebuilt_during_drag</a></li><li><a href="#method.unbounded">unbounded</a></li></ul></div><div class="block"><h3 class="sidebar-title"><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul><li><a href="#impl-RefUnwindSafe">RefUnwindSafe</a></li><li><a href="#impl-Send">!Send</a></li><li><a href="#impl-Sync">!Sync</a></li><li><a href="#impl-Unpin">Unpin</a></li><li><a href="#impl-UnwindSafe">UnwindSafe</a></li></ul></div><div class="block"><h3 class="sidebar-title"><a href="#blanket-implementations">Blanket Implementations</a></h3><ul><li><a href="#impl-Any">Any</a></li><li><a href="#impl-Borrow%3CT%3E">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E">BorrowMut<T></a></li><li><a href="#impl-Downcast">Downcast</a></li><li><a href="#impl-From%3CT%3E">From<T></a></li><li><a href="#impl-Instrument">Instrument</a></li><li><a href="#impl-Into%3CU%3E">Into<U></a></li><li><a href="#impl-Same%3CT%3E">Same<T></a></li><li><a href="#impl-TryFrom%3CU%3E">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E">TryInto<U></a></li></ul></div></section><h2 class="location"><a href="index.html">In widgetry::mapspace::world</a></h2><div id="sidebar-vars" data-name="World" data-ty="struct" data-relpath=""></div><script defer src="sidebar-items.js"></script></div></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../../../widgetry/index.html"><img class="rust-logo" src="../../../rust-logo.svg" alt="logo"></a><nav class="sub"><div class="theme-picker hidden"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu" title="themes"><img width="22" height="22" alt="Pick another theme!" src="../../../brush.svg"></button><div id="theme-choices" role="menu"></div></div><form class="search-form"><div class="search-container"><span></span><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><button type="button" id="help-button" title="help">?</button><a id="settings-menu" href="../../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../../wheel.svg"></a></div></form></nav></div><section id="main-content" class="content"><div class="main-heading">
|
||||
<h1 class="fqn"><span class="in-band">Struct <a href="../../index.html">widgetry</a>::<wbr><a href="../index.html">mapspace</a>::<wbr><a href="index.html">world</a>::<wbr><a class="struct" href="#">World</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../../../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span></h1><span class="out-of-band"><a class="srclink" href="../../../src/widgetry/mapspace/world.rs.html#20-31">source</a> · <a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span></div><div class="docblock item-decl"><pre class="rust struct"><code>pub struct World<ID: <a class="trait" href="trait.ObjectID.html" title="trait widgetry::mapspace::world::ObjectID">ObjectID</a>> {
|
||||
objects: <a class="struct" href="https://doc.rust-lang.org/1.61.0/std/collections/hash/map/struct.HashMap.html" title="struct std::collections::hash::map::HashMap">HashMap</a><ID, <a class="struct" href="struct.Object.html" title="struct widgetry::mapspace::world::Object">Object</a><ID>>,
|
||||
quadtree: QuadTree<ID>,
|
||||
@ -12,7 +12,7 @@
|
||||
dragging_from: <a class="enum" href="https://doc.rust-lang.org/1.61.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.tuple.html">(</a><a class="struct" href="../../../geom/pt/struct.Pt2D.html" title="struct geom::pt::Pt2D">Pt2D</a>, <a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.bool.html">bool</a><a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.tuple.html">)</a>>,
|
||||
}</code></pre></div><details class="rustdoc-toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A <code>World</code> manages objects that exist in “map-space”, the zoomable and pannable canvas. These
|
||||
objects can be drawn, hovered on, clicked, dragged, etc.</p>
|
||||
</div></details><h2 id="fields" class="fields small-section-header">Fields<a href="#fields" class="anchor"></a></h2><span id="structfield.objects" class="structfield small-section-header"><a href="#structfield.objects" class="anchor field"></a><code>objects: <a class="struct" href="https://doc.rust-lang.org/1.61.0/std/collections/hash/map/struct.HashMap.html" title="struct std::collections::hash::map::HashMap">HashMap</a><ID, <a class="struct" href="struct.Object.html" title="struct widgetry::mapspace::world::Object">Object</a><ID>></code></span><span id="structfield.quadtree" class="structfield small-section-header"><a href="#structfield.quadtree" class="anchor field"></a><code>quadtree: QuadTree<ID></code></span><span id="structfield.draw_master_batches" class="structfield small-section-header"><a href="#structfield.draw_master_batches" class="anchor field"></a><code>draw_master_batches: <a class="struct" href="https://doc.rust-lang.org/1.61.0/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="struct" href="../struct.ToggleZoomed.html" title="struct widgetry::mapspace::ToggleZoomed">ToggleZoomed</a>></code></span><span id="structfield.hovering" class="structfield small-section-header"><a href="#structfield.hovering" class="anchor field"></a><code>hovering: <a class="enum" href="https://doc.rust-lang.org/1.61.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><ID></code></span><span id="structfield.dragging_from" class="structfield small-section-header"><a href="#structfield.dragging_from" class="anchor field"></a><code>dragging_from: <a class="enum" href="https://doc.rust-lang.org/1.61.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.tuple.html">(</a><a class="struct" href="../../../geom/pt/struct.Pt2D.html" title="struct geom::pt::Pt2D">Pt2D</a>, <a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.bool.html">bool</a><a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.tuple.html">)</a>></code></span><h2 id="implementations" class="small-section-header">Implementations<a href="#implementations" class="anchor"></a></h2><div id="implementations-list"><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../../../src/widgetry/mapspace/world.rs.html#318-640">source</a></span><a href="#impl" class="anchor"></a><h3 class="code-header in-band">impl<ID: <a class="trait" href="trait.ObjectID.html" title="trait widgetry::mapspace::world::ObjectID">ObjectID</a>> <a class="struct" href="struct.World.html" title="struct widgetry::mapspace::world::World">World</a><ID></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.unbounded" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../../src/widgetry/mapspace/world.rs.html#320-333">source</a></span><a href="#method.unbounded" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.unbounded" class="fnname">unbounded</a>() -> <a class="struct" href="struct.World.html" title="struct widgetry::mapspace::world::World">World</a><ID></h4></section></summary><div class="docblock"><p>Creates an empty <code>World</code>, whose objects can exist anywhere from (0, 0) to the max f64.</p>
|
||||
</div></details><h2 id="fields" class="fields small-section-header">Fields<a href="#fields" class="anchor"></a></h2><span id="structfield.objects" class="structfield small-section-header"><a href="#structfield.objects" class="anchor field"></a><code>objects: <a class="struct" href="https://doc.rust-lang.org/1.61.0/std/collections/hash/map/struct.HashMap.html" title="struct std::collections::hash::map::HashMap">HashMap</a><ID, <a class="struct" href="struct.Object.html" title="struct widgetry::mapspace::world::Object">Object</a><ID>></code></span><span id="structfield.quadtree" class="structfield small-section-header"><a href="#structfield.quadtree" class="anchor field"></a><code>quadtree: QuadTree<ID></code></span><span id="structfield.draw_master_batches" class="structfield small-section-header"><a href="#structfield.draw_master_batches" class="anchor field"></a><code>draw_master_batches: <a class="struct" href="https://doc.rust-lang.org/1.61.0/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="struct" href="../struct.ToggleZoomed.html" title="struct widgetry::mapspace::ToggleZoomed">ToggleZoomed</a>></code></span><span id="structfield.hovering" class="structfield small-section-header"><a href="#structfield.hovering" class="anchor field"></a><code>hovering: <a class="enum" href="https://doc.rust-lang.org/1.61.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><ID></code></span><span id="structfield.dragging_from" class="structfield small-section-header"><a href="#structfield.dragging_from" class="anchor field"></a><code>dragging_from: <a class="enum" href="https://doc.rust-lang.org/1.61.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.tuple.html">(</a><a class="struct" href="../../../geom/pt/struct.Pt2D.html" title="struct geom::pt::Pt2D">Pt2D</a>, <a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.bool.html">bool</a><a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.tuple.html">)</a>></code></span><h2 id="implementations" class="small-section-header">Implementations<a href="#implementations" class="anchor"></a></h2><div id="implementations-list"><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../../../src/widgetry/mapspace/world.rs.html#318-646">source</a></span><a href="#impl" class="anchor"></a><h3 class="code-header in-band">impl<ID: <a class="trait" href="trait.ObjectID.html" title="trait widgetry::mapspace::world::ObjectID">ObjectID</a>> <a class="struct" href="struct.World.html" title="struct widgetry::mapspace::world::World">World</a><ID></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.unbounded" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../../src/widgetry/mapspace/world.rs.html#320-333">source</a></span><a href="#method.unbounded" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.unbounded" class="fnname">unbounded</a>() -> <a class="struct" href="struct.World.html" title="struct widgetry::mapspace::world::World">World</a><ID></h4></section></summary><div class="docblock"><p>Creates an empty <code>World</code>, whose objects can exist anywhere from (0, 0) to the max f64.</p>
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.bounded" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../../src/widgetry/mapspace/world.rs.html#336-346">source</a></span><a href="#method.bounded" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.bounded" class="fnname">bounded</a>(bounds: &<a class="struct" href="../../../geom/bounds/struct.Bounds.html" title="struct geom::bounds::Bounds">Bounds</a>) -> <a class="struct" href="struct.World.html" title="struct widgetry::mapspace::world::World">World</a><ID></h4></section></summary><div class="docblock"><p>Creates an empty <code>World</code>, whose objects can exist in the provided rectangular boundary.</p>
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.add" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../../src/widgetry/mapspace/world.rs.html#350-365">source</a></span><a href="#method.add" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.add" class="fnname">add</a>(&mut self, id: ID) -> <a class="struct" href="struct.ObjectBuilder.html" title="struct widgetry::mapspace::world::ObjectBuilder">ObjectBuilder</a><'_, ID></h4></section></summary><div class="docblock"><p>Start adding an object to the <code>World</code>. The caller should specify the object with methods on
|
||||
<code>ObjectBuilder</code>, then call <code>build</code>.</p>
|
||||
@ -24,24 +24,26 @@ if the object is deleted in the middle of being dragged.</p>
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.initialize_hover" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../../src/widgetry/mapspace/world.rs.html#418-423">source</a></span><a href="#method.initialize_hover" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.initialize_hover" class="fnname">initialize_hover</a>(&mut self, ctx: &<a class="struct" href="../../event_ctx/struct.EventCtx.html" title="struct widgetry::event_ctx::EventCtx">EventCtx</a><'_>)</h4></section></summary><div class="docblock"><p>After adding all objects to a <code>World</code>, call this to initially detect if the cursor is
|
||||
hovering on an object. This may also be called after adding or deleting objects to
|
||||
immediately recalculate hover before the mouse moves.</p>
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.rebuilt_during_drag" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../../src/widgetry/mapspace/world.rs.html#432-438">source</a></span><a href="#method.rebuilt_during_drag" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.rebuilt_during_drag" class="fnname">rebuilt_during_drag</a>(&mut self, prev_world: &<a class="struct" href="struct.World.html" title="struct widgetry::mapspace::world::World">World</a><ID>)</h4></section></summary><div class="docblock"><p>If a drag event causes the world to be totally rebuilt, call this with the previous world
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.hack_unset_hovering" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../../src/widgetry/mapspace/world.rs.html#427-429">source</a></span><a href="#method.hack_unset_hovering" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.hack_unset_hovering" class="fnname">hack_unset_hovering</a>(&mut self)</h4></section></summary><div class="docblock"><p>Forcibly reset the hovering state to empty. This is a necessary hack when launching a new
|
||||
state that uses <code>DrawBaselayer::PreviousState</code> and has tooltips.</p>
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.rebuilt_during_drag" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../../src/widgetry/mapspace/world.rs.html#438-444">source</a></span><a href="#method.rebuilt_during_drag" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.rebuilt_during_drag" class="fnname">rebuilt_during_drag</a>(&mut self, prev_world: &<a class="struct" href="struct.World.html" title="struct widgetry::mapspace::world::World">World</a><ID>)</h4></section></summary><div class="docblock"><p>If a drag event causes the world to be totally rebuilt, call this with the previous world
|
||||
to preserve the ongoing drag.</p>
|
||||
<p>This should be called after <code>initialize_hover</code>.</p>
|
||||
<p>Important: the rebuilt world must include the same object ID that’s currently being dragged
|
||||
from the previous world.</p>
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.draw_master_batch" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../../src/widgetry/mapspace/world.rs.html#442-444">source</a></span><a href="#method.draw_master_batch" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.draw_master_batch" class="fnname">draw_master_batch</a><I: <a class="trait" href="https://doc.rust-lang.org/1.61.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><<a class="struct" href="../struct.ToggleZoomedBuilder.html" title="struct widgetry::mapspace::ToggleZoomedBuilder">ToggleZoomedBuilder</a>>>(<br> &mut self, <br> ctx: &<a class="struct" href="../../event_ctx/struct.EventCtx.html" title="struct widgetry::event_ctx::EventCtx">EventCtx</a><'_>, <br> draw: I<br>)</h4></section></summary><div class="docblock"><p>Draw something underneath all objects. This is useful for performance, when a large number
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.draw_master_batch" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../../src/widgetry/mapspace/world.rs.html#448-450">source</a></span><a href="#method.draw_master_batch" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.draw_master_batch" class="fnname">draw_master_batch</a><I: <a class="trait" href="https://doc.rust-lang.org/1.61.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><<a class="struct" href="../struct.ToggleZoomedBuilder.html" title="struct widgetry::mapspace::ToggleZoomedBuilder">ToggleZoomedBuilder</a>>>(<br> &mut self, <br> ctx: &<a class="struct" href="../../event_ctx/struct.EventCtx.html" title="struct widgetry::event_ctx::EventCtx">EventCtx</a><'_>, <br> draw: I<br>)</h4></section></summary><div class="docblock"><p>Draw something underneath all objects. This is useful for performance, when a large number
|
||||
of objects never change appearance.</p>
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.draw_master_batch_built" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../../src/widgetry/mapspace/world.rs.html#447-449">source</a></span><a href="#method.draw_master_batch_built" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.draw_master_batch_built" class="fnname">draw_master_batch_built</a>(&mut self, draw: <a class="struct" href="../struct.ToggleZoomed.html" title="struct widgetry::mapspace::ToggleZoomed">ToggleZoomed</a>)</h4></section></summary><div class="docblock"><p>Like <code>draw_master_batch</code>, but for already-built objects.</p>
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.event" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../../src/widgetry/mapspace/world.rs.html#452-553">source</a></span><a href="#method.event" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.event" class="fnname">event</a>(&mut self, ctx: &mut <a class="struct" href="../../event_ctx/struct.EventCtx.html" title="struct widgetry::event_ctx::EventCtx">EventCtx</a><'_>) -> <a class="enum" href="enum.WorldOutcome.html" title="enum widgetry::mapspace::world::WorldOutcome">WorldOutcome</a><ID></h4></section></summary><div class="docblock"><p>Let objects in the world respond to something happening.</p>
|
||||
</div></details><section id="method.calculate_hover" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../../src/widgetry/mapspace/world.rs.html#555-576">source</a></span><a href="#method.calculate_hover" class="anchor"></a><h4 class="code-header">fn <a href="#method.calculate_hover" class="fnname">calculate_hover</a>(&self, cursor: <a class="struct" href="../../../geom/pt/struct.Pt2D.html" title="struct geom::pt::Pt2D">Pt2D</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.61.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><ID></h4></section><details class="rustdoc-toggle method-toggle" open><summary><section id="method.draw" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../../src/widgetry/mapspace/world.rs.html#579-607">source</a></span><a href="#method.draw" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.draw" class="fnname">draw</a>(&self, g: &mut <a class="struct" href="../../drawing/struct.GfxCtx.html" title="struct widgetry::drawing::GfxCtx">GfxCtx</a><'_>)</h4></section></summary><div class="docblock"><p>Draw objects in the world that’re currently visible.</p>
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.get_hovering" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../../src/widgetry/mapspace/world.rs.html#610-612">source</a></span><a href="#method.get_hovering" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.get_hovering" class="fnname">get_hovering</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/1.61.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><ID></h4></section></summary><div class="docblock"><p>Returns the object currently hovered on.</p>
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.override_tooltip" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../../src/widgetry/mapspace/world.rs.html#615-622">source</a></span><a href="#method.override_tooltip" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.override_tooltip" class="fnname">override_tooltip</a>(&mut self, id: <a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.reference.html">&</a>ID, tooltip: <a class="enum" href="https://doc.rust-lang.org/1.61.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../../text/struct.Text.html" title="struct widgetry::text::Text">Text</a>>) -> <a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Change an object’s tooltip. Returns true for success, false if the object didn’t exist.</p>
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.calculate_hovering" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../../src/widgetry/mapspace/world.rs.html#627-633">source</a></span><a href="#method.calculate_hovering" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.calculate_hovering" class="fnname">calculate_hovering</a>(&self, ctx: &<a class="struct" href="../../event_ctx/struct.EventCtx.html" title="struct widgetry::event_ctx::EventCtx">EventCtx</a><'_>) -> <a class="enum" href="https://doc.rust-lang.org/1.61.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><ID></h4></section></summary><div class="docblock"><p>Calculate the object currently underneath the cursor. This should only be used when the
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.draw_master_batch_built" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../../src/widgetry/mapspace/world.rs.html#453-455">source</a></span><a href="#method.draw_master_batch_built" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.draw_master_batch_built" class="fnname">draw_master_batch_built</a>(&mut self, draw: <a class="struct" href="../struct.ToggleZoomed.html" title="struct widgetry::mapspace::ToggleZoomed">ToggleZoomed</a>)</h4></section></summary><div class="docblock"><p>Like <code>draw_master_batch</code>, but for already-built objects.</p>
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.event" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../../src/widgetry/mapspace/world.rs.html#458-559">source</a></span><a href="#method.event" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.event" class="fnname">event</a>(&mut self, ctx: &mut <a class="struct" href="../../event_ctx/struct.EventCtx.html" title="struct widgetry::event_ctx::EventCtx">EventCtx</a><'_>) -> <a class="enum" href="enum.WorldOutcome.html" title="enum widgetry::mapspace::world::WorldOutcome">WorldOutcome</a><ID></h4></section></summary><div class="docblock"><p>Let objects in the world respond to something happening.</p>
|
||||
</div></details><section id="method.calculate_hover" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../../src/widgetry/mapspace/world.rs.html#561-582">source</a></span><a href="#method.calculate_hover" class="anchor"></a><h4 class="code-header">fn <a href="#method.calculate_hover" class="fnname">calculate_hover</a>(&self, cursor: <a class="struct" href="../../../geom/pt/struct.Pt2D.html" title="struct geom::pt::Pt2D">Pt2D</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.61.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><ID></h4></section><details class="rustdoc-toggle method-toggle" open><summary><section id="method.draw" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../../src/widgetry/mapspace/world.rs.html#585-613">source</a></span><a href="#method.draw" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.draw" class="fnname">draw</a>(&self, g: &mut <a class="struct" href="../../drawing/struct.GfxCtx.html" title="struct widgetry::drawing::GfxCtx">GfxCtx</a><'_>)</h4></section></summary><div class="docblock"><p>Draw objects in the world that’re currently visible.</p>
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.get_hovering" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../../src/widgetry/mapspace/world.rs.html#616-618">source</a></span><a href="#method.get_hovering" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.get_hovering" class="fnname">get_hovering</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/1.61.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><ID></h4></section></summary><div class="docblock"><p>Returns the object currently hovered on.</p>
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.override_tooltip" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../../src/widgetry/mapspace/world.rs.html#621-628">source</a></span><a href="#method.override_tooltip" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.override_tooltip" class="fnname">override_tooltip</a>(&mut self, id: <a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.reference.html">&</a>ID, tooltip: <a class="enum" href="https://doc.rust-lang.org/1.61.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../../text/struct.Text.html" title="struct widgetry::text::Text">Text</a>>) -> <a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Change an object’s tooltip. Returns true for success, false if the object didn’t exist.</p>
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.calculate_hovering" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../../src/widgetry/mapspace/world.rs.html#633-639">source</a></span><a href="#method.calculate_hovering" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.calculate_hovering" class="fnname">calculate_hovering</a>(&self, ctx: &<a class="struct" href="../../event_ctx/struct.EventCtx.html" title="struct widgetry::event_ctx::EventCtx">EventCtx</a><'_>) -> <a class="enum" href="https://doc.rust-lang.org/1.61.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><ID></h4></section></summary><div class="docblock"><p>Calculate the object currently underneath the cursor. This should only be used when the
|
||||
<code>World</code> is not being actively updated by calling <code>event</code>. If another state temporarily
|
||||
needs to disable most interactions with objects, it can poll this instead.</p>
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.get_hovered_keybindings" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../../src/widgetry/mapspace/world.rs.html#637-639">source</a></span><a href="#method.get_hovered_keybindings" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.get_hovered_keybindings" class="fnname">get_hovered_keybindings</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/1.61.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><&<a class="struct" href="https://doc.rust-lang.org/1.61.0/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.tuple.html">(</a><a class="enum" href="../../event/enum.MultiKey.html" title="enum widgetry::event::MultiKey">MultiKey</a>, &'static <a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.str.html">str</a><a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.tuple.html">)</a>>></h4></section></summary><div class="docblock"><p>If an object is currently being hovered on, return its keybindings. This should be used to
|
||||
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.get_hovered_keybindings" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../../src/widgetry/mapspace/world.rs.html#643-645">source</a></span><a href="#method.get_hovered_keybindings" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.get_hovered_keybindings" class="fnname">get_hovered_keybindings</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/1.61.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><&<a class="struct" href="https://doc.rust-lang.org/1.61.0/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.tuple.html">(</a><a class="enum" href="../../event/enum.MultiKey.html" title="enum widgetry::event::MultiKey">MultiKey</a>, &'static <a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.str.html">str</a><a class="primitive" href="https://doc.rust-lang.org/1.61.0/std/primitive.tuple.html">)</a>>></h4></section></summary><div class="docblock"><p>If an object is currently being hovered on, return its keybindings. This should be used to
|
||||
describe interactions; to detect the keypresses, listen for <code>WorldOutcome::Keypress</code>.</p>
|
||||
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-1" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../../../src/widgetry/mapspace/world.rs.html#647-657">source</a></span><a href="#impl-1" class="anchor"></a><h3 class="code-header in-band">impl <a class="struct" href="struct.World.html" title="struct widgetry::mapspace::world::World">World</a><<a class="struct" href="struct.DummyID.html" title="struct widgetry::mapspace::world::DummyID">DummyID</a>></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.add_unnamed" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../../src/widgetry/mapspace/world.rs.html#654-656">source</a></span><a href="#method.add_unnamed" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.add_unnamed" class="fnname">add_unnamed</a>(&mut self) -> <a class="struct" href="struct.ObjectBuilder.html" title="struct widgetry::mapspace::world::ObjectBuilder">ObjectBuilder</a><'_, <a class="struct" href="struct.DummyID.html" title="struct widgetry::mapspace::world::DummyID">DummyID</a>></h4></section></summary><div class="docblock"><p>Begin adding an unnamed object to the <code>World</code>.</p>
|
||||
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-1" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../../../src/widgetry/mapspace/world.rs.html#653-663">source</a></span><a href="#impl-1" class="anchor"></a><h3 class="code-header in-band">impl <a class="struct" href="struct.World.html" title="struct widgetry::mapspace::world::World">World</a><<a class="struct" href="struct.DummyID.html" title="struct widgetry::mapspace::world::DummyID">DummyID</a>></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.add_unnamed" class="method has-srclink"><span class="rightside"><a class="srclink" href="../../../src/widgetry/mapspace/world.rs.html#660-662">source</a></span><a href="#method.add_unnamed" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.add_unnamed" class="fnname">add_unnamed</a>(&mut self) -> <a class="struct" href="struct.ObjectBuilder.html" title="struct widgetry::mapspace::world::ObjectBuilder">ObjectBuilder</a><'_, <a class="struct" href="struct.DummyID.html" title="struct widgetry::mapspace::world::DummyID">DummyID</a>></h4></section></summary><div class="docblock"><p>Begin adding an unnamed object to the <code>World</code>.</p>
|
||||
<p>Note: You must call <code>build</code> on this object before calling <code>add_unnamed</code> again. Otherwise,
|
||||
the object IDs will collide.</p>
|
||||
<p>TODO This will break when objects are deleted!</p>
|
||||
|
@ -5,5 +5,5 @@
|
||||
<nav class="sidebar"><a class="sidebar-logo" href="../../../widgetry/index.html"><div class="logo-container"><img class="rust-logo" src="../../../rust-logo.svg" alt="logo"></div>
|
||||
</a><h2 class="location"><a href="#">ObjectID</a></h2><div class="sidebar-elems"><section><div class="block"><h3 class="sidebar-title"><a href="#implementors">Implementors</a></h3></div></section><h2 class="location"><a href="index.html">In widgetry::mapspace::world</a></h2><div id="sidebar-vars" data-name="ObjectID" data-ty="trait" data-relpath=""></div><script defer src="sidebar-items.js"></script></div></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../../../widgetry/index.html"><img class="rust-logo" src="../../../rust-logo.svg" alt="logo"></a><nav class="sub"><div class="theme-picker hidden"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu" title="themes"><img width="22" height="22" alt="Pick another theme!" src="../../../brush.svg"></button><div id="theme-choices" role="menu"></div></div><form class="search-form"><div class="search-container"><span></span><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><button type="button" id="help-button" title="help">?</button><a id="settings-menu" href="../../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../../wheel.svg"></a></div></form></nav></div><section id="main-content" class="content"><div class="main-heading">
|
||||
<h1 class="fqn"><span class="in-band">Trait <a href="../../index.html">widgetry</a>::<wbr><a href="../index.html">mapspace</a>::<wbr><a href="index.html">world</a>::<wbr><a class="trait" href="#">ObjectID</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../../../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span></h1><span class="out-of-band"><a class="srclink" href="../../../src/widgetry/mapspace/world.rs.html#101">source</a> · <a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span></div><div class="docblock item-decl"><pre class="rust trait"><code>pub trait ObjectID: <a class="trait" href="https://doc.rust-lang.org/1.61.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> + <a class="trait" href="https://doc.rust-lang.org/1.61.0/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> + <a class="trait" href="https://doc.rust-lang.org/1.61.0/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> + <a class="trait" href="https://doc.rust-lang.org/1.61.0/core/cmp/trait.Eq.html" title="trait core::cmp::Eq">Eq</a> + <a class="trait" href="https://doc.rust-lang.org/1.61.0/core/hash/trait.Hash.html" title="trait core::hash::Hash">Hash</a> { }</code></pre></div><details class="rustdoc-toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Objects in a <code>World</code> are uniquely identified by this caller-specified type</p>
|
||||
</div></details><h2 id="implementors" class="small-section-header">Implementors<a href="#implementors" class="anchor"></a></h2><div class="item-list" id="implementors-list"><section id="impl-ObjectID" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../../../src/widgetry/mapspace/world.rs.html#645">source</a></span><a href="#impl-ObjectID" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="trait.ObjectID.html" title="trait widgetry::mapspace::world::ObjectID">ObjectID</a> for <a class="struct" href="struct.DummyID.html" title="struct widgetry::mapspace::world::DummyID">DummyID</a></h3></section></div><script type="text/javascript" src="../../../implementors/widgetry/mapspace/world/trait.ObjectID.js" async></script></section><section id="search" class="content hidden"></section></div></main><div id="rustdoc-vars" data-root-path="../../../" data-current-crate="widgetry" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.61.0 (fe5b13d68 2022-05-18)" ></div>
|
||||
</div></details><h2 id="implementors" class="small-section-header">Implementors<a href="#implementors" class="anchor"></a></h2><div class="item-list" id="implementors-list"><section id="impl-ObjectID" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../../../src/widgetry/mapspace/world.rs.html#651">source</a></span><a href="#impl-ObjectID" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="trait.ObjectID.html" title="trait widgetry::mapspace::world::ObjectID">ObjectID</a> for <a class="struct" href="struct.DummyID.html" title="struct widgetry::mapspace::world::DummyID">DummyID</a></h3></section></div><script type="text/javascript" src="../../../implementors/widgetry/mapspace/world/trait.ObjectID.js" async></script></section><section id="search" class="content hidden"></section></div></main><div id="rustdoc-vars" data-root-path="../../../" data-current-crate="widgetry" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.61.0 (fe5b13d68 2022-05-18)" ></div>
|
||||
</body></html>
|
Loading…
Reference in New Issue
Block a user