Module conrod_core::graph
source · Expand description
Conrod uses a directed acyclic graph to manage both storing widgets and describing their relationships.
The primary type of interest in this module is the Graph type.
Re-exports
pub use self::depth_order::DepthOrder;
Modules
This module was created in order to keep the
graph
module clean and focused upon the
Graph data structure behaviour.Types and functionality related to the calculation of a Graph’s rendering depth order.
Structs
A container for caching a Widget’s state inside a Graph Node.
Stores the dynamic state of a UI tree of Widgets.
A wrapper around a
widget::IsOverFn
to make implementing Debug
easier for Container
.The state type that we’ll dynamically cast to and from
Any
for storage within the cache.Enums
Constants
The number of different variants within the Edge enum.
Traits
A trait providing a variety of useful methods for traversing some graph type G.
Type Definitions
A Walker over some node’s child nodes.
An alias for a Walker over a node’s Depth children.
An alias for our Graph’s Edge Index.
An alias for some filtered children walker.
An alias for a Walker over a node’s Graphic children.
An alias for a tuple containing an associated
Edge/widget::Id
pair.A Walker over some node’s parent nodes.
An alias for a Walker over a node’s X and Y Position children respectively.
An alias for the iterator yielding both X and Y Position parents.
An alias for our Graph’s recursive walker.
An alias for our Graph’s WouldCycle error type.
An alias for a Walker over a node’s X Position children.
An alias for a Walker over a node’s Y Position children.