[][src]Module conrod::graph

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

algo

This module was created in order to keep the graph module clean and focused upon the Graph data structure behaviour.

depth_order

Types and functionality related to the calculation of a Graph's rendering depth order.

Structs

Container

A container for caching a Widget's state inside a Graph Node.

Graph

Stores the dynamic state of a UI tree of Widgets.

IsOverFn

A wrapper around a widget::IsOverFn to make implementing Debug easier for Container.

UniqueWidgetState

The state type that we'll dynamically cast to and from Any for storage within the cache.

Enums

Edge

An edge between nodes within the UI Graph.

Node

A node for use within the Graph.

Constants

NUM_EDGE_VARIANTS

The number of different variants within the Edge enum.

Traits

Walker

A trait providing a variety of useful methods for traversing some graph type G.

Type Definitions

Children

A Walker over some node's child nodes.

DepthChildren

An alias for a Walker over a node's Depth children.

EdgeIndex

An alias for our Graph's Edge Index.

FilteredChildren

An alias for some filtered children walker.

GraphicChildren

An alias for a Walker over a node's Graphic children.

IndexPair

An alias for a tuple containing an associated Edge/widget::Id pair.

Parents

A Walker over some node's parent nodes.

PositionChildren

An alias for a Walker over a node's X and Y Position children respectively.

PositionParents

An alias for the iterator yielding both X and Y Position parents.

RecursiveWalk

An alias for our Graph's recursive walker.

WouldCycle

An alias for our Graph's WouldCycle error type.

XPositionChildren

An alias for a Walker over a node's X Position children.

YPositionChildren

An alias for a Walker over a node's Y Position children.