Crate conrod [] [src]

Conrod

An easy-to-use, immediate-mode, 2D GUI library featuring a range of useful widgets.

If you are new to Conrod, we recommend checking out The Guide.

Reexports

pub use color::{Color, Colorable};
pub use graph::NodeIndex;
pub use theme::Theme;
pub use widget::{scroll, Widget};

Modules

backend

Feature-gated, backend-specific functionality.

color

A library providing simple Color and Gradient types along with useful transformations and presets.

event

Contains all the structs and enums to describe all of the input events that Widgets can handle.

graph

Conrod uses a directed acyclic graph to manage both storing widgets and describing their relationships.

guide

The Conrod Guide

image

A type used to manage a user's image data and map them to Image widgets:

input

This module contains all the logic for handling input events and providing them to widgets.

render

Conrod's generic graphics backend.

text

Text layout logic.

theme

Types a functionality for handling Canvas and Widget theming.

utils

Various utility functions used throughout Conrod.

widget

Widgets are the core building blocks for every conrod user interface.

Macros

builder_method

A macro for simplifying implementation of methods for the builder pattern.

builder_methods

A macro to simplify implementation of "builder-pattern" methods.

image_map

A macro for simplifying the instantiation of an image::Map.

widget_ids

Generate a list of unique IDs given a list of identifiers.

widget_style

A macro for vastly simplifying the definition and implementation of a widget's associated Style type.

Structs

Padding

The distance between the inner edge of a border and the outer edge of the inner content.

Range

Some start and end position along a single axis.

Rect

Defines a Rectangle's bounds across the x and y axes.

Ui

Ui is the most important type within Conrod and is necessary for rendering and maintaining widget state.

UiBuilder

A constructor type for building a Ui instance with a set of optional parameters.

UiCell

A wrapper around the Ui that restricts the user from mutating the Ui in certain ways while in the scope of the Ui::set_widgets function and within Widgets' update methods. Using the UiCell, users may access the Ui immutably (via Deref) however they wish, however they may only mutate the Ui via the &mut self methods provided by the UiCell.

Enums

Align

The orientation of Alignment along some Axis.

Axis

Represents either Axis in the 2-dimensional plane.

Bordering

To be used as a parameter for defining the aesthetic of the widget border.

Corner

Either of the four corners of a Rect.

Dimension

The length of a Widget over either the x or y axes.

Direction

Directionally positioned, normally relative to some other widget.

Edge

Represents either the Start or End Edge of a Range.

Place

Place the widget at a position on some other widget.

Position

Some Position of some Widget along a single axis.

Traits

Borderable

Widgets that may display a border.

Labelable

Widgets that may display some label.

Positionable

Widgets that are positionable.

Sizeable

Widgets that support different dimensions.

Type Definitions

Depth

The depth at which the widget will be rendered.

Dimensions

General use 2D spatial dimensions.

FontSize

Font size used throughout Conrod.

Margin

The margin for some Placement on either end of an axis.

Point

General use 2D spatial point.

Scalar

An alias over the Scalar type used throughout Conrod.