var searchIndex = {}; searchIndex["conrod"] = {"doc":"","items":[[3,"Padding","conrod","The distance between the inner edge of a border and the outer edge of the inner content.",null,null],[12,"x","","Padding on the start and end of the *x* axis.",0,null],[12,"y","","Padding on the start and end of the *y* axis.",0,null],[3,"Range","","Some start and end position along a single axis.",null,null],[12,"start","","The start of some `Range` along an axis.",1,null],[12,"end","","The end of some `Range` along an axis.",1,null],[3,"Rect","","Defines a Rectangle's bounds across the x and y axes.",null,null],[12,"x","","The start and end positions of the Rectangle on the x axis.",2,null],[12,"y","","The start and end positions of the Rectangle on the y axis.",2,null],[3,"Ui","","`Ui` is the most important type within Conrod and is necessary for rendering and maintaining\nwidget state.\n# Ui Handles the following:\n* Contains the state of all widgets which can be indexed via their widget::Index.\n* Stores rendering state for each widget until the end of each render cycle.\n* Contains the theme used for default styling of the widgets.\n* Maintains the latest user input state (for mouse and keyboard).\n* Maintains the latest window dimensions.",null,null],[12,"theme","","The theme used to set default styling for widgets.",3,null],[12,"window","","An index into the root widget of the graph, representing the entire window.",3,null],[12,"global_input","","Handles aggregation of events and providing them to Widgets",3,null],[12,"fonts","","Manages all fonts that have been loaded by the user.",3,null],[12,"win_w","","Window width.",3,null],[12,"win_h","","Window height.",3,null],[3,"UiCell","","A wrapper around the `Ui` that restricts the user from mutating the `Ui` in certain ways while\nin the scope of the `Ui::set_widgets` function and within `Widget`s' `update` methods. Using\nthe `UiCell`, users may access the `Ui` immutably (via `Deref`) however they wish, however they\nmay only mutate the `Ui` via the `&mut self` methods provided by the `UiCell`.",null,null],[3,"UiBuilder","","A constructor type for building a `Ui` instance with a set of optional parameters.",null,null],[12,"maybe_theme","","The theme used to set default styling for widgets.",4,null],[12,"maybe_widgets_capacity","","An estimation of the maximum number of widgets that will be used with this `Ui` instance.",4,null],[4,"Bordering","","To be used as a parameter for defining the aesthetic\nof the widget border.",null,null],[13,"Border","","Border width and color.",5,null],[13,"NoBorder","","No border.",5,null],[4,"Align","","The orientation of **Align**ment along some **Axis**.",null,null],[13,"Start","","**Align** our **Start** with the **Start** of some other widget along the **Axis**.",6,null],[13,"Middle","","**Align** our **Middle** with the **Middle** of some other widget along the **Axis**.",6,null],[13,"End","","**Align** our **End** with the **End** of some other widget along the **Axis**.",6,null],[4,"Axis","","Represents either **Axis** in the 2-dimensional plane.",null,null],[13,"X","","The horizontal plane's Axis.",7,null],[13,"Y","","The vertical plane's Axis.",7,null],[4,"Corner","","Either of the four corners of a **Rect**.",null,null],[13,"TopLeft","","The top left corner of a **Rect**.",8,null],[13,"TopRight","","The top right corner of a **Rect**.",8,null],[13,"BottomLeft","","The bottom left corner of a **Rect**.",8,null],[13,"BottomRight","","The bottom right corner of a **Rect**.",8,null],[4,"Direction","","Directionally positioned, normally relative to some other widget.",null,null],[13,"Forwards","","Positioned forwards (*positive* **Scalar**) along some **Axis**.",9,null],[13,"Backwards","","Positioned backwards (*negative* **Scalar**) along some **Axis**.",9,null],[4,"Dimension","","The length of a **Widget** over either the *x* or *y* axes.",null,null],[13,"Absolute","","Some specific length has been given.",10,null],[13,"Of","","The dimension should match that of the widget at the given index.",10,null],[13,"KidAreaOf","","The dimension should match that of the `kid_area` of the widget at the given index.",10,null],[4,"Edge","","Represents either the **Start** or **End** **Edge** of a **Range**.",null,null],[13,"Start","","The beginning of a **Range**.",11,null],[13,"End","","The end of a **Range**.",11,null],[4,"Place","","Place the widget at a position on some other widget.",null,null],[13,"Start","","Place upon the **Start** of the Widget's `kid_area`.",12,null],[13,"Middle","","Place upon the **Middle** of the Widget's `kid_area`.",12,null],[13,"End","","Place upon the **End** of the Widget's `kid_area`.",12,null],[4,"Position","","Some **Position** of some **Widget** along a single axis.",null,null],[13,"Absolute","","A specific position.",13,null],[13,"Relative","","A position relative to some other Widget.",13,null],[13,"Align","","A position aligned with some other Widget.",13,null],[13,"Direction","","A direction relative to some other Widget.",13,null],[13,"Place","","A position at a place on some other Widget.",13,null],[0,"backend","","Feature-gated, backend-specific functionality.",null,null],[0,"piston","conrod::backend","Functionality for simplifying the work involved when using conrod along-side piston.",null,null],[0,"draw","conrod::backend::piston","A piston backend for rendering conrod primitives.",null,null],[3,"Context","conrod::backend::piston::draw","Drawing 2d context.",null,null],[12,"viewport","","Viewport information.",14,null],[12,"view","","View transformation.",14,null],[12,"transform","","Current transformation.",14,null],[12,"draw_state","","Current draw state settings.",14,null],[3,"DrawState","","Graphics draw state used for blending, clipping and stencil rendering.",null,null],[12,"scissor","","Scissor mask to use. If set, no pixel outside of this\nrectangle (in screen space) will be written to as a result of rendering.",15,null],[12,"stencil","","Stencil test to use. If None, no stencil testing is done.",15,null],[12,"blend","","Blend function to use. If None, blending is disabled.",15,null],[8,"Graphics","","Implemented by all graphics back-ends.",null,null],[16,"Texture","","The texture type associated with the back-end.",16,null],[10,"clear_color","","Clears background with a color.",16,null],[10,"clear_stencil","","Clears stencil buffer with a value, usually 0.",16,null],[10,"tri_list","","Renders list of 2d triangles using a solid color.",16,null],[10,"tri_list_uv","","Renders list of 2d triangles using a color and a texture.",16,null],[11,"rectangle","","Draws a rectangle.",16,null],[11,"polygon","","Draws a polygon.",16,null],[11,"polygon_tween_lerp","","Draws a tweened polygon using linear interpolation.",16,null],[11,"image","","Draws image.",16,null],[11,"ellipse","","Draws ellipse.",16,null],[11,"line","","Draws line.",16,null],[11,"circle_arc","","Draws circle arc.",16,null],[11,"deform_image","","Draws deformed image.",16,null],[8,"ImageSize","","Implemented by all images to be used with generic algorithms.",null,null],[10,"get_size","","Get the image size.",17,null],[11,"get_width","","Gets the image width.",17,null],[11,"get_height","","Gets the image height.",17,null],[8,"Transformed","","Implemented by contexts that can transform.",null,null],[10,"append_transform","","Appends transform to the current one.",18,null],[10,"prepend_transform","","Prepends transform to the current one.",18,null],[10,"trans","","Translate x an y in local coordinates.",18,null],[11,"rot_deg","","Rotates degrees in local coordinates.",18,null],[10,"rot_rad","","Rotate radians in local coordinates.",18,null],[10,"orient","","Orients x axis to look at point locally.",18,null],[10,"scale","","Scales in local coordinates.",18,null],[11,"zoom","","Scales in both directions in local coordinates.",18,null],[11,"flip_v","","Flips vertically in local coordinates.",18,null],[11,"flip_h","","Flips horizontally in local coordinates.",18,null],[11,"flip_hv","","Flips horizontally and vertically in local coordinates.",18,null],[10,"shear","","Shears in local coordinates.",18,null],[5,"primitives","","Render the given sequence of conrod primitive widgets.",null,{"inputs":[{"name":"p"},{"name":"context"},{"name":"g"},{"name":"t"},{"name":"glyphcache"},{"name":"map"},{"name":"c"},{"name":"f"}],"output":null}],[5,"primitive","","Render a single `Primitive`.",null,{"inputs":[{"name":"primitive"},{"name":"context"},{"name":"g"},{"name":"t"},{"name":"glyphcache"},{"name":"map"},{"name":"vec"},{"name":"c"},{"name":"f"}],"output":null}],[0,"event","conrod::backend::piston","A backend for converting piston events to conrod's `event::Raw` type.",null,null],[8,"GenericEvent","conrod::backend::piston::event","Implemented by all events",null,null],[10,"event_id","","The id of this event.",19,null],[10,"with_args","","Calls closure with arguments",19,null],[10,"from_args","","Converts from arguments to `Self`",19,{"inputs":[{"name":"eventid"},{"name":"any"},{"name":"self"}],"output":{"name":"option"}}],[5,"convert","","Converts any `GenericEvent` to a `Raw` conrod event.",null,{"inputs":[{"name":"e"},{"name":"scalar"},{"name":"scalar"}],"output":{"name":"option"}}],[0,"piston_window","conrod::backend","Helper functions for using conrod with the `piston_window` crate.",null,null],[3,"GlyphCache","conrod::backend::piston_window","A wrapper around a `G2dTexture` and a rusttype GPU `Cache`",null,null],[5,"convert_event","","Converts any `GenericEvent` to a `Raw` conrod event.",null,{"inputs":[{"name":"e"},{"name":"pistonwindow"}],"output":{"name":"option"}}],[5,"draw","","Renders the given sequence of conrod primitives.",null,{"inputs":[{"name":"context"},{"name":"g2d"},{"name":"p"},{"name":"glyphcache"},{"name":"map"},{"name":"f"}],"output":null}],[5,"draw_primitive","","Draw a single `Primitive` to the screen.",null,{"inputs":[{"name":"context"},{"name":"g2d"},{"name":"primitive"},{"name":"glyphcache"},{"name":"map"},{"name":"vec"},{"name":"f"}],"output":null}],[11,"new","","Constructor for a new `GlyphCache`.",20,{"inputs":[{"name":"pistonwindow"},{"name":"u32"},{"name":"u32"}],"output":{"name":"glyphcache"}}],[11,"clone","conrod","",5,null],[0,"color","","",null,null],[3,"Hsla","conrod::color","The parts of HSL along with an alpha for transparency.",null,null],[12,"0","","",21,null],[12,"1","","",21,null],[12,"2","","",21,null],[12,"3","","",21,null],[3,"Rgba","","The parts of RGB along with an alpha for transparency.",null,null],[12,"0","","",22,null],[12,"1","","",22,null],[12,"2","","",22,null],[12,"3","","",22,null],[4,"Color","","Color supporting RGB and HSL variants.",null,null],[13,"Rgba","","Red, Green, Blue, Alpha - All values' scales represented between 0.0 and 1.0.",23,null],[13,"Hsla","","Hue, Saturation, Lightness, Alpha - all valuess scales represented between 0.0 and 1.0.",23,null],[4,"Gradient","","Linear or Radial Gradient.",null,null],[13,"Linear","","Takes a start and end point and then a series of color stops that indicate how to\ninterpolate between the start and end points.",24,null],[13,"Radial","","First takes a start point and inner radius. Then takes an end point and outer radius.\nIt then takes a series of color stops that indicate how to interpolate between the\ninner and outer circles.",24,null],[5,"rgba","","Create RGB colors with an alpha component for transparency.\nThe alpha component is specified with numbers between 0 and 1.",null,{"inputs":[{"name":"f32"},{"name":"f32"},{"name":"f32"},{"name":"f32"}],"output":{"name":"color"}}],[5,"rgb","","Create RGB colors from numbers between 0.0 and 1.0.",null,{"inputs":[{"name":"f32"},{"name":"f32"},{"name":"f32"}],"output":{"name":"color"}}],[5,"rgba_bytes","","Create RGB colors from numbers between 0 and 255 inclusive.\nThe alpha component is specified with numbers between 0 and 1.",null,{"inputs":[{"name":"u8"},{"name":"u8"},{"name":"u8"},{"name":"f32"}],"output":{"name":"color"}}],[5,"rgb_bytes","","Create RGB colors from numbers between 0 and 255 inclusive.",null,{"inputs":[{"name":"u8"},{"name":"u8"},{"name":"u8"}],"output":{"name":"color"}}],[5,"hsla","","Create [HSL colors](http://en.wikipedia.org/wiki/HSL_and_HSV) with an alpha component for\ntransparency.",null,{"inputs":[{"name":"f32"},{"name":"f32"},{"name":"f32"},{"name":"f32"}],"output":{"name":"color"}}],[5,"hsl","","Create [HSL colors](http://en.wikipedia.org/wiki/HSL_and_HSV). This gives you access to colors\nmore like a color wheel, where all hues are arranged in a circle that you specify with radians.",null,{"inputs":[{"name":"f32"},{"name":"f32"},{"name":"f32"}],"output":{"name":"color"}}],[5,"grayscale","","Produce a gray based on the input. 0.0 is white, 1.0 is black.",null,{"inputs":[{"name":"f32"}],"output":{"name":"color"}}],[5,"greyscale","","Produce a gray based on the input. 0.0 is white, 1.0 is black.",null,{"inputs":[{"name":"f32"}],"output":{"name":"color"}}],[5,"f32_to_byte","","Convert an f32 color to a byte.",null,{"inputs":[{"name":"f32"}],"output":{"name":"u8"}}],[5,"rgb_to_hsl","","Pure function for converting rgb to hsl.",null,null],[5,"hsl_to_rgb","","Pure function for converting hsl to rgb.",null,null],[5,"linear","","Create a linear gradient.",null,null],[5,"radial","","Create a radial gradient.",null,null],[6,"Colour","","Regional spelling alias.",null,null],[17,"LIGHT_RED","","Scarlet Red - Light - #EF2929",null,null],[17,"RED","","Scarlet Red - Regular - #CC0000",null,null],[17,"DARK_RED","","Scarlet Red - Dark - #A30000",null,null],[17,"LIGHT_ORANGE","","Orange - Light - #FCAF3E",null,null],[17,"ORANGE","","Orange - Regular - #F57900",null,null],[17,"DARK_ORANGE","","Orange - Dark - #CE5C00",null,null],[17,"LIGHT_YELLOW","","Butter - Light - #FCE94F",null,null],[17,"YELLOW","","Butter - Regular - #EDD400",null,null],[17,"DARK_YELLOW","","Butter - Dark - #C4A000",null,null],[17,"LIGHT_GREEN","","Chameleon - Light - #8AE234",null,null],[17,"GREEN","","Chameleon - Regular - #73D216",null,null],[17,"DARK_GREEN","","Chameleon - Dark - #4E9A06",null,null],[17,"LIGHT_BLUE","","Sky Blue - Light - #729FCF",null,null],[17,"BLUE","","Sky Blue - Regular - #3465A4",null,null],[17,"DARK_BLUE","","Sky Blue - Dark - #204A87",null,null],[17,"LIGHT_PURPLE","","Plum - Light - #AD7FA8",null,null],[17,"PURPLE","","Plum - Regular - #75507B",null,null],[17,"DARK_PURPLE","","Plum - Dark - #5C3566",null,null],[17,"LIGHT_BROWN","","Chocolate - Light - #E9B96E",null,null],[17,"BROWN","","Chocolate - Regular - #C17D11",null,null],[17,"DARK_BROWN","","Chocolate - Dark - #8F5902",null,null],[17,"BLACK","","Straight Black.",null,null],[17,"WHITE","","Straight White.",null,null],[17,"LIGHT_GRAY","","Alluminium - Light",null,null],[17,"GRAY","","Alluminium - Regular",null,null],[17,"DARK_GRAY","","Alluminium - Dark",null,null],[17,"LIGHT_GREY","","Aluminium - Light - #EEEEEC",null,null],[17,"GREY","","Aluminium - Regular - #D3D7CF",null,null],[17,"DARK_GREY","","Aluminium - Dark - #BABDB6",null,null],[17,"LIGHT_CHARCOAL","","Charcoal - Light - #888A85",null,null],[17,"CHARCOAL","","Charcoal - Regular - #555753",null,null],[17,"DARK_CHARCOAL","","Charcoal - Dark - #2E3436",null,null],[17,"TRANSPARENT","","Transparent",null,null],[8,"Colorable","","Types that can be colored.",null,null],[10,"color","","Set the color of the widget.",25,null],[11,"rgba","","Set the color of the widget from rgba values.",25,null],[11,"rgb","","Set the color of the widget from rgb values.",25,null],[11,"hsla","","Set the color of the widget from hsla values.",25,null],[11,"hsl","","Set the color of the widget from hsl values.",25,null],[11,"fmt","","",23,null],[11,"clone","","",23,null],[11,"eq","","",23,null],[11,"ne","","",23,null],[11,"complement","","Produce a complementary color. The two colors will accent each other. This is the same as\nrotating the hue by 180 degrees.",23,null],[11,"luminance","","Calculate and return the luminance of the Color.",23,null],[11,"plain_contrast","","Return either black or white, depending which contrasts the Color the most. This will be\nuseful for determining a readable color for text on any given background Color.",23,null],[11,"to_hsl","","Extract the components of a color in the HSL format.",23,null],[11,"to_rgb","","Extract the components of a color in the RGB format.",23,null],[11,"to_fsa","","Extract the components of a color in the RGB format within a fixed-size array.",23,null],[11,"to_byte_fsa","","Same as `to_fsa`, except r, g, b and a are represented in byte form.",23,null],[11,"with_luminance","","Return the same color but with the given luminance.",23,null],[11,"alpha","","Return the same color but with the alpha multiplied by the given alpha.",23,null],[11,"with_alpha","","Return the same color but with the given alpha.",23,null],[11,"highlighted","","Return a highlighted version of the current Color.",23,null],[11,"clicked","","Return a clicked version of the current Color.",23,null],[11,"invert","","Return the Color's invert.",23,null],[11,"red","","Return the red value.",23,null],[11,"green","","Return the green value.",23,null],[11,"blue","","Return the blue value.",23,null],[11,"set_red","","Set the red value.",23,null],[11,"set_green","","Set the green value.",23,null],[11,"set_blue","","Set the blue value.",23,null],[11,"fmt","","",21,null],[11,"clone","","",21,null],[11,"fmt","","",22,null],[11,"clone","","",22,null],[11,"fmt","","",24,null],[11,"clone","","",24,null],[0,"event","conrod","Contains all the structs and enums to describe all of the input events that `Widget`s\ncan handle.",null,null],[4,"RawEvent","conrod::event","Adds render and update events to input events",null,null],[13,"Render","","Render graphics.",26,null],[13,"AfterRender","","After rendering and swapping buffers.",26,null],[13,"Update","","Update the state of the application.",26,null],[13,"Idle","","Do background tasks that can be done incrementally.",26,null],[13,"Input","","Input event.",26,null],[4,"Input","","Models input events.",null,null],[13,"Press","","Pressed a button.",27,null],[13,"Release","","Released a button.",27,null],[13,"Move","","Moved mouse cursor.",27,null],[13,"Text","","Text (usually from keyboard).",27,null],[13,"Resize","","Window got resized.",27,null],[13,"Focus","","Window gained or lost focus.",27,null],[13,"Cursor","","Window gained or lost cursor.",27,null],[4,"Motion","","Models different kinds of motion.",null,null],[13,"MouseCursor","","x and y in window coordinates.",28,null],[13,"MouseRelative","","x and y in relative coordinates.",28,null],[13,"MouseScroll","","x and y in scroll ticks.",28,null],[13,"ControllerAxis","","controller axis move event.",28,null],[13,"Touch","","touch event.",28,null],[3,"Text","","Contains all relevant information for a Text event.",null,null],[12,"string","","All text that was entered as a part of the event.",29,null],[12,"modifiers","","The modifier keys that were down at the time.",29,null],[3,"Move","","Contains all relevant information for a Motion event.",null,null],[12,"motion","","The type of `Motion` that occurred.",30,null],[12,"modifiers","","The modifier keys that were down at the time.",30,null],[3,"Press","","Contains all relevant information for a Press event.",null,null],[12,"button","","The `Button` that was pressed.",31,null],[12,"modifiers","","The modifier keys that were down at the time.",31,null],[3,"MousePress","","Contains all relevant information for the event where a mouse button was pressed.",null,null],[12,"button","","The mouse button that was pressed.",32,null],[12,"xy","","The location at which the mouse was pressed.",32,null],[12,"modifiers","","The modifier keys that were down at the time.",32,null],[3,"KeyPress","","Contains all relevant information for the event where a keyboard button was pressed.",null,null],[12,"key","","The key that was pressed.",33,null],[12,"modifiers","","The modifier keys that were down at the time.",33,null],[3,"Release","","Contains all relevant information for a Release event.",null,null],[12,"button","","The `Button` that was released.",34,null],[12,"modifiers","","The modifier keys that were down at the time.",34,null],[3,"MouseRelease","","Contains all relevant information for the event where a mouse button was released.",null,null],[12,"button","","The mouse button that was released.",35,null],[12,"xy","","The location at which the mouse was released.",35,null],[12,"modifiers","","The modifier keys that were down at the time.",35,null],[3,"KeyRelease","","Contains all relevant information for the event where a keyboard button was release.",null,null],[12,"key","","The key that was release.",36,null],[12,"modifiers","","The modifier keys that were down at the time.",36,null],[3,"Drag","","Contains all the relevant information for a mouse drag.",null,null],[12,"button","","Which mouse button was being held during the drag",37,null],[12,"origin","","The point from which the current series of drag events began.",37,null],[12,"from","","The point from which this drag event began.",37,null],[12,"to","","The point at which this drag event ended.",37,null],[12,"delta_xy","","The magnitude of the vector between `from` and `to`.",37,null],[12,"total_delta_xy","","The magnitude of the vector between `origin` and `to`.",37,null],[12,"modifiers","","Which modifier keys are being held during the mouse drag.",37,null],[3,"Click","","Contains all the relevant information for a mouse click.",null,null],[12,"button","","Which mouse button was clicked",38,null],[12,"xy","","The position at which the mouse was released.",38,null],[12,"modifiers","","Which modifier keys, if any, that were being held down when the user clicked",38,null],[3,"DoubleClick","","Contains all the relevant information for a double click.",null,null],[12,"button","","Which mouse button was clicked",39,null],[12,"xy","","The position at which the mouse was released.",39,null],[12,"modifiers","","Which modifier keys, if any, that were being held down when the user clicked",39,null],[3,"Scroll","","Holds all the relevant information about a scroll event",null,null],[12,"x","","The amount of scroll along the x axis.",40,null],[12,"y","","The amount of scroll along the y axis.",40,null],[12,"modifiers","","Which modifier keys, if any, that were being held down while the scroll occured",40,null],[4,"Event","","Enum containing all the events that the `Ui` may provide.",null,null],[13,"Raw","","Represents a raw `input::Input` event.",41,null],[13,"Ui","","Events that have been interpreted from `backend::RawEvent`s by the `Ui`.",41,null],[4,"Ui","","Represents all events interpreted by the `Ui`.",null,null],[13,"Text","","Entered text, along with the widget that was capturing the keyboard at the time.",42,null],[13,"Press","","Some button was pressed, along with the widget that was capturing the device whose button\nwhich was pressed.",42,null],[13,"Release","","Some button was released, along with the widget that was capturing the device whose button\nwhich was released.",42,null],[13,"Move","","Represents all forms of motion input, alongside with the widget that was capturing the\nmouse at the time.",42,null],[13,"WindowResized","","The window's dimensions were resized.",42,null],[13,"Click","","Represents a pointing device being pressed and subsequently released while over the same\nlocation.",42,null],[13,"DoubleClick","","Two `Click` events with the same `button` and `xy` occurring within a duration that is less\nthat the `theme.double_click_threshold`.",42,null],[13,"Drag","","Represents a pointing device button being pressed and a subsequent movement of the mouse.",42,null],[13,"Scroll","","A generic scroll event.",42,null],[13,"WidgetCapturesMouse","","Indicates that the given widget has captured the mouse.",42,null],[13,"WidgetUncapturesMouse","","Indicates that the given widget has released the mouse from capturing.",42,null],[13,"WidgetCapturesKeyboard","","Indicates that the given widget has captured the keyboard.",42,null],[13,"WidgetUncapturesKeyboard","","Indicates that the given widget has released the keyboard from capturing.",42,null],[4,"Widget","","Events that apply to a specific widget.",null,null],[13,"Text","","Entered text.",43,null],[13,"Move","","Represents all forms of motion input.",43,null],[13,"Press","","Some button was pressed.",43,null],[13,"Release","","Some button was released.",43,null],[13,"Click","","Represents a pointing device being pressed and subsequently released while over the same\nlocation.",43,null],[13,"DoubleClick","","Two `Click` events with the same `button` and `xy` occurring within a duration that is less\nthat the `theme.double_click_threshold`.",43,null],[13,"Drag","","Represents a pointing device button being pressed and a subsequent movement of the mouse.",43,null],[13,"Scroll","","Represents the amount of scroll that has been applied to this widget.",43,null],[13,"WindowResized","","The window's dimensions were resized.",43,null],[13,"CapturesMouse","","The widget has captured the mouse.",43,null],[13,"UncapturesMouse","","The widget has released the mouse from capturing.",43,null],[13,"CapturesKeyboard","","The widget has captured the keyboard.",43,null],[13,"UncapturesKeyboard","","Indicates that the given widget has released the keyboard from capturing.",43,null],[4,"Button","","The different kinds of `Button`s that may be `Press`ed or `Release`d.",null,null],[13,"Keyboard","","A keyboard button.",44,null],[13,"Mouse","","A mouse button along with the location at which it was `Press`ed/`Release`d.",44,null],[13,"Controller","","A controller button.",44,null],[5,"render","","Constructor for a new `RawEvent::Render`.",null,{"inputs":[{"name":"f64"},{"name":"u32"},{"name":"u32"},{"name":"scalar"}],"output":{"name":"rawevent"}}],[6,"Raw","","The event type that is used by conrod to track inputs from the world. Events yielded by polling\nwindow backends should be converted to this type. This can be thought of as the event type\nwhich is supplied by the window backend to drive the state of the `Ui` forward.",null,null],[11,"fmt","","",41,null],[11,"eq","","",41,null],[11,"ne","","",41,null],[11,"clone","","",41,null],[11,"fmt","","",42,null],[11,"eq","","",42,null],[11,"ne","","",42,null],[11,"clone","","",42,null],[11,"fmt","","",43,null],[11,"eq","","",43,null],[11,"ne","","",43,null],[11,"clone","","",43,null],[11,"fmt","","",29,null],[11,"eq","","",29,null],[11,"ne","","",29,null],[11,"clone","","",29,null],[11,"fmt","","",30,null],[11,"eq","","",30,null],[11,"ne","","",30,null],[11,"clone","","",30,null],[11,"fmt","","",44,null],[11,"eq","","",44,null],[11,"ne","","",44,null],[11,"clone","","",44,null],[11,"fmt","","",31,null],[11,"eq","","",31,null],[11,"ne","","",31,null],[11,"clone","","",31,null],[11,"fmt","","",32,null],[11,"eq","","",32,null],[11,"ne","","",32,null],[11,"clone","","",32,null],[11,"fmt","","",33,null],[11,"eq","","",33,null],[11,"ne","","",33,null],[11,"clone","","",33,null],[11,"fmt","","",34,null],[11,"eq","","",34,null],[11,"ne","","",34,null],[11,"clone","","",34,null],[11,"fmt","","",35,null],[11,"eq","","",35,null],[11,"ne","","",35,null],[11,"clone","","",35,null],[11,"fmt","","",36,null],[11,"eq","","",36,null],[11,"ne","","",36,null],[11,"clone","","",36,null],[11,"fmt","","",37,null],[11,"eq","","",37,null],[11,"ne","","",37,null],[11,"clone","","",37,null],[11,"fmt","","",38,null],[11,"eq","","",38,null],[11,"ne","","",38,null],[11,"clone","","",38,null],[11,"fmt","","",39,null],[11,"eq","","",39,null],[11,"ne","","",39,null],[11,"clone","","",39,null],[11,"fmt","","",40,null],[11,"eq","","",40,null],[11,"ne","","",40,null],[11,"clone","","",40,null],[11,"relative_to","","Returns a copy of the `Move` relative to the given `xy`",30,null],[11,"relative_to","","Returns a copy of the Button relative to the given `xy`",44,null],[11,"relative_to","","Returns a copy of the Press relative to the given `xy`",31,null],[11,"mouse","","If the `Press` event represents the pressing of a mouse button, return `Some`.",31,null],[11,"key","","If the `Press` event represents the pressing of keyboard button, return `Some`.",31,null],[11,"relative_to","","Returns a copy of the Release relative to the given `xy`",34,null],[11,"mouse","","If the `Release` event represents the releasing of a mouse button, return `Some`.",34,null],[11,"key","","If the `Release` event represents the release of keyboard button, return `Some`.",34,null],[11,"relative_to","","Returns a copy of the Click relative to the given `xy`",38,null],[11,"relative_to","","Returns a copy of the DoubleClick relative to the given `xy`",39,null],[11,"relative_to","","Returns a copy of the Drag relative to the given `xy`",37,null],[11,"from","","",41,{"inputs":[{"name":"ui"}],"output":{"name":"self"}}],[11,"from","","",41,{"inputs":[{"name":"input"}],"output":{"name":"self"}}],[11,"from","","",43,{"inputs":[{"name":"text"}],"output":{"name":"self"}}],[11,"from","","",43,{"inputs":[{"name":"move"}],"output":{"name":"self"}}],[11,"from","","",43,{"inputs":[{"name":"press"}],"output":{"name":"self"}}],[11,"from","","",43,{"inputs":[{"name":"release"}],"output":{"name":"self"}}],[11,"from","","",43,{"inputs":[{"name":"click"}],"output":{"name":"self"}}],[11,"from","","",43,{"inputs":[{"name":"doubleclick"}],"output":{"name":"self"}}],[11,"from","","",43,{"inputs":[{"name":"scroll"}],"output":{"name":"self"}}],[11,"from","","",43,{"inputs":[{"name":"drag"}],"output":{"name":"self"}}],[0,"graph","conrod","Conrod uses a directed acyclic graph to manage both storing widgets and describing their\nrelationships.",null,null],[8,"Walker","conrod::graph","A trait providing a variety of useful methods for traversing some graph type **G**.",null,null],[16,"Index","","The unsigned integer type used for node and edge indices.",45,null],[10,"next","","Fetch the `EdgeIndex` and `NodeIndex` to the next neighbour in our walk through the given\n**Graph**.",45,null],[11,"next_edge","","The next edge in our walk for the given **Graph**.",45,null],[11,"next_node","","The next node in our walk for the given **Graph**.",45,null],[11,"count","","Counts all the steps in the entire walk of the given graph.",45,null],[11,"last","","Walks the whole walk until reaching and returning the last edge node pair.",45,null],[11,"last_edge","","Walks the whole walk until reaching and returning the last edge.",45,null],[11,"last_node","","Walks the whole walk until reaching and returning the last node.",45,null],[11,"nth","","Walks "n" number of steps and produces the resulting edge node pair.",45,null],[11,"nth_edge","","Walks "n" number of steps and produces the resulting edge.",45,null],[11,"nth_node","","Walks "n" number of steps and produces the resulting node.",45,null],[11,"chain","","Produces a walker that will walk the entirey of `self` before walking the entirey of other.",45,null],[11,"filter","","Creates a walker that applies the predicate to each element returned by this walker.\nThe only elements that will be yielded are those that make the predicate evaluate to true.",45,null],[11,"peekable","","Creates a walker that has a `.peek(&graph)` method that returns an optional next neighbor.",45,null],[11,"skip_while","","Creates a walker that invokes the predicate on elements until it returns false. Once the\npredicate returns false, that element and all further elements are yielded.",45,null],[11,"take_while","","Creates a walker that yields elements so long as the predicate returns true. After the\npredicate returns false for the first time, no further elements will be yielded.",45,null],[11,"skip","","Creates a walker that skips the first n steps of this walk, and then yields all further\nsteps.",45,null],[11,"take","","Creates a walker that yields the first n steps of this walk.",45,null],[11,"all","","Tests whether the predicate holds true for all steps in the walk.",45,null],[11,"any","","Tests whether any step in the walk satisfies the given predicate.",45,null],[11,"find","","Returns the first edge node index pair satisfying the specified predicate.",45,null],[11,"find_edge","","Returns the edge index satisfying the specified predicate.",45,null],[11,"find_node","","Returns the node index satisfying the specified predicate.",45,null],[11,"cycle","","Repeats the walker endlessly.",45,null],[11,"fold","","Performs a fold operation over the entire walker, returning the eventual state at the end\nof the walk.",45,null],[11,"inspect","","Creates a walker that calls a function with a reference to each index pair before yielding\nthem. This is often useful for debugging a walker pipeline.",45,null],[11,"iter","","Converts the walker into an iterator yielding index pairs.",45,null],[11,"iter_weights","","Converts the walker into an iterator yielding `(&e, &n)`, where `e` is the edge weight for\nthe next `EdgeIndex` and `n` is the node weight for the next `NodeIndex`.",45,null],[3,"UniqueWidgetState","","The state type that we'll dynamically cast to and from `Any` for storage within the cache.",null,null],[12,"state","","A **Widget**'s unique "State".",46,null],[12,"style","","A **Widget**'s unique "Style".",46,null],[3,"Container","","A container for caching a Widget's state inside a Graph Node.",null,null],[12,"maybe_state","","Dynamically stored widget state.",47,null],[12,"type_id","","The unique `TypeId` associated with the `Widget::State`.",47,null],[12,"rect","","The rectangle describing the Widget's area.",47,null],[12,"depth","","The depth at which the widget will be rendered comparatively to its siblings.",47,null],[12,"kid_area","","The area in which child widgets are placed.",47,null],[12,"maybe_floating","","Whether or not the widget is a "Floating" widget.",47,null],[12,"crop_kids","","Whether or not children widgets should be cropped to the `kid_area`.",47,null],[12,"maybe_x_scroll_state","","Scroll related state (is only `Some` if this axis is scrollable).",47,null],[12,"maybe_y_scroll_state","","Scroll related state (is only `Some` if this axis is scrollable).",47,null],[12,"instantiation_order_idx","","Represents the Widget's position within the overall instantiation ordering of the widgets.",47,null],[3,"Graph","","Stores the dynamic state of a UI tree of Widgets.",null,null],[4,"Node","","A node for use within the **Graph**.",null,null],[13,"Widget","","A widget constructed by a user.",48,null],[13,"Placeholder","","A placeholder node - used when reserving a place for a **Widget** within the **Graph**.",48,null],[4,"Edge","","An edge between nodes within the UI Graph.",null,null],[13,"Position","","Describes the relative positioning of widgets.",49,null],[13,"Depth","","Describes the rendering order of the widgets.",49,null],[13,"Graphic","","Describes when a widget is used solely as a graphical element for another widget.",49,null],[0,"algo","","This module was created in order to keep the `graph` module clean and focused upon the\n**Graph** data structure behaviour.",null,null],[3,"PickWidgets","conrod::graph::algo","A node "walker" that yields all widgets under the given `xy` position in order from top to\nbottom.",null,null],[3,"PickScrollableWidgets","","A node "walker" that yields all scrollable widgets under the given `xy` position in order from\ntop to bottom.",null,null],[5,"pick_widgets","","Produces a graph node "walker" that yields all widgets under the given `xy` position in order\nfrom top to bottom.",null,null],[5,"pick_scrollable_widgets","","Produces a graph node "walker" that yields all scrollable widgets under the given `xy` position\nin order from top to bottom.",null,null],[5,"cropped_area_of_widget","","The rectangle that represents the maximum visible area for the widget with the given index.",null,{"inputs":[{"name":"graph"},{"name":"i"}],"output":{"name":"option"}}],[5,"cropped_area_of_widget_within_depth","","The rectangle that represents the maximum visible area for the widget with the given index.",null,{"inputs":[{"name":"graph"},{"name":"i"},{"name":"nodeindex"}],"output":{"name":"option"}}],[5,"kids_bounding_box","","Find the absolute `Rect` that bounds all widgets that are `Depth` children of the widget at the\ngiven `idx`.",null,{"inputs":[{"name":"graph"},{"name":"hashset"},{"name":"i"}],"output":{"name":"option"}}],[5,"scroll_offset","","Return the `scroll_offset` for the widget at the given index.",null,{"inputs":[{"name":"graph"},{"name":"i"}],"output":{"name":"point"}}],[11,"clone","","",50,null],[11,"clone","","",51,null],[11,"next_node_index","","The next `NodeIndex` under the `xy` location.",50,null],[11,"next","","The `widget::Index` of the next `Widget` under the `xy` location.",50,null],[11,"next","","The `widget::Index` of the next scrollable `Widget` under the `xy` location.",51,null],[0,"depth_order","conrod::graph","Types and functionality related to the calculation of a **Graph**'s rendering depth order.",null,null],[3,"DepthOrder","conrod::graph::depth_order","Contains Node indices in order of depth, starting with the deepest.",null,null],[12,"indices","","The primary **Vec** storing the **DepthOrder**'s ordered indices.",52,null],[11,"new","","Construct a new empty **DepthOrder**.",52,{"inputs":[],"output":{"name":"depthorder"}}],[11,"with_node_capacity","","Construct a new empty **DepthOrder**.",52,{"inputs":[{"name":"usize"}],"output":{"name":"depthorder"}}],[11,"update","","Update the **DepthOrder** (starting with the deepest) for all nodes in the given **Graph**.",52,null],[6,"NodeIndex","conrod::graph","An alias for our Graph's Node Index.",null,null],[6,"EdgeIndex","","An alias for our Graph's Edge Index.",null,null],[6,"IndexPair","","An alias for a tuple containing an associated `Edge/NodeIndex` pair.",null,null],[6,"Parents","","A **Walker** over some node's parent nodes.",null,null],[6,"Children","","A **Walker** over some node's child nodes.",null,null],[6,"PositionParents","","An alias for the iterator yielding both **X** and **Y** **Position** parents.",null,null],[6,"FilteredChildren","","An alias for some filtered children walker.",null,null],[6,"DepthChildren","","An alias for a **Walker** over a node's **Depth** children.",null,null],[6,"XPositionChildren","","An alias for a **Walker** over a node's **X Position** children.",null,null],[6,"YPositionChildren","","An alias for a **Walker** over a node's **Y Position** children.",null,null],[6,"PositionChildren","","An alias for a **Walker** over a node's **X** and **Y** **Position** children respectively.",null,null],[6,"GraphicChildren","","An alias for a **Walker** over a node's **Graphic** children.",null,null],[6,"RecursiveWalk","","An alias for our Graph's recursive walker.",null,null],[6,"WouldCycle","","An alias for our Graph's **WouldCycle** error type.",null,null],[17,"NUM_EDGE_VARIANTS","","The number of different variants within the **Edge** enum.",null,null],[8,"GraphIndex","","A trait for being generic over both WidgetId and NodeIndex.\nEach method should only return `Some` if they are contained as a key within the given IndexMap.",null,null],[10,"to_widget_id","","If not one already, convert Self to a WidgetId if it exists within the IndexMap.",53,null],[10,"to_node_index","","If not one already, convert Self to a NodeIndex if it exists within the IndexMap.",53,null],[10,"from_idx","","Convert some GraphIndex type to Self.",53,{"inputs":[{"name":"i"},{"name":"indexmap"}],"output":{"name":"option"}}],[11,"fmt","","",46,null],[11,"fmt","","",47,null],[11,"fmt","","",48,null],[11,"eq","","",49,null],[11,"ne","","",49,null],[11,"fmt","","",49,null],[11,"clone","","",49,null],[11,"fmt","","",54,null],[11,"state_and_style","","Borrow the **Container**'s unique widget State and Style if there is any.",47,null],[11,"unique_widget_state","","Same as [**Container::state_and_style**](./struct.Container#method.state_and_style) but\naccessed using a **Widget** type parameter instead of the unique State and Style types.",47,null],[11,"is_widget","","Whether or not the **Node** is of the **Widget** variant.",48,null],[11,"new","","A new empty **Graph**.",54,{"inputs":[],"output":{"name":"self"}}],[11,"with_node_capacity","","A new **Graph** with the given node capacity.",54,{"inputs":[{"name":"usize"}],"output":{"name":"self"}}],[11,"clear","","Removes all **Node**s and **Edge**s from the **Graph**.",54,null],[11,"node_count","","The total number of **Node**s in the **Graph**.",54,null],[11,"widget_count","","The total number of **Node::Widget**s in the **Graph**.",54,null],[11,"edge_count","","The total number of **Edge**s in the **Graph**.",54,null],[11,"node_capacity","","The current capacity for the **Graph**'s internal node `Vec`.",54,null],[11,"convert_idx","","Converts the given **GraphIndex** into an index of type **J**.",54,null],[11,"node_index","","Get the **NodeIndex** for the given **GraphIndex**.",54,null],[11,"widget_id","","Get the **WidgetId** for the given **GraphIndex**.",54,null],[11,"widget_index","","Get the **widget::Index** for the given **GraphIndex**.",54,null],[11,"add_placeholder","","Add a new placeholder node and return it's `NodeIndex` into the `Graph`.",54,null],[11,"node","","Borrow the node at the given **GraphIndex** if there is one.",54,null],[11,"node_mut","","Mutably borrow the node at the given **GraphIndex** if there is one.",54,null],[11,"edge","","Borrow the edge at the given **EdgeIndex** if there is one.",54,null],[11,"edge_mut","","Mutably borrow the edge at the given **EdgeIndex** if there is one.",54,null],[11,"edge_endpoints","","Return the parent and child nodes on either end of the **Edge** at the given index.",54,null],[11,"widget","","If there is a Widget for the given index, return a reference to it.",54,null],[11,"widget_mut","","If there is a Widget for the given Id, return a mutable reference to it.",54,null],[11,"parents","","A **Walker** type that may be used to step through the parents of the given child node.",54,null],[11,"recursive_walk","","A **Walker** type that recursively walks the **Graph** using the given `recursive_fn`.",54,null],[11,"edge_parent","","If the widget at the given index has some parent along an **Edge** of the given variant,\nreturn an index to it.",54,null],[11,"depth_parent","","Return the index of the parent along the given widget's **Depth** **Edge**.",54,null],[11,"x_position_parent","","Return the index of the parent along the given widget's **Position** **Edge**.",54,null],[11,"y_position_parent","","Return the index of the parent along the given widget's **Position** **Edge**.",54,null],[11,"position_parents","","Produces an iterator yielding the parents along both the **X** and **Y** **Position**\n**Edge**s respectively.",54,null],[11,"graphic_parent","","Return the index of the parent along the given widget's **Graphic** **Edge**.",54,null],[11,"depth_parent_recursion","","A **Walker** type that recursively walks **Depth** parents starting from the given node.",54,null],[11,"x_position_parent_recursion","","A **Walker** type that recursively walks **X** **Position** parents starting from the given\nnode.",54,null],[11,"y_position_parent_recursion","","A **Walker** type that recursively walks **Y** **Position** parents starting from the given\nnode.",54,null],[11,"graphic_parent_recursion","","A **Walker** type that recursively walks **Graphic** parents starting from the given node.",54,null],[11,"children","","A **Walker** type that may be used to step through the children of the given parent node.",54,null],[11,"depth_children","","For walking the **Depth** children of the given parent node.",54,null],[11,"x_position_children","","For walking the **Position(X)** children of the given parent node.",54,null],[11,"y_position_children","","For walking the **Position(Y)** children of the given parent node.",54,null],[11,"position_children","","For walking the **Position** children of the given parent node.",54,null],[11,"graphic_children","","For walking the **Graphic** children of the given parent node.",54,null],[11,"does_edge_exist","","Does the given edge type exist between the nodes `parent` -> `child`.",54,null],[11,"does_depth_edge_exist","","Does a **Edge::Depth** exist between the nodes `parent` -> `child`.",54,null],[11,"does_position_edge_exist","","Does a **Edge::Position** exist between the nodes `parent` -> `child`.",54,null],[11,"does_graphic_edge_exist","","Does a **Edge::Graphic** exist between the nodes `parent` -> `child`.",54,null],[11,"does_recursive_edge_exist","","Are the given `parent` and `child` nodes connected by a single chain of edges of the given\nkind?",54,null],[11,"does_recursive_depth_edge_exist","","Are the given `parent` and `child` nodes connected by a single chain of **Depth** edges?",54,null],[11,"does_recursive_graphic_edge_exist","","Are the given `parent` and `child` nodes connected by a single chain of **Graphic** edges?",54,null],[11,"pre_update_cache","","Cache some `PreUpdateCache` widget data into the graph.",54,null],[11,"post_update_cache","","Cache some `PostUpdateCache` widget data into the graph.",54,null],[11,"next","","",55,null],[11,"next","","",56,null],[11,"index","","",54,null],[11,"index_mut","","",54,null],[11,"index","","",54,null],[11,"index_mut","","",54,null],[0,"guide","conrod","**The Conrod Guide**",null,null],[0,"chapter_1","conrod::guide","**What is Conrod?**",null,null],[0,"chapter_2","","**Getting Started**",null,null],[0,"image","conrod","A type used to manage a user's image data and map them to `Image` widgets:",null,null],[3,"Map","conrod::image","A type used to map the `widget::Index` of `Image` widgets to their associated `Img` data.",null,null],[12,"trigger_redraw","","Whether or not the `image::Map` will trigger a redraw the next time `Ui::draw` is called.",57,null],[6,"HashMap","","The type of `std::collections::HashMap` used within the `image::Map`.",null,null],[11,"new","","Construct a new, empty `image::Map`.",57,{"inputs":[],"output":{"name":"self"}}],[11,"get","","Borrow the `Img` associated with the given widget.",57,null],[11,"contains_index","","Whether or not the map already contains a mapping for the given widget.",57,null],[11,"get_mut","","Uniquely borrow the `Img` associated with the given widget.",57,null],[11,"insert","","Inserts the given widget-image pair into the map.",57,null],[11,"extend","","",57,null],[0,"input","conrod","This module contains all the logic for handling input events and providing them to widgets.",null,null],[3,"ModifierKey","conrod::input","",null,null],[4,"Button","","Models different kinds of buttons.",null,null],[13,"Keyboard","","A keyboard button.",58,null],[13,"Mouse","","A mouse button.",58,null],[13,"Controller","","A controller button.",58,null],[3,"ControllerButton","","Components of a controller button event. Not guaranteed consistent across\nbackends.",null,null],[12,"id","","Which controller was the button on.",59,null],[12,"button","","Which button was pressed.",59,null],[3,"ControllerAxisArgs","","Components of a controller axis move event. Not guaranteed consistent across\nbackends.",null,null],[12,"id","","Which controller moved.",60,null],[12,"axis","","The axis that moved.",60,null],[12,"position","","Position of the controller. Usually [-1.0, 1.0], though backends may use\na different range for various devices.",60,null],[0,"keyboard","","Back-end agnostic keyboard keys.",null,null],[3,"ModifierKey","conrod::input::keyboard","",null,null],[17,"NO_MODIFIER","","No modifier.",null,null],[17,"CTRL","","Ctrl.",null,null],[17,"SHIFT","","Shift.",null,null],[17,"ALT","","Alt.",null,null],[17,"GUI","","Gui.",null,null],[17,"CTRL_SHIFT","","Ctrl + Shift.",null,null],[17,"CTRL_ALT","","Ctrl + Alt.",null,null],[17,"CTRL_GUI","","Ctrl + Gui.",null,null],[17,"CTRL_SHIFT_ALT","","Ctrl + Shift + Alt.",null,null],[17,"CTRL_SHIFT_GUI","","Ctrl + Shift + Gui.",null,null],[17,"CTRL_SHIFT_ALT_GUI","","Ctrl + Shift + Alt + Gui.",null,null],[17,"SHIFT_ALT","","Shift + Alt.",null,null],[17,"SHIFT_GUI","","Shift + Gui.",null,null],[17,"SHIFT_ALT_GUI","","Shift + Alt + Gui.",null,null],[17,"ALT_GUI","","Alt + Gui.",null,null],[4,"Key","","Represent a keyboard key.\nKeycodes follows SDL http://wiki.libsdl.org/SDLKeycodeLookup",null,null],[13,"Unknown","","",61,null],[13,"Backspace","","",61,null],[13,"Tab","","",61,null],[13,"Return","","",61,null],[13,"Escape","","",61,null],[13,"Space","","",61,null],[13,"Exclaim","","",61,null],[13,"Quotedbl","","",61,null],[13,"Hash","","",61,null],[13,"Dollar","","",61,null],[13,"Percent","","",61,null],[13,"Ampersand","","",61,null],[13,"Quote","","",61,null],[13,"LeftParen","","",61,null],[13,"RightParen","","",61,null],[13,"Asterisk","","",61,null],[13,"Plus","","",61,null],[13,"Comma","","",61,null],[13,"Minus","","",61,null],[13,"Period","","",61,null],[13,"Slash","","",61,null],[13,"D0","","",61,null],[13,"D1","","",61,null],[13,"D2","","",61,null],[13,"D3","","",61,null],[13,"D4","","",61,null],[13,"D5","","",61,null],[13,"D6","","",61,null],[13,"D7","","",61,null],[13,"D8","","",61,null],[13,"D9","","",61,null],[13,"Colon","","",61,null],[13,"Semicolon","","",61,null],[13,"Less","","",61,null],[13,"Equals","","",61,null],[13,"Greater","","",61,null],[13,"Question","","",61,null],[13,"At","","",61,null],[13,"LeftBracket","","",61,null],[13,"Backslash","","",61,null],[13,"RightBracket","","",61,null],[13,"Caret","","",61,null],[13,"Underscore","","",61,null],[13,"Backquote","","",61,null],[13,"A","","",61,null],[13,"B","","",61,null],[13,"C","","",61,null],[13,"D","","",61,null],[13,"E","","",61,null],[13,"F","","",61,null],[13,"G","","",61,null],[13,"H","","",61,null],[13,"I","","",61,null],[13,"J","","",61,null],[13,"K","","",61,null],[13,"L","","",61,null],[13,"M","","",61,null],[13,"N","","",61,null],[13,"O","","",61,null],[13,"P","","",61,null],[13,"Q","","",61,null],[13,"R","","",61,null],[13,"S","","",61,null],[13,"T","","",61,null],[13,"U","","",61,null],[13,"V","","",61,null],[13,"W","","",61,null],[13,"X","","",61,null],[13,"Y","","",61,null],[13,"Z","","",61,null],[13,"Delete","","",61,null],[13,"CapsLock","","",61,null],[13,"F1","","",61,null],[13,"F2","","",61,null],[13,"F3","","",61,null],[13,"F4","","",61,null],[13,"F5","","",61,null],[13,"F6","","",61,null],[13,"F7","","",61,null],[13,"F8","","",61,null],[13,"F9","","",61,null],[13,"F10","","",61,null],[13,"F11","","",61,null],[13,"F12","","",61,null],[13,"PrintScreen","","",61,null],[13,"ScrollLock","","",61,null],[13,"Pause","","",61,null],[13,"Insert","","",61,null],[13,"Home","","",61,null],[13,"PageUp","","",61,null],[13,"End","","",61,null],[13,"PageDown","","",61,null],[13,"Right","","",61,null],[13,"Left","","",61,null],[13,"Down","","",61,null],[13,"Up","","",61,null],[13,"NumLockClear","","",61,null],[13,"NumPadDivide","","",61,null],[13,"NumPadMultiply","","",61,null],[13,"NumPadMinus","","",61,null],[13,"NumPadPlus","","",61,null],[13,"NumPadEnter","","",61,null],[13,"NumPad1","","",61,null],[13,"NumPad2","","",61,null],[13,"NumPad3","","",61,null],[13,"NumPad4","","",61,null],[13,"NumPad5","","",61,null],[13,"NumPad6","","",61,null],[13,"NumPad7","","",61,null],[13,"NumPad8","","",61,null],[13,"NumPad9","","",61,null],[13,"NumPad0","","",61,null],[13,"NumPadPeriod","","",61,null],[13,"Application","","",61,null],[13,"Power","","",61,null],[13,"NumPadEquals","","",61,null],[13,"F13","","",61,null],[13,"F14","","",61,null],[13,"F15","","",61,null],[13,"F16","","",61,null],[13,"F17","","",61,null],[13,"F18","","",61,null],[13,"F19","","",61,null],[13,"F20","","",61,null],[13,"F21","","",61,null],[13,"F22","","",61,null],[13,"F23","","",61,null],[13,"F24","","",61,null],[13,"Execute","","",61,null],[13,"Help","","",61,null],[13,"Menu","","",61,null],[13,"Select","","",61,null],[13,"Stop","","",61,null],[13,"Again","","",61,null],[13,"Undo","","",61,null],[13,"Cut","","",61,null],[13,"Copy","","",61,null],[13,"Paste","","",61,null],[13,"Find","","",61,null],[13,"Mute","","",61,null],[13,"VolumeUp","","",61,null],[13,"VolumeDown","","",61,null],[13,"NumPadComma","","",61,null],[13,"NumPadEqualsAS400","","",61,null],[13,"AltErase","","",61,null],[13,"Sysreq","","",61,null],[13,"Cancel","","",61,null],[13,"Clear","","",61,null],[13,"Prior","","",61,null],[13,"Return2","","",61,null],[13,"Separator","","",61,null],[13,"Out","","",61,null],[13,"Oper","","",61,null],[13,"ClearAgain","","",61,null],[13,"CrSel","","",61,null],[13,"ExSel","","",61,null],[13,"NumPad00","","",61,null],[13,"NumPad000","","",61,null],[13,"ThousandsSeparator","","",61,null],[13,"DecimalSeparator","","",61,null],[13,"CurrencyUnit","","",61,null],[13,"CurrencySubUnit","","",61,null],[13,"NumPadLeftParen","","",61,null],[13,"NumPadRightParen","","",61,null],[13,"NumPadLeftBrace","","",61,null],[13,"NumPadRightBrace","","",61,null],[13,"NumPadTab","","",61,null],[13,"NumPadBackspace","","",61,null],[13,"NumPadA","","",61,null],[13,"NumPadB","","",61,null],[13,"NumPadC","","",61,null],[13,"NumPadD","","",61,null],[13,"NumPadE","","",61,null],[13,"NumPadF","","",61,null],[13,"NumPadXor","","",61,null],[13,"NumPadPower","","",61,null],[13,"NumPadPercent","","",61,null],[13,"NumPadLess","","",61,null],[13,"NumPadGreater","","",61,null],[13,"NumPadAmpersand","","",61,null],[13,"NumPadDblAmpersand","","",61,null],[13,"NumPadVerticalBar","","",61,null],[13,"NumPadDblVerticalBar","","",61,null],[13,"NumPadColon","","",61,null],[13,"NumPadHash","","",61,null],[13,"NumPadSpace","","",61,null],[13,"NumPadAt","","",61,null],[13,"NumPadExclam","","",61,null],[13,"NumPadMemStore","","",61,null],[13,"NumPadMemRecall","","",61,null],[13,"NumPadMemClear","","",61,null],[13,"NumPadMemAdd","","",61,null],[13,"NumPadMemSubtract","","",61,null],[13,"NumPadMemMultiply","","",61,null],[13,"NumPadMemDivide","","",61,null],[13,"NumPadPlusMinus","","",61,null],[13,"NumPadClear","","",61,null],[13,"NumPadClearEntry","","",61,null],[13,"NumPadBinary","","",61,null],[13,"NumPadOctal","","",61,null],[13,"NumPadDecimal","","",61,null],[13,"NumPadHexadecimal","","",61,null],[13,"LCtrl","","",61,null],[13,"LShift","","",61,null],[13,"LAlt","","",61,null],[13,"LGui","","",61,null],[13,"RCtrl","","",61,null],[13,"RShift","","",61,null],[13,"RAlt","","",61,null],[13,"RGui","","",61,null],[13,"Mode","","",61,null],[13,"AudioNext","","",61,null],[13,"AudioPrev","","",61,null],[13,"AudioStop","","",61,null],[13,"AudioPlay","","",61,null],[13,"AudioMute","","",61,null],[13,"MediaSelect","","",61,null],[13,"Www","","",61,null],[13,"Mail","","",61,null],[13,"Calculator","","",61,null],[13,"Computer","","",61,null],[13,"AcSearch","","",61,null],[13,"AcHome","","",61,null],[13,"AcBack","","",61,null],[13,"AcForward","","",61,null],[13,"AcStop","","",61,null],[13,"AcRefresh","","",61,null],[13,"AcBookmarks","","",61,null],[13,"BrightnessDown","","",61,null],[13,"BrightnessUp","","",61,null],[13,"DisplaySwitch","","",61,null],[13,"KbdIllumToggle","","",61,null],[13,"KbdIllumDown","","",61,null],[13,"KbdIllumUp","","",61,null],[13,"Eject","","",61,null],[13,"Sleep","","",61,null],[4,"Key","conrod::input","Represent a keyboard key.\nKeycodes follows SDL http://wiki.libsdl.org/SDLKeycodeLookup",null,null],[13,"Unknown","","",61,null],[13,"Backspace","","",61,null],[13,"Tab","","",61,null],[13,"Return","","",61,null],[13,"Escape","","",61,null],[13,"Space","","",61,null],[13,"Exclaim","","",61,null],[13,"Quotedbl","","",61,null],[13,"Hash","","",61,null],[13,"Dollar","","",61,null],[13,"Percent","","",61,null],[13,"Ampersand","","",61,null],[13,"Quote","","",61,null],[13,"LeftParen","","",61,null],[13,"RightParen","","",61,null],[13,"Asterisk","","",61,null],[13,"Plus","","",61,null],[13,"Comma","","",61,null],[13,"Minus","","",61,null],[13,"Period","","",61,null],[13,"Slash","","",61,null],[13,"D0","","",61,null],[13,"D1","","",61,null],[13,"D2","","",61,null],[13,"D3","","",61,null],[13,"D4","","",61,null],[13,"D5","","",61,null],[13,"D6","","",61,null],[13,"D7","","",61,null],[13,"D8","","",61,null],[13,"D9","","",61,null],[13,"Colon","","",61,null],[13,"Semicolon","","",61,null],[13,"Less","","",61,null],[13,"Equals","","",61,null],[13,"Greater","","",61,null],[13,"Question","","",61,null],[13,"At","","",61,null],[13,"LeftBracket","","",61,null],[13,"Backslash","","",61,null],[13,"RightBracket","","",61,null],[13,"Caret","","",61,null],[13,"Underscore","","",61,null],[13,"Backquote","","",61,null],[13,"A","","",61,null],[13,"B","","",61,null],[13,"C","","",61,null],[13,"D","","",61,null],[13,"E","","",61,null],[13,"F","","",61,null],[13,"G","","",61,null],[13,"H","","",61,null],[13,"I","","",61,null],[13,"J","","",61,null],[13,"K","","",61,null],[13,"L","","",61,null],[13,"M","","",61,null],[13,"N","","",61,null],[13,"O","","",61,null],[13,"P","","",61,null],[13,"Q","","",61,null],[13,"R","","",61,null],[13,"S","","",61,null],[13,"T","","",61,null],[13,"U","","",61,null],[13,"V","","",61,null],[13,"W","","",61,null],[13,"X","","",61,null],[13,"Y","","",61,null],[13,"Z","","",61,null],[13,"Delete","","",61,null],[13,"CapsLock","","",61,null],[13,"F1","","",61,null],[13,"F2","","",61,null],[13,"F3","","",61,null],[13,"F4","","",61,null],[13,"F5","","",61,null],[13,"F6","","",61,null],[13,"F7","","",61,null],[13,"F8","","",61,null],[13,"F9","","",61,null],[13,"F10","","",61,null],[13,"F11","","",61,null],[13,"F12","","",61,null],[13,"PrintScreen","","",61,null],[13,"ScrollLock","","",61,null],[13,"Pause","","",61,null],[13,"Insert","","",61,null],[13,"Home","","",61,null],[13,"PageUp","","",61,null],[13,"End","","",61,null],[13,"PageDown","","",61,null],[13,"Right","","",61,null],[13,"Left","","",61,null],[13,"Down","","",61,null],[13,"Up","","",61,null],[13,"NumLockClear","","",61,null],[13,"NumPadDivide","","",61,null],[13,"NumPadMultiply","","",61,null],[13,"NumPadMinus","","",61,null],[13,"NumPadPlus","","",61,null],[13,"NumPadEnter","","",61,null],[13,"NumPad1","","",61,null],[13,"NumPad2","","",61,null],[13,"NumPad3","","",61,null],[13,"NumPad4","","",61,null],[13,"NumPad5","","",61,null],[13,"NumPad6","","",61,null],[13,"NumPad7","","",61,null],[13,"NumPad8","","",61,null],[13,"NumPad9","","",61,null],[13,"NumPad0","","",61,null],[13,"NumPadPeriod","","",61,null],[13,"Application","","",61,null],[13,"Power","","",61,null],[13,"NumPadEquals","","",61,null],[13,"F13","","",61,null],[13,"F14","","",61,null],[13,"F15","","",61,null],[13,"F16","","",61,null],[13,"F17","","",61,null],[13,"F18","","",61,null],[13,"F19","","",61,null],[13,"F20","","",61,null],[13,"F21","","",61,null],[13,"F22","","",61,null],[13,"F23","","",61,null],[13,"F24","","",61,null],[13,"Execute","","",61,null],[13,"Help","","",61,null],[13,"Menu","","",61,null],[13,"Select","","",61,null],[13,"Stop","","",61,null],[13,"Again","","",61,null],[13,"Undo","","",61,null],[13,"Cut","","",61,null],[13,"Copy","","",61,null],[13,"Paste","","",61,null],[13,"Find","","",61,null],[13,"Mute","","",61,null],[13,"VolumeUp","","",61,null],[13,"VolumeDown","","",61,null],[13,"NumPadComma","","",61,null],[13,"NumPadEqualsAS400","","",61,null],[13,"AltErase","","",61,null],[13,"Sysreq","","",61,null],[13,"Cancel","","",61,null],[13,"Clear","","",61,null],[13,"Prior","","",61,null],[13,"Return2","","",61,null],[13,"Separator","","",61,null],[13,"Out","","",61,null],[13,"Oper","","",61,null],[13,"ClearAgain","","",61,null],[13,"CrSel","","",61,null],[13,"ExSel","","",61,null],[13,"NumPad00","","",61,null],[13,"NumPad000","","",61,null],[13,"ThousandsSeparator","","",61,null],[13,"DecimalSeparator","","",61,null],[13,"CurrencyUnit","","",61,null],[13,"CurrencySubUnit","","",61,null],[13,"NumPadLeftParen","","",61,null],[13,"NumPadRightParen","","",61,null],[13,"NumPadLeftBrace","","",61,null],[13,"NumPadRightBrace","","",61,null],[13,"NumPadTab","","",61,null],[13,"NumPadBackspace","","",61,null],[13,"NumPadA","","",61,null],[13,"NumPadB","","",61,null],[13,"NumPadC","","",61,null],[13,"NumPadD","","",61,null],[13,"NumPadE","","",61,null],[13,"NumPadF","","",61,null],[13,"NumPadXor","","",61,null],[13,"NumPadPower","","",61,null],[13,"NumPadPercent","","",61,null],[13,"NumPadLess","","",61,null],[13,"NumPadGreater","","",61,null],[13,"NumPadAmpersand","","",61,null],[13,"NumPadDblAmpersand","","",61,null],[13,"NumPadVerticalBar","","",61,null],[13,"NumPadDblVerticalBar","","",61,null],[13,"NumPadColon","","",61,null],[13,"NumPadHash","","",61,null],[13,"NumPadSpace","","",61,null],[13,"NumPadAt","","",61,null],[13,"NumPadExclam","","",61,null],[13,"NumPadMemStore","","",61,null],[13,"NumPadMemRecall","","",61,null],[13,"NumPadMemClear","","",61,null],[13,"NumPadMemAdd","","",61,null],[13,"NumPadMemSubtract","","",61,null],[13,"NumPadMemMultiply","","",61,null],[13,"NumPadMemDivide","","",61,null],[13,"NumPadPlusMinus","","",61,null],[13,"NumPadClear","","",61,null],[13,"NumPadClearEntry","","",61,null],[13,"NumPadBinary","","",61,null],[13,"NumPadOctal","","",61,null],[13,"NumPadDecimal","","",61,null],[13,"NumPadHexadecimal","","",61,null],[13,"LCtrl","","",61,null],[13,"LShift","","",61,null],[13,"LAlt","","",61,null],[13,"LGui","","",61,null],[13,"RCtrl","","",61,null],[13,"RShift","","",61,null],[13,"RAlt","","",61,null],[13,"RGui","","",61,null],[13,"Mode","","",61,null],[13,"AudioNext","","",61,null],[13,"AudioPrev","","",61,null],[13,"AudioStop","","",61,null],[13,"AudioPlay","","",61,null],[13,"AudioMute","","",61,null],[13,"MediaSelect","","",61,null],[13,"Www","","",61,null],[13,"Mail","","",61,null],[13,"Calculator","","",61,null],[13,"Computer","","",61,null],[13,"AcSearch","","",61,null],[13,"AcHome","","",61,null],[13,"AcBack","","",61,null],[13,"AcForward","","",61,null],[13,"AcStop","","",61,null],[13,"AcRefresh","","",61,null],[13,"AcBookmarks","","",61,null],[13,"BrightnessDown","","",61,null],[13,"BrightnessUp","","",61,null],[13,"DisplaySwitch","","",61,null],[13,"KbdIllumToggle","","",61,null],[13,"KbdIllumDown","","",61,null],[13,"KbdIllumUp","","",61,null],[13,"Eject","","",61,null],[13,"Sleep","","",61,null],[4,"MouseButton","","Represent a mouse button.",null,null],[13,"Unknown","","Unknown mouse button.",62,null],[13,"Left","","Left mouse button.",62,null],[13,"Right","","Right mouse button.",62,null],[13,"Middle","","Middle mouse button.",62,null],[13,"X1","","Extra mouse button number 1.",62,null],[13,"X2","","Extra mouse button number 2.",62,null],[13,"Button6","","Mouse button number 6.",62,null],[13,"Button7","","Mouse button number 7.",62,null],[13,"Button8","","Mouse button number 8.",62,null],[3,"RenderArgs","","Render arguments",null,null],[12,"ext_dt","","Extrapolated time in seconds, used to do smooth animation.",63,null],[12,"width","","The width of rendered area in points.",63,null],[12,"height","","The height of rendered area in points.",63,null],[12,"draw_width","","The width of rendered area in pixels.",63,null],[12,"draw_height","","The height of rendered area in pixels.",63,null],[4,"Touch","","Stores the touch state.",null,null],[13,"Start","","The start of touch, for example\na finger pressed down on a touch screen.",64,null],[13,"Move","","The move of touch, for example\na finger moving while touching a touch screen.",64,null],[13,"End","","The end of touch, for example\ntaking a finger away from a touch screen.",64,null],[13,"Cancel","","The cancel of touch, for example\nthe window loses focus.",64,null],[3,"TouchArgs","","Touch arguments",null,null],[12,"device","","A unique identifier for touch device.",65,null],[12,"id","","A unique identifier for touch event.",65,null],[12,"x","","The x coordinate of the touch position, normalized 0..1.",65,null],[12,"y","","The y coordinate of the touch position, normalized 0..1.",65,null],[12,"z","","The z coordinate of the touch position, normalized 0..1.",65,null],[12,"px","","The x coordinate of the touch pressure direction.",65,null],[12,"py","","The y coordinate of the touch pressure direction.",65,null],[12,"pz","","The z coordinate of the touch pressure direction.",65,null],[12,"is_3d","","Whether the touch is in 3D.",65,null],[12,"touch","","The touch state.",65,null],[0,"state","","Everything related to storing the state of user input.",null,null],[3,"State","conrod::input::state","Holds the current state of user input.",null,null],[12,"mouse","","Mouse position and button state.",66,null],[12,"widget_capturing_keyboard","","Which widget, if any, is currently capturing the keyboard",66,null],[12,"widget_capturing_mouse","","Which widget, if any, is currently capturing the mouse",66,null],[12,"widget_under_mouse","","The widget that is currently under the mouse cursor.",66,null],[12,"modifiers","","Which modifier keys are being held down.",66,null],[0,"mouse","","Mouse specific state.",null,null],[4,"Button","conrod::input::state::mouse","Represent a mouse button.",null,null],[13,"Unknown","","Unknown mouse button.",62,null],[13,"Left","","Left mouse button.",62,null],[13,"Right","","Right mouse button.",62,null],[13,"Middle","","Middle mouse button.",62,null],[13,"X1","","Extra mouse button number 1.",62,null],[13,"X2","","Extra mouse button number 2.",62,null],[13,"Button6","","Mouse button number 6.",62,null],[13,"Button7","","Mouse button number 7.",62,null],[13,"Button8","","Mouse button number 8.",62,null],[3,"Mouse","","The state of the `Mouse`, including it's position and button states.",null,null],[12,"buttons","","A map that stores the up/down state of each button.",67,null],[12,"xy","","The current position of the mouse.",67,null],[3,"ButtonMap","","Stores the state of all mouse buttons.",null,null],[3,"PressedButtons","","An iterator yielding all pressed buttons.",null,null],[4,"ButtonPosition","","Whether the button is up or down.",null,null],[13,"Up","","The button is up (i.e. pressed).",68,null],[13,"Down","","The button is down and was originally pressed down at the given `Point` over the widget\nat the given widget::Index.",68,null],[17,"NUM_BUTTONS","","The max total number of buttons on a mouse.",null,null],[11,"eq","","",67,null],[11,"ne","","",67,null],[11,"fmt","","",67,null],[11,"clone","","",67,null],[11,"eq","","",68,null],[11,"ne","","",68,null],[11,"fmt","","",68,null],[11,"clone","","",68,null],[11,"eq","","",69,null],[11,"ne","","",69,null],[11,"fmt","","",69,null],[11,"clone","","",69,null],[11,"clone","","",70,null],[11,"new","","Construct a new default `Mouse`.",67,{"inputs":[],"output":{"name":"self"}}],[11,"relative_to","","If the mouse button is down, return a new one with position relative to the given `xy`.",68,null],[11,"is_down","","Is the `ButtonPosition` down.",68,null],[11,"is_up","","Is the `ButtonPosition` up.",68,null],[11,"if_down","","Returns the position at which the button was pressed along with the widget that was\nunder the mouse at the time of pressing if the position is `Down`.",68,null],[11,"xy_if_down","","Returns the position at which the button was pressed if it's down.",68,null],[11,"new","","Returns a new button map with all states set to `None`",69,{"inputs":[],"output":{"name":"self"}}],[11,"relative_to","","Returns a copy of the ButtonMap relative to the given `Point`",69,null],[11,"left","","The state of the left mouse button.",69,null],[11,"middle","","The state of the middle mouse button.",69,null],[11,"right","","The state of the right mouse button.",69,null],[11,"press","","Sets the `Button` in the `Down` position.",69,null],[11,"release","","Set's the `Button` in the `Up` position.",69,null],[11,"pressed","","An iterator yielding all pressed mouse buttons along with the location at which they\nwere originally pressed.",69,null],[11,"index","","",69,null],[11,"next","","",70,null],[11,"eq","conrod::input::state","",66,null],[11,"ne","","",66,null],[11,"fmt","","",66,null],[11,"clone","","",66,null],[11,"new","","Returns a fresh new input state",66,{"inputs":[],"output":{"name":"state"}}],[11,"relative_to","","Returns a copy of the input::State relative to the given `position::Point`",66,null],[0,"widget","conrod::input","Contains all the logic for filtering input events and making them relative to widgets.",null,null],[3,"Widget","conrod::input::widget","Provides only events and input state that are relevant to a specific widget.",null,null],[3,"Mouse","","A view of the `input::state::Mouse` that is specific to a single widget.",null,null],[12,"buttons","","The state of each `MouseButton`.",71,null],[3,"Events","","An iterator yielding all events that are relevant to a specific widget.",null,null],[3,"Presses","","An `Iterator` yielding all button presses occuring within the given sequence of\n`widget::Event`s.",null,null],[3,"MousePresses","","An `Iterator` yielding all mouse button presses occuring within the given sequence of `Presses`.",null,null],[3,"MouseButtonPresses","","An `Iterator` yielding all mouse button presses occuring within the given sequence of\n`Presses` for some specific mouse button.",null,null],[3,"KeyPresses","","An `Iterator` yielding all keyboard button presses occuring within the given sequence of\n`Presses`.",null,null],[3,"Releases","","An `Iterator` yielding all button releases occuring within the given sequence of\n`widget::Event`s.",null,null],[3,"MouseButtonReleases","","An `Iterator` yielding all mouse button releases occuring within the given sequence of\n`Releases` for some specific mouse button.",null,null],[3,"MouseReleases","","An `Iterator` yielding all mouse button releases occuring within the given sequence of\n`Releases`.",null,null],[3,"KeyReleases","","An `Iterator` yielding all keyboard button releases occuring within the given sequence of\n`Releases`.",null,null],[3,"Clicks","","An `Iterator` yielding all mouse clicks occuring within the given sequence of `widget::Event`s.",null,null],[3,"ButtonClicks","","An `Iterator` yielding all mouse `button` clicks occuring within the given sequence of\n`widget::Click`s.",null,null],[3,"Drags","","An iterator that yields all `event::Drag` events yielded by the `Events` iterator.",null,null],[3,"ButtonDrags","","An `Iterator` yielding all mouse `button` drags occuring within the given sequence of\n`widget::Drag`s.",null,null],[3,"Texts","","An iterator that yields all `Input::Text` events yielded by the `Events` iterator.",null,null],[3,"Scrolls","","An iterator that yields all `Scroll` events yielded by the given `Events` iterator.",null,null],[11,"clone","","",72,null],[11,"fmt","","",71,null],[11,"clone","","",71,null],[11,"clone","","",73,null],[11,"clone","","",74,null],[11,"clone","","",75,null],[11,"clone","","",76,null],[11,"clone","","",77,null],[11,"clone","","",78,null],[11,"clone","","",79,null],[11,"clone","","",80,null],[11,"clone","","",81,null],[11,"clone","","",82,null],[11,"clone","","",83,null],[11,"clone","","",84,null],[11,"clone","","",85,null],[11,"clone","","",86,null],[11,"clone","","",87,null],[11,"for_widget","","Returns a `Widget` with events specifically for the given widget.",72,{"inputs":[{"name":"index"},{"name":"rect"},{"name":"global"}],"output":{"name":"self"}}],[11,"mouse","","If the widget is currently capturing the mouse, this returns the state of the mouse.",72,null],[11,"events","","Produces an iterator yielding all events that are relevant to a specific widget.",72,null],[11,"presses","","Filters all events yielded by `Self::events` other than `event::Press`es.",72,null],[11,"releases","","Filters all events yielded by `Self::events` other than `event::Release`es.",72,null],[11,"clicks","","Filters all events yielded by `Self::events` for all `event::Click`s.",72,null],[11,"drags","","Produces an iterator that yields all `event::Drag` events yielded by the `Events` iterator.",72,null],[11,"texts","","Produces an iterator that yields all `Input::Text` events that have occurred as `&str`s\nsince the last time `Ui::set_widgets` was called.",72,null],[11,"scrolls","","Produce an iterator that yields only the `Scroll` events yielded by the `Events` iterator.",72,null],[11,"abs_xy","","The absolute position of the mouse within the window.",71,null],[11,"rel_xy","","The position of the mouse relative to the middle of the widget's `Rect`.",71,null],[11,"is_over","","Is the mouse currently over the widget.",71,null],[11,"mouse","","Produces an `Iterator` that yields only the press events that correspond with mouse buttons.",74,null],[11,"key","","Produces an `Iterator` that yields only the press events that correspond with keyboard\nbuttons.",74,null],[11,"button","","Produces an `Iterator` that yields only events associated with the given mouse button.",75,null],[11,"left","","Produces an `Iterator` that yields only the left mouse button press events.",75,null],[11,"middle","","Produces an `Iterator` that yields only the middle mouse button press events.",75,null],[11,"right","","Produces an `Iterator` that yields only the right mouse button press events.",75,null],[11,"mouse","","Produces an `Iterator` that yields only the release events that correspond with mouse\nbuttons.",78,null],[11,"key","","Produces an `Iterator` that yields only the release events that correspond with keyboard\nbuttons.",78,null],[11,"button","","Produces an `Iterator` that yields only events associated with the given mouse button.",80,null],[11,"left","","Produces an `Iterator` that yields only the left mouse button release events.",80,null],[11,"middle","","Produces an `Iterator` that yields only the middle mouse button release events.",80,null],[11,"right","","Produces an `Iterator` that yields only the right mouse button release events.",80,null],[11,"button","","Yield only the `Click`s that occurred from the given button.",82,null],[11,"left","","Yield only left mouse button `Click`s.",82,null],[11,"middle","","Yields only middle mouse button `Click`s.",82,null],[11,"right","","Yield only right mouse button `Click`s.",82,null],[11,"button","","Yield only the `Drag`s that occurred from the given button.",84,null],[11,"left","","Yield only left mouse button `Drag`s.",84,null],[11,"middle","","Yields only middle mouse button `Drag`s.",84,null],[11,"right","","Yield only right mouse button `Drag`s.",84,null],[11,"next","","",73,null],[11,"next","","",74,null],[11,"next","","",75,null],[11,"next","","",76,null],[11,"next","","",77,null],[11,"next","","",78,null],[11,"next","","",80,null],[11,"next","","",79,null],[11,"next","","",81,null],[11,"next","","",82,null],[11,"next","","",83,null],[11,"next","","",84,null],[11,"next","","",85,null],[11,"next","","",86,null],[11,"next","","",87,null],[0,"global","conrod::input","Handles all of the global input events and state.\nThe core of this module is the `Global` struct. It is responsible for aggregating\nand interpreting raw input events into high-level semantic events.",null,null],[3,"Global","conrod::input::global","Global input event handler that also implements `input::Provider`. The `Ui` passes all events\nto it's `Global` instance, which aggregates and interprets the events to provide so-called\n'high-level' events to widgets. This input gets reset after every update by the `Ui`.",null,null],[12,"start","","The `input::State` as it was at the end of the last update cycle.",88,null],[12,"current","","The most recent `input::State`, with updates from handling all the events\nthis update cycle",88,null],[12,"last_click","","Tracks the last click that occurred and the time at which it occurred in order to create\ndouble-click events.",88,null],[3,"Events","","Iterator over all global `event::Event`s that have occurred since the last time\n`Ui::set_widgets` was called.",null,null],[3,"UiEvents","","An iterator yielding all `event::Ui`s that have occurred since the last time `Ui::set_widgets`\nwas called.",null,null],[11,"clone","","",89,null],[11,"clone","","",90,null],[11,"new","","Returns a fresh new `Global`",88,{"inputs":[],"output":{"name":"global"}}],[11,"events","","Returns an iterator yielding all events that have occurred since the last time\n`Ui::set_widgets` was called.",88,null],[11,"push_event","","Add the new event to the stack.",88,null],[11,"clear_events_and_update_start_state","","Called at the end of every update cycle in order to prepare the `Global` to\nhandle events for the next one.",88,null],[11,"ui","","Converts the `Events` into a `UiEvents`, yielding only the `event::Ui`s that have occurred\nsince the last time `Ui::set_widgets` was called.",89,null],[11,"next","","",89,null],[11,"next","","",90,null],[11,"eq","conrod","",1,null],[11,"ne","","",1,null],[11,"fmt","","",1,null],[11,"clone","","",1,null],[11,"eq","","",11,null],[11,"fmt","","",11,null],[11,"clone","","",11,null],[11,"new","","Construct a new `Range` from a given range, i.e. `Range::new(start, end)`.",1,{"inputs":[{"name":"scalar"},{"name":"scalar"}],"output":{"name":"range"}}],[11,"from_pos_and_len","","Construct a new `Range` from a given length and its centered position.",1,{"inputs":[{"name":"scalar"},{"name":"scalar"}],"output":{"name":"range"}}],[11,"magnitude","","The `start` value subtracted from the `end` value.",1,null],[11,"len","","The absolute length of the Range aka the absolute magnitude.",1,null],[11,"middle","","Return the value directly between the start and end values.",1,null],[11,"invert","","The current range with its start and end values swapped.",1,null],[11,"map_value_to","","Map the given Scalar from `Self` to some other given `Range`.",1,null],[11,"shift","","Shift the `Range` start and end points by a given `Scalar`.",1,null],[11,"direction","","The direction of the Range represented as a normalised scalar.",1,null],[11,"undirected","","Converts the Range to an undirected Range. By ensuring that `start` <= `end`.",1,null],[11,"max","","The Range that encompasses both self and the given Range.",1,null],[11,"overlap","","The Range that represents the range of the overlap between two Ranges if there is some.",1,null],[11,"max_directed","","The Range that encompasses both self and the given Range.",1,null],[11,"is_over","","Is the given scalar within our range.",1,null],[11,"round","","Round the values at both ends of the Range and return the result.",1,null],[11,"floor","","Floor the values at both ends of the Range and return the result.",1,null],[11,"pad_start","","The Range with some padding given to the `start` value.",1,null],[11,"pad_end","","The Range with some padding given to the `end` value.",1,null],[11,"pad","","The Range with some given padding to be applied to each end.",1,null],[11,"pad_ends","","The Range with some padding given for each end.",1,null],[11,"clamp_value","","Clamp the given value to the range.",1,null],[11,"stretch_to_value","","Stretch the end that is closest to the given value only if it lies outside the Range.",1,null],[11,"has_same_direction","","Does `self` have the same direction as `other`.",1,null],[11,"align_start_of","","Align the `start` of `self` to the `start` of the `other` **Range**.",1,null],[11,"align_end_of","","Align the `end` of `self` to the `end` of the `other` **Range**.",1,null],[11,"align_middle_of","","Align the middle of `self` to the middle of the `other` **Range**.",1,null],[11,"align_after","","Aligns the `start` of `self` with the `end` of `other`.",1,null],[11,"align_before","","Aligns the `end` of `self` with the `start` of `other`.",1,null],[11,"align_to","","Align `self` to `other` along the *x* axis in accordance with the given `Align` variant.",1,null],[11,"closest_edge","","The closest **Edge** of `self` to the given `scalar`.",1,null],[11,"eq","","",2,null],[11,"ne","","",2,null],[11,"fmt","","",2,null],[11,"clone","","",2,null],[11,"eq","","",8,null],[11,"fmt","","",8,null],[11,"clone","","",8,null],[11,"from_xy_dim","","Construct a Rect from a given `Point` and `Dimensions`.",2,{"inputs":[{"name":"point"},{"name":"dimensions"}],"output":{"name":"self"}}],[11,"from_corners","","Construct a Rect from the coordinates of two points.",2,{"inputs":[{"name":"point"},{"name":"point"}],"output":{"name":"self"}}],[11,"overlap","","The Rect representing the area in which two Rects overlap.",2,null],[11,"max","","The Rect that encompass the two given sets of Rect.",2,null],[11,"x","","The position in the middle of the x bounds.",2,null],[11,"y","","The position in the middle of the y bounds.",2,null],[11,"xy","","The xy position in the middle of the bounds.",2,null],[11,"x_y","","The centered x and y coordinates as a tuple.",2,null],[11,"w","","The width of the Rect.",2,null],[11,"h","","The height of the Rect.",2,null],[11,"dim","","The total dimensions of the Rect.",2,null],[11,"w_h","","The width and height of the Rect as a tuple.",2,null],[11,"xy_dim","","Convert the Rect to a `Point` and `Dimensions`.",2,null],[11,"x_y_w_h","","The Rect's centered coordinates and dimensions in a tuple.",2,null],[11,"len","","The length of the longest side of the rectangle.",2,null],[11,"bottom","","The Rect's lowest y value.",2,null],[11,"top","","The Rect's highest y value.",2,null],[11,"left","","The Rect's lowest x value.",2,null],[11,"right","","The Rect's highest x value.",2,null],[11,"top_left","","The top left corner **Point**.",2,null],[11,"bottom_left","","The bottom left corner **Point**.",2,null],[11,"top_right","","The top right corner **Point**.",2,null],[11,"bottom_right","","The bottom right corner **Point**.",2,null],[11,"l_r_b_t","","The edges of the **Rect** in a tuple (top, bottom, left, right).",2,null],[11,"l_t_w_h","","The left and top edges of the **Rect** along with the width and height.",2,null],[11,"l_b_w_h","","The left and bottom edges of the **Rect** along with the width and height.",2,null],[11,"shift_x","","Shift the Rect along the x axis.",2,null],[11,"shift_y","","Shift the Rect along the y axis.",2,null],[11,"shift","","Shift the Rect by the given Point.",2,null],[11,"relative_to_x","","Returns a `Rect` with a position relative to the given position on the *x* axis.",2,null],[11,"relative_to_y","","Returns a `Rect` with a position relative to the given position on the *y* axis.",2,null],[11,"relative_to","","Returns a `Rect` with a position relative to the given position.",2,null],[11,"is_over","","Does the given point touch the Rectangle.",2,null],[11,"pad_left","","The Rect with some padding applied to the left edge.",2,null],[11,"pad_right","","The Rect with some padding applied to the right edge.",2,null],[11,"pad_bottom","","The rect with some padding applied to the bottom edge.",2,null],[11,"pad_top","","The Rect with some padding applied to the top edge.",2,null],[11,"pad","","The Rect with some padding amount applied to each edge.",2,null],[11,"padding","","The Rect with some padding applied.",2,null],[11,"stretch_to_point","","Stretches the closest edge(s) to the given point if the point lies outside of the Rect area.",2,null],[11,"left_of","","Align `self`'s right edge with the left edge of the `other` **Rect**.",2,null],[11,"right_of","","Align `self`'s left edge with the right dge of the `other` **Rect**.",2,null],[11,"below","","Align `self`'s top edge with the bottom edge of the `other` **Rect**.",2,null],[11,"above","","Align `self`'s bottom edge with the top edge of the `other` **Rect**.",2,null],[11,"align_x_of","","Align `self` to `other` along the *x* axis in accordance with the given `Align` variant.",2,null],[11,"align_y_of","","Align `self` to `other` along the *y* axis in accordance with the given `Align` variant.",2,null],[11,"align_left_of","","Align `self`'s left edge with the left edge of the `other` **Rect**.",2,null],[11,"align_middle_x_of","","Align the middle of `self` with the middle of the `other` **Rect** along the *x* axis.",2,null],[11,"align_right_of","","Align `self`'s right edge with the right edge of the `other` **Rect**.",2,null],[11,"align_bottom_of","","Align `self`'s bottom edge with the bottom edge of the `other` **Rect**.",2,null],[11,"align_middle_y_of","","Align the middle of `self` with the middle of the `other` **Rect** along the *y* axis.",2,null],[11,"align_top_of","","Align `self`'s top edge with the top edge of the `other` **Rect**.",2,null],[11,"top_left_of","","Place `self` along the top left edges of the `other` **Rect**.",2,null],[11,"top_right_of","","Place `self` along the top right edges of the `other` **Rect**.",2,null],[11,"bottom_left_of","","Place `self` along the bottom left edges of the `other` **Rect**.",2,null],[11,"bottom_right_of","","Place `self` along the bottom right edges of the `other` **Rect**.",2,null],[11,"mid_top_of","","Place `self` in the middle of the top edge of the `other` **Rect**.",2,null],[11,"mid_bottom_of","","Place `self` in the middle of the bottom edge of the `other` **Rect**.",2,null],[11,"mid_left_of","","Place `self` in the middle of the left edge of the `other` **Rect**.",2,null],[11,"mid_right_of","","Place `self` in the middle of the right edge of the `other` **Rect**.",2,null],[11,"middle_of","","Place `self` directly in the middle of the `other` **Rect**.",2,null],[11,"closest_corner","","Return the **Corner** of `self` that is closest to the given **Point**.",2,null],[11,"eq","","",7,null],[11,"fmt","","",7,null],[11,"clone","","",7,null],[11,"eq","","",13,null],[11,"ne","","",13,null],[11,"fmt","","",13,null],[11,"clone","","",13,null],[11,"eq","","",9,null],[11,"fmt","","",9,null],[11,"clone","","",9,null],[11,"eq","","",6,null],[11,"fmt","","",6,null],[11,"clone","","",6,null],[11,"eq","","",12,null],[11,"ne","","",12,null],[11,"fmt","","",12,null],[11,"clone","","",12,null],[11,"eq","","",10,null],[11,"ne","","",10,null],[11,"fmt","","",10,null],[11,"clone","","",10,null],[11,"eq","","",0,null],[11,"ne","","",0,null],[11,"fmt","","",0,null],[11,"clone","","",0,null],[11,"none","","No padding.",0,{"inputs":[],"output":{"name":"padding"}}],[0,"render","","Conrod's generic graphics backend.",null,null],[3,"Primitives","conrod::render","An iterator-like type that yields a reference to each primitive in order of depth for\nrendering.",null,null],[3,"OwnedPrimitives","","An owned alternative to the `Primitives` type.",null,null],[3,"Primitive","","Data required for rendering a single primitive widget.",null,null],[12,"index","","The index of the widget within the widget graph.",91,null],[12,"kind","","State and style for this primitive widget.",91,null],[12,"scizzor","","The Rect to which the primitive widget should be cropped.",91,null],[12,"rect","","The bounding rectangle for the `Primitive`.",91,null],[3,"Text","","A type used for producing a `PositionedGlyph` iterator.",null,null],[3,"WalkOwnedPrimitives","","An iterator-like type for yielding `Primitive`s from an `OwnedPrimitives`.",null,null],[4,"PrimitiveKind","","The unique kind for each primitive element in the Ui.",null,null],[13,"Rectangle","","A filled `Rectangle`.",92,null],[12,"color","conrod::render::PrimitiveKind","The fill colour for the rectangle.",92,null],[13,"Polygon","conrod::render","A filled `Polygon`.",92,null],[12,"color","conrod::render::PrimitiveKind","The fill colour for the inner part of the polygon",92,null],[12,"points","","The ordered points that, when joined with lines, represent each side of the `Polygon`.",92,null],[13,"Lines","conrod::render","A series of consecutive `Line`s.",92,null],[12,"color","conrod::render::PrimitiveKind","The colour of each `Line`.",92,null],[12,"cap","","Whether the end of the lines should be `Flat` or `Round`.",92,null],[12,"thickness","","The thickness of the lines, i.e. the width of a vertical line or th height of a\nhorizontal line.",92,null],[12,"points","","The ordered points which should be joined by lines.",92,null],[13,"Image","conrod::render","A single `Image`, produced by the primitive `Image` widget.",92,null],[12,"color","conrod::render::PrimitiveKind","When `Some`, colours the `Image`. When `None`, the `Image` uses its regular colours.",92,null],[12,"source_rect","","The area of the texture that will be drawn to the `Image`'s `Rect`.",92,null],[13,"Text","conrod::render","A single block of `Text`, produced by the primitive `Text` widget.",92,null],[12,"color","conrod::render::PrimitiveKind","The colour of the `Text`.",92,null],[12,"text","","All glyphs within the `Text` laid out in their correct positions in order from top-left\nto bottom right.",92,null],[12,"font_id","","The unique identifier for the font, useful for the `glyph_cache.rect_for(id, glyph)`\nmethod when using the `conrod::text::GlyphCache` (rusttype's GPU `Cache`).",92,null],[13,"Other","conrod::render","An `Other` variant will be yielded for every non-primitive widget in the list.",92,null],[8,"PrimitiveWalker","","A trait that allows the user to remain generic over types yielding `Primitive`s.",null,null],[10,"next_primitive","","Yield the next `Primitive` in order of depth, bottom to top.",93,null],[11,"clone","","",94,null],[11,"next_primitive","","",95,null],[11,"next_primitive","","",96,null],[11,"positioned_glyphs","","Produces a list of `PositionedGlyph`s which may be used to cache and render the text.",97,null],[11,"new","","Constructor for the `Primitives` iterator.",95,null],[11,"next","","Yield the next `Primitive` for rendering.",95,null],[11,"owned","","Collect the `Primitives` list into an owned collection.",95,null],[11,"walk","","Produce an iterator-like type for yielding `Primitive`s.",94,null],[11,"next","","Yield the next `Primitive` in order or rendering depth, bottom to top.",96,null],[0,"text","conrod","Text layout logic.",null,null],[3,"Glyph","conrod::text","A single glyph of a font. this may either be a thin wrapper referring to the font and the glyph id, or\nit may be a standalone glyph that owns the data needed by it.",null,null],[3,"GlyphId","","Represents a glyph identifier for a particular font. This identifier will not necessarily correspond to\nthe correct glyph in a font other than the one that it was obtained from.",null,null],[12,"0","","",98,null],[3,"GlyphIter","","",null,null],[3,"LayoutIter","","",null,null],[3,"Scale","","Defines the size of a rendered face of a font, in pixels, horizontally and vertically. A vertical\nscale of `y` pixels means that the distance betwen the ascent and descent lines (see `VMetrics`) of the\nface will be `y` pixels. If `x` and `y` are equal the scaling is uniform. Non-uniform scaling by a factor\n*f* in the horizontal direction is achieved by setting `x` equal to *f* times `y`.",null,null],[12,"x","","Horizontal scale, in pixels.",99,null],[12,"y","","Vertical scale, in pixels.",99,null],[3,"GlyphCache","","An implementation of a dynamic GPU glyph cache. See the module documentation for more information.",null,null],[3,"Lines","","An iterator yielding each line within the given `text` as a new `&str`, where the start and end\nindices into each line are provided by the given iterator.",null,null],[5,"height","","Determine the total height of a block of text with the given number of lines, font size and\n`line_spacing` (the space that separates each line of text).",null,{"inputs":[{"name":"usize"},{"name":"fontsize"},{"name":"scalar"}],"output":{"name":"scalar"}}],[5,"lines","","Produce an iterator yielding each line within the given `text` as a new `&str`, where the\nstart and end indices into each line are provided by the given iterator.",null,{"inputs":[{"name":"str"},{"name":"i"}],"output":{"name":"lines"}}],[5,"pt_to_px","","Converts the given font size in "points" to its font size in pixels.",null,{"inputs":[{"name":"fontsize"}],"output":{"name":"f32"}}],[5,"pt_to_scale","","Converts the given font size in "points" to a uniform `rusttype::Scale`.",null,{"inputs":[{"name":"fontsize"}],"output":{"name":"scale"}}],[0,"rt","","Re-exported RustType geometrical types.",null,null],[3,"Point","conrod::text::rt","A point in 2-dimensional space, with each dimension of type `N`.",null,null],[12,"x","","",100,null],[12,"y","","",100,null],[3,"Rect","","A rectangle, with top-left corner at `min`, and bottom-right corner at `max`.",null,null],[12,"min","","",101,null],[12,"max","","",101,null],[3,"Vector","","A vector in 2-dimensional space, with each dimension of type `N`.",null,null],[12,"x","","",102,null],[12,"y","","",102,null],[5,"point","","A convenience function for generating `Point`s.",null,{"inputs":[{"name":"n"},{"name":"n"}],"output":{"name":"point"}}],[5,"vector","","A convenience function for generating `Vector`s.",null,{"inputs":[{"name":"n"},{"name":"n"}],"output":{"name":"vector"}}],[0,"font","conrod::text","The `font::Id` and `font::Map` types.",null,null],[3,"Id","conrod::text::font","A type-safe wrapper around the `FontId`.",null,null],[3,"Map","","A collection of mappings from `font::Id`s to `rusttype::Font`s.",null,null],[3,"NewIds","","An iterator yielding an `Id` for each new `rusttype::Font` inserted into the `Map` via the\n`insert_collection` method.",null,null],[3,"Ids","","Yields the `Id` for each `Font` within the `Map`.",null,null],[4,"Error","","Returned when loading new fonts from file or bytes.",null,null],[13,"IO","","Some error occurred while loading a `FontCollection` from a file.",103,null],[13,"NoFont","","No `Font`s could be yielded from the `FontCollection`.",103,null],[5,"collection_from_file","","Load a `super::FontCollection` from a file at a given path.",null,{"inputs":[{"name":"p"}],"output":{"name":"result"}}],[5,"from_file","","Load a single `Font` from a file at the given path.",null,{"inputs":[{"name":"p"}],"output":{"name":"result"}}],[11,"cmp","","",104,null],[11,"partial_cmp","","",104,null],[11,"lt","","",104,null],[11,"le","","",104,null],[11,"gt","","",104,null],[11,"ge","","",104,null],[11,"eq","","",104,null],[11,"ne","","",104,null],[11,"hash","","",104,null],[11,"fmt","","",104,null],[11,"clone","","",104,null],[11,"clone","","",105,null],[11,"fmt","","",103,null],[11,"index","","Returns the inner `usize` from the `Id`.",104,null],[11,"new","","Construct the new, empty `Map`.",106,{"inputs":[],"output":{"name":"self"}}],[11,"get","","Borrow the `rusttype::Font` associated with the given `font::Id`.",106,null],[11,"insert","","Adds the given `rusttype::Font` to the `Map` and returns a unique `Id` for it.",106,null],[11,"insert_from_file","","Insert a single `Font` into the map by loading it from the given file path.",106,null],[11,"ids","","Produces an iterator yielding the `Id` for each `Font` within the `Map`.",106,null],[11,"next","","",107,null],[11,"next","","",105,null],[11,"from","","",103,{"inputs":[{"name":"error"}],"output":{"name":"self"}}],[11,"description","","",103,null],[11,"fmt","","",103,null],[0,"glyph","conrod::text","Logic and types specific to individual glyph layout.",null,null],[3,"Rects","conrod::text::glyph","An iterator yielding the `Rect` for each `char`'s `Glyph` in the given `text`.",null,null],[3,"RectsPerLine","","An iterator that, for every `(line, line_rect)` pair yielded by the given iterator,\nproduces an iterator that yields a `Rect` for every character in that line.",null,null],[3,"SelectedRectsPerLine","","Yields an iteraor yielding `Rect`s for each selected character in each line of text within\nthe given iterator yielding char `Rect`s.",null,null],[3,"SelectedRects","","Yields a `Rect` for each selected character in a single line of text.",null,null],[5,"index_after_cursor","","Find the index of the character that directly follows the cursor at the given `cursor_idx`.",null,{"inputs":[{"name":"i"},{"name":"index"}],"output":{"name":"option"}}],[5,"rects_per_line","","Produce an iterator that, for every `(line, line_rect)` pair yielded by the given iterator,\nproduces an iterator that yields a `Rect` for every character in that line.",null,{"inputs":[{"name":"i"},{"name":"font"},{"name":"fontsize"}],"output":{"name":"rectsperline"}}],[5,"selected_rects_per_line","","Produces an iterator that yields iteraors yielding `Rect`s for each selected character in\neach line of text within the given iterator yielding char `Rect`s.",null,{"inputs":[{"name":"i"},{"name":"font"},{"name":"fontsize"},{"name":"index"},{"name":"index"}],"output":{"name":"selectedrectsperline"}}],[6,"X","","Some position along the X axis (used within `CharXs`).",null,null],[6,"HalfW","","The half of the width of some character (used within `CharXs`).",null,null],[11,"next","","",108,null],[11,"next","","",109,null],[11,"next","","",110,null],[11,"next","","",111,null],[0,"cursor","conrod::text","Logic related to the positioning of the cursor within text.",null,null],[3,"XysPerLine","conrod::text::cursor","Every possible cursor position within each line of text yielded by the given iterator.",null,null],[3,"XysPerLineFromText","","Similarly to `XysPerLine`, yields every possible cursor position within each line of text\nyielded by the given iterator.",null,null],[3,"Xs","","Each possible cursor position along the *x* axis within a line of text.",null,null],[3,"Index","","An index representing the position of a cursor within some text.",null,null],[12,"line","","The index of the line upon which the cursor is situated.",112,null],[12,"char","","The index within all possible cursor positions for the line.",112,null],[5,"xys_per_line","","Every possible cursor position within each line of text yielded by the given iterator.",null,{"inputs":[{"name":"i"},{"name":"font"},{"name":"str"},{"name":"fontsize"}],"output":{"name":"xysperline"}}],[5,"xys_per_line_from_text","","Similarly to `xys_per_line`, this produces an iterator yielding every possible cursor\nposition within each line of text yielded by the given iterator.",null,null],[5,"index_before_char","","Convert the given character index into a cursor `Index`.",null,{"inputs":[{"name":"i"},{"name":"usize"}],"output":{"name":"option"}}],[5,"xy_at","","Determine the *xy* location of the cursor at the given cursor `Index`.",null,{"inputs":[{"name":"i"},{"name":"index"}],"output":{"name":"option"}}],[5,"closest_line","","Find the closest line for the given `y` position, and return the line index, Xs iterator, and y-range of that line",null,{"inputs":[{"name":"scalar"},{"name":"i"}],"output":{"name":"option"}}],[5,"closest_cursor_index_and_xy","","Find the closest cursor index to the given `xy` position, and the center `Point` of that\ncursor.",null,{"inputs":[{"name":"point"},{"name":"i"}],"output":{"name":"option"}}],[5,"closest_cursor_index_on_line","","Find the closest cursor index to the given `x` position on the given line along with the\n`x` position of that cursor.",null,null],[11,"clone","","",113,null],[11,"clone","","",114,null],[11,"cmp","","",112,null],[11,"partial_cmp","","",112,null],[11,"lt","","",112,null],[11,"le","","",112,null],[11,"gt","","",112,null],[11,"ge","","",112,null],[11,"eq","","",112,null],[11,"ne","","",112,null],[11,"fmt","","",112,null],[11,"clone","","",112,null],[11,"previous","","The cursor index that comes before `self`.",112,null],[11,"next","","The cursor index that follows `self`.",112,null],[11,"next","","",113,null],[11,"next","","",114,null],[11,"next","","",115,null],[0,"line","conrod::text","Text handling logic related to individual lines of text.",null,null],[3,"Info","conrod::text::line","Information about a single line of text within a `&str`.",null,null],[12,"start_byte","","The index into the `&str` that represents the first character within the line.",116,null],[12,"start_char","","The character index of the first character in the line.",116,null],[12,"end_break","","The index within the `&str` at which this line breaks into a new line, along with the\nindex at which the following line begins. The variant describes whether the break is\ncaused by a `Newline` character or a `Wrap` by the given wrap function.",116,null],[12,"width","","The total width of all characters within the line.",116,null],[3,"Infos","","An iterator yielding an `Info` struct for each line in the given `text` wrapped by the\ngiven `next_break_fn`.",null,null],[3,"Rects","","An iterator yielding a `Rect` for each line in",null,null],[3,"SelectedRects","","An iterator yielding a `Rect` for each selected line in a block of text.",null,null],[4,"Break","","The two types of **Break** indices returned by the **WrapIndicesBy** iterators.",null,null],[13,"Wrap","","A break caused by the text exceeding some maximum width.",117,null],[12,"byte","conrod::text::line::Break","The byte index at which the break occurs.",117,null],[12,"char","","The char index at which the string should wrap due to exceeding a maximum width.",117,null],[12,"len_bytes","","The byte length which should be skipped in order to reach the first non-whitespace\ncharacter to use as the beginning of the next line.",117,null],[13,"Newline","conrod::text::line","A break caused by a newline character.",117,null],[12,"byte","conrod::text::line::Break","The byte index at which the string should wrap due to exceeding a maximum width.",117,null],[12,"char","","The char index at which the string should wrap due to exceeding a maximum width.",117,null],[12,"len_bytes","","The width of the "newline" token in bytes.",117,null],[13,"End","conrod::text::line","The end of the string has been reached, with the given length.",117,null],[12,"byte","conrod::text::line::Break","The ending byte index.",117,null],[12,"char","","The ending char index.",117,null],[5,"width","conrod::text::line","Produce the width of the given line of text including spaces (i.e. ' ').",null,{"inputs":[{"name":"str"},{"name":"font"},{"name":"fontsize"}],"output":{"name":"scalar"}}],[5,"infos_wrapped_by","","Produce an `Infos` iterator wrapped by the given `next_break_fn`.",null,{"inputs":[{"name":"str"},{"name":"font"},{"name":"fontsize"},{"name":"scalar"},{"name":"f"}],"output":{"name":"infos"}}],[5,"infos","","Produce an `Infos` iterator that yields an `Info` for every line in the given text.",null,{"inputs":[{"name":"str"},{"name":"font"},{"name":"fontsize"}],"output":{"name":"infos"}}],[5,"rects","","Produce an iterator yielding the bounding `Rect` for each line in the text.",null,{"inputs":[{"name":"i"},{"name":"fontsize"},{"name":"rect"},{"name":"align"},{"name":"align"},{"name":"scalar"}],"output":{"name":"rects"}}],[5,"selected_rects","","Produces an iterator yielding a `Rect` for the selected range in each selected line in a block\nof text.",null,{"inputs":[{"name":"i"},{"name":"font"},{"name":"fontsize"},{"name":"index"},{"name":"index"}],"output":{"name":"selectedrects"}}],[6,"NextBreakFnPtr","","An alias for function pointers that are compatible with the `Block`'s required text\nwrapping function.",null,null],[11,"eq","","",117,null],[11,"ne","","",117,null],[11,"fmt","","",117,null],[11,"clone","","",117,null],[11,"eq","","",116,null],[11,"ne","","",116,null],[11,"fmt","","",116,null],[11,"clone","","",116,null],[11,"clone","","",118,null],[11,"byte_index","","Return the index at which the break occurs.",117,null],[11,"char_index","","Return the index of the `char` at which the break occurs.",117,null],[11,"clone","","",119,null],[11,"end_byte","","The end of the byte index range for indexing into the slice.",116,null],[11,"end_char","","The end of the index range for indexing into the slice.",116,null],[11,"byte_range","","The index range for indexing (via bytes) into the original str slice.",116,null],[11,"char_range","","The index range for indexing into a `char` iterator over the original str slice.",116,null],[11,"wrap_by_character","","Converts `Self` into an `Infos` whose lines are wrapped at the character that first\ncauses the line width to exceed the given `max_width`.",119,null],[11,"wrap_by_whitespace","","Converts `Self` into an `Infos` whose lines are wrapped at the whitespace prior to the\ncharacter that causes the line width to exceed the given `max_width`.",119,null],[11,"next","","",119,null],[11,"next","","",118,null],[11,"next","","",120,null],[6,"FontCollection","conrod::text","The RustType `FontCollection` type used by conrod.",null,null],[6,"Font","","The RustType `Font` type used by conrod.",null,null],[6,"PositionedGlyph","","The RustType `PositionedGlyph` type used by conrod.",null,null],[11,"clone","","",121,null],[11,"next","","",121,null],[0,"theme","conrod","",null,null],[3,"Theme","conrod::theme","A serializable collection of canvas and widget styling defaults.",null,null],[12,"name","","A name for the theme used for identification.",122,null],[12,"padding","","Padding for Canvas layout and positioning.",122,null],[12,"x_position","","A default widget position along the *x* axis.",122,null],[12,"y_position","","A default widget position along the *y* axis.",122,null],[12,"background_color","","A default background for the theme.",122,null],[12,"shape_color","","A default color for widget shapes.",122,null],[12,"border_color","","A default color for widget borders.",122,null],[12,"border_width","","A default width for widget borders.",122,null],[12,"label_color","","A default color for widget labels.",122,null],[12,"font_id","","The `Id` of the default font used for text widgets when one is not specified.",122,null],[12,"font_size_large","","A default "large" font size.",122,null],[12,"font_size_medium","","A default "medium" font size.",122,null],[12,"font_size_small","","A default "small" font size.",122,null],[12,"widget_styling","","Unique styling for each widget, index-able by the **Widget::kind**.",122,null],[12,"mouse_drag_threshold","","Mouse Drag distance threshold determines the minimum distance from the mouse-down point\nthat the mouse must move before starting a drag operation.",122,null],[12,"double_click_threshold","","Once the `Duration` that separates two consecutive `Click`s is greater than this value, a\n`DoubleClick` event will no longer be generated.",122,null],[3,"WidgetDefault","","The defaults for a specific widget.",null,null],[12,"style","","The unique style of a widget.",123,null],[12,"common","","The attributes commonly shared between widgets.",123,null],[3,"UniqueDefault","","A **WidgetDefault** downcast to a **Widget**'s unique **Style** type.",null,null],[12,"style","","The unique style for the widget.",124,null],[12,"common","","Attributes that are common to all widgets.",124,null],[11,"fmt","","",124,null],[11,"clone","","",124,null],[11,"new","","Constructor for a WidgetDefault.",123,{"inputs":[{"name":"box"}],"output":{"name":"widgetdefault"}}],[11,"default","","The default theme if not loading from file.",122,{"inputs":[],"output":{"name":"theme"}}],[11,"widget_style","","Retrieve the unique default styling for a widget.",122,null],[11,"new","conrod","Begin building a new `Ui` instance.",4,{"inputs":[],"output":{"name":"self"}}],[11,"theme","","The theme used to set default styling for widgets.",4,null],[11,"widgets_capacity","","An estimation of the maximum number of widgets that will be used with this `Ui` instance.",4,null],[11,"build","","Build **Ui** from the given builder",4,null],[11,"widget_input","","Returns a `input::Widget` for the given widget",3,null],[11,"rect_of","","The **Rect** for the widget at the given index.",3,null],[11,"w_of","","The absolute width of the widget at the given index.",3,null],[11,"h_of","","The absolute height of the widget at the given index.",3,null],[11,"wh_of","","The absolute dimensions for the widget at the given index.",3,null],[11,"xy_of","","The coordinates for the widget at the given index.",3,null],[11,"kid_area_of","","The `kid_area` of the widget at the given index.",3,null],[11,"maybe_prev_widget","","An index to the previously updated widget if there is one.",3,null],[11,"widget_graph","","Borrow the **Ui**'s `widget_graph`.",3,null],[11,"updated_widgets","","Borrow the **Ui**'s set of updated widgets.",3,null],[11,"prev_updated_widgets","","Borrow the **Ui**'s set of updated widgets.",3,null],[11,"scroll_widget","","Scroll the widget at the given index by the given offset amount.",3,null],[11,"handle_event","","Handle raw window events and update the `Ui` state accordingly.",3,null],[11,"calc_xy","","Get the centred xy coords for some given `Dimension`s, `Position` and alignment.",3,null],[11,"set_widgets","","A function within which all widgets are instantiated by the user, normally situated within\nthe "update" stage of an event loop.",3,null],[11,"set_num_redraw_frames","","Set the number of frames that the `Ui` should draw in the case that `needs_redraw` is\ncalled. The default is `3` (see the SAFE_REDRAW_COUNT docs for details).",3,null],[11,"needs_redraw","","Tells the `Ui` that it needs to be re-draw everything. It does this by setting the redraw\ncount to `num_redraw_frames`. See the docs for `set_num_redraw_frames`, SAFE_REDRAW_COUNT\nor `draw_if_changed` for more info on how/why the redraw count is used.",3,null],[11,"clear_with","","The first of the `Primitivees` yielded by `Ui::draw` or `Ui::draw_if_changed` will always\nbe a `Rectangle` the size of the window in which conrod is hosted.",3,null],[11,"draw","","Draw the `Ui` in it's current state.",3,null],[11,"draw_if_changed","","Same as the `Ui::draw` method, but *only* draws if the `redraw_count` is greater than 0.",3,null],[11,"kids_bounding_box","","The **Rect** that bounds the kids of the widget with the given index.",3,null],[11,"visible_area","","The **Rect** that represents the maximum fully visible area for the widget with the given\nindex, including consideration of cropped scroll area.",3,null],[11,"theme","","A reference to the `Theme` that is currently active within the `Ui`.",125,null],[11,"font","","A convenience method for borrowing the `Font` for the given `Id` if it exists.",125,null],[11,"window_dim","","Returns the dimensions of the window",125,null],[11,"global_input","","Returns an immutable reference to the `input::Global` of the `Ui`.",125,null],[11,"widget_input","","Returns a `input::Widget` with input events for the widget.",125,null],[11,"new_unique_node_index","","Generate a new, unique NodeIndex into a Placeholder node within the `Ui`'s widget graph.\nThis should only be called once for each unique widget needed to avoid unnecessary bloat\nwithin the `Ui`'s widget graph.",125,null],[11,"kids_bounding_box","","The **Rect** that bounds the kids of the widget with the given index.",125,null],[11,"scroll_widget","","Scroll the widget at the given index by the given offset amount.",125,null],[11,"drop","","",125,null],[11,"deref","","",125,null],[11,"as_ref","","",125,null],[0,"utils","","",null,null],[4,"IterDiff","conrod::utils","A type returned by the `iter_diff` function.",null,null],[13,"FirstMismatch","","The index of the first non-matching element along with the iterator's remaining elements\nstarting with the first mis-matched element.",126,null],[13,"Longer","","The remaining elements of the iterator.",126,null],[13,"Shorter","","The total number of elements that were in the iterator.",126,null],[5,"partial_min","","Compare to PartialOrd values and return the min.",null,{"inputs":[{"name":"t"},{"name":"t"}],"output":{"name":"t"}}],[5,"partial_max","","Compare to PartialOrd values and return the min.",null,{"inputs":[{"name":"t"},{"name":"t"}],"output":{"name":"t"}}],[5,"clamp","","Clamp a value between some range.",null,{"inputs":[{"name":"t"},{"name":"t"},{"name":"t"}],"output":{"name":"t"}}],[5,"degrees","","Convert degrees to radians.",null,{"inputs":[{"name":"f"}],"output":{"name":"f"}}],[5,"fmod","","Modulo float.",null,{"inputs":[{"name":"f32"},{"name":"i32"}],"output":{"name":"f32"}}],[5,"modulo","","The modulo function.",null,{"inputs":[{"name":"i"},{"name":"i"}],"output":{"name":"i"}}],[5,"map_range","","Map a value from a given range to a new given range.",null,{"inputs":[{"name":"x"},{"name":"x"},{"name":"x"},{"name":"y"},{"name":"y"}],"output":{"name":"y"}}],[5,"percentage","","Get value percentage between max and min.",null,{"inputs":[{"name":"t"},{"name":"t"},{"name":"t"}],"output":{"name":"f32"}}],[5,"turns","","Convert turns to radians.",null,{"inputs":[{"name":"f"}],"output":{"name":"f"}}],[5,"value_from_perc","","Adjust the value to the given percentage.",null,{"inputs":[{"name":"f32"},{"name":"t"},{"name":"t"}],"output":{"name":"t"}}],[5,"val_to_string","","Get a suitable string from the value, its max and the pixel range.",null,{"inputs":[{"name":"t"},{"name":"t"},{"name":"t"},{"name":"usize"}],"output":{"name":"string"}}],[5,"vec2_add","","Add `a` and `b`.",null,null],[5,"vec2_sub","","Subtract `b` from `a`.",null,null],[5,"bounding_box_for_points","","Find the bounding rect for the given series of points.",null,{"inputs":[{"name":"i"}],"output":{"name":"rect"}}],[5,"iter_diff","","Compares every element yielded by both elems and new_elems in lock-step.",null,{"inputs":[{"name":"a"},{"name":"b"}],"output":{"name":"option"}}],[5,"write_if_different","","Returns `Borrowed` `elems` if `elems` contains the same elements as yielded by `new_elems`.",null,null],[5,"iter_eq","","Compares two iterators to see if they yield the same thing.",null,{"inputs":[{"name":"a"},{"name":"b"}],"output":{"name":"bool"}}],[0,"widget","conrod","Widgets are the core building blocks for every conrod user interface.",null,null],[3,"Id","conrod::widget","Unique, public widget identifier. Each widget must use a unique `WidgetId` so that it's state\ncan be cached within the `Ui` type. The reason we use a usize is because widgets are cached\nwithin a `Graph` whose max number of `Node`s is indexed by usize.",null,null],[12,"0","","",127,null],[3,"UpdateArgs","","Arguments for the [**Widget::update**](./trait.Widget#method.update) method in a struct to\nsimplify the method signature.",null,null],[12,"idx","","The **Widget**'s unique index.",128,null],[12,"maybe_parent_idx","","The **Widget**'s parent unique index, if there is one.",128,null],[12,"prev","","The **Widget**'s previous state. Specifically, the state that is common between all widgets,\nsuch as positioning, floatability, draggability, etc.",128,null],[12,"state","","A wrapper around the **Widget**'s unique state, providing methods for both immutably viewing\nand mutably updating the state.",128,null],[12,"rect","","The rectangle describing the **Widget**'s area.",128,null],[12,"style","","The **Widget**'s current **Widget::Style**.",128,null],[12,"ui","","Restricted access to the `Ui`.",128,null],[3,"IndexSlot","","A small cache for a single unique **NodeIndex**.",null,null],[3,"KidAreaArgs","","Arguments to the [**Widget::kid_area**](./trait.Widget#method.kid_area) method in a struct to\nsimplify the method signature.",null,null],[12,"rect","","The **Rect** describing the **Widget**'s position and dimensions.",129,null],[12,"style","","Current **Widget::Style** of the **Widget**.",129,null],[12,"theme","","The active **Theme** within the **Ui**.",129,null],[12,"fonts","","The **Font** (for determining text width).",129,null],[3,"KidArea","","The area upon which a **Widget**'s child widgets will be placed.",null,null],[12,"rect","","The **Rect** bounds describing the position and area.",130,null],[12,"pad","","The distance between the edge of the area and where the widgets will be placed.",130,null],[3,"Floating","","State necessary for "floating" (pop-up style) widgets.",null,null],[12,"time_last_clicked","","The time the **Widget** was last clicked (used for depth sorting in the widget **Graph**).",131,null],[3,"CommonBuilder","","A struct containing builder data common to all **Widget** types.",null,null],[12,"style","","Styling and positioning data that is common between all widget types.",132,null],[12,"maybe_parent_idx","","The parent widget of the Widget.",132,null],[12,"is_floating","","Whether or not the Widget is a "floating" Widget.",132,null],[12,"crop_kids","","Whether or not the children of this **Widget** should be cropped to its `kid_area`.",132,null],[12,"maybe_x_scroll","","Arguments to the scrolling of the widget's *x* axis.",132,null],[12,"maybe_y_scroll","","Arguments to the scrolling of the widget's *y* axis.",132,null],[12,"place_on_kid_area","","Whether or not the **Widget** should be placed on the kid_area.",132,null],[12,"maybe_graphics_for","","Describes whether or not the **Widget** is instantiated as a graphical element for some\nother **Widget**.",132,null],[3,"CommonStyle","","Styling and positioning data that is common between all widget types.",null,null],[12,"maybe_x_dimension","","The width of a Widget.",133,null],[12,"maybe_y_dimension","","The height of a Widget.",133,null],[12,"maybe_x_position","","The position of a Widget along the *x* axis.",133,null],[12,"maybe_y_position","","The position of a Widget along the *y* axis.",133,null],[12,"maybe_depth","","The rendering Depth of the Widget.",133,null],[3,"State","","A wrapper around a **Widget**'s unique **Widget::State**.",null,null],[3,"CommonState","","A wrapper around state that is common to all **Widget** types.",null,null],[12,"rect","","The rectangle describing the `Widget`'s area.",134,null],[12,"depth","","The rendering depth for the Widget (the default is 0.0).",134,null],[12,"maybe_floating","","Floating state for the widget if it is floating.",134,null],[12,"kid_area","","The area of the widget upon which kid widgets are placed.",134,null],[12,"maybe_x_scroll_state","","If the widget is scrollable across the *x* axis.",134,null],[12,"maybe_y_scroll_state","","If the widget is scrollable across the *y* axis.",134,null],[3,"PreUpdateCache","","",null,null],[12,"type_id","","The **Widget**'s unique type identifier.",135,null],[12,"idx","","The **Widget**'s unique Index.",135,null],[12,"maybe_parent_idx","","The **Widget**'s parent's unique index (if it has a parent).",135,null],[12,"maybe_x_positioned_relatively_idx","","If this **Widget** is relatively positioned to another **Widget**, this will be the index\nof the **Widget** to which this **Widget** is relatively positioned along the *x* axis.",135,null],[12,"maybe_y_positioned_relatively_idx","","If this **Widget** is relatively positioned to another **Widget**, this will be the index\nof the **Widget** to which this **Widget** is relatively positioned along the *y* axis.",135,null],[12,"rect","","The **Rect** describing the **Widget**'s position and dimensions.",135,null],[12,"depth","","The z-axis depth - affects the render order of sibling widgets.",135,null],[12,"kid_area","","The area upon which the **Widget**'s children widgets will be placed.",135,null],[12,"maybe_floating","","Floating data for the **Widget** if there is some.",135,null],[12,"crop_kids","","Whether or not the children of the **Widget** should be cropped to its `kid_area`.",135,null],[12,"maybe_x_scroll_state","","Scrolling data for the **Widget**'s *x* axis if there is some.",135,null],[12,"maybe_y_scroll_state","","Scrolling data for the **Widget**'s *y* axis if there is some.",135,null],[12,"maybe_graphics_for","","Whether or not the **Widget** has been instantiated as a graphical element for some other\nwidget.",135,null],[3,"PostUpdateCache","","",null,null],[12,"idx","","The **Widget**'s unique **Index**.",136,null],[12,"maybe_parent_idx","","The **Widget**'s parent's unique **Index** (if it has a parent).",136,null],[12,"state","","The newly produced unique **Widget::State** associated with the **Widget**.",136,null],[12,"style","","The newly produced unique **Widget::Style** associated with the **Widget**.",136,null],[4,"Index","","An index either given in the form of a publicly instantiated `Widget`'s `WidgetId`, or an\ninternally instantiated `Widget`'s `NodeIndex`,",null,null],[13,"Public","","A public identifier given by a user of a conrod library/widget, usually generated by the\n`widget_ids` macro.",137,null],[13,"Internal","","An index to an internal widget, usually used to construct some other widget.",137,null],[4,"MaybeParent","","The builder argument for the **Widget**'s parent.",null,null],[13,"None","","The user specified the widget should not have any parents, so the Root will be used.",138,null],[13,"Some","","The user gave a specific parent widget.",138,null],[13,"Unspecified","","No parent widget was specified, so we will assume they want the last parent.",138,null],[5,"default_x_dimension","","Determines the default **Dimension** for a **Widget**.",null,{"inputs":[{"name":"w"},{"name":"ui"}],"output":{"name":"dimension"}}],[5,"default_y_dimension","","Determines the default **Dimension** for a **Widget**.",null,{"inputs":[{"name":"w"},{"name":"ui"}],"output":{"name":"dimension"}}],[11,"cmp","","",127,null],[11,"partial_cmp","","",127,null],[11,"lt","","",127,null],[11,"le","","",127,null],[11,"gt","","",127,null],[11,"ge","","",127,null],[11,"eq","","",127,null],[11,"ne","","",127,null],[11,"hash","","",127,null],[11,"fmt","","",127,null],[11,"clone","","",127,null],[11,"from","","",127,{"inputs":[{"name":"usize"}],"output":{"name":"id"}}],[11,"add","","",127,null],[11,"cmp","","",137,null],[11,"partial_cmp","","",137,null],[11,"lt","","",137,null],[11,"le","","",137,null],[11,"gt","","",137,null],[11,"ge","","",137,null],[11,"eq","","",137,null],[11,"ne","","",137,null],[11,"hash","","",137,null],[11,"fmt","","",137,null],[11,"clone","","",137,null],[11,"from","","",137,{"inputs":[{"name":"id"}],"output":{"name":"index"}}],[11,"from","","",137,{"inputs":[{"name":"nodeindex"}],"output":{"name":"index"}}],[0,"scroll","","Scroll related types and logic.",null,null],[3,"Scroll","conrod::widget::scroll","Arguments given via a scrollable `Widget`'s builder methods for the scrolling along a single\naxis.",null,null],[3,"State","","Scroll state calculated for a single axis.",null,null],[12,"offset","","The distance that has been scrolled from the origin.",139,null],[12,"offset_bounds","","The start and end bounds for the offset along the axis.",139,null],[12,"scrollable_range_len","","The total range which may be "offset" from the "root" range (aka the `kid_area`).",139,null],[12,"is_scrolling","","Whether or not the this axis is currently scrolling.",139,null],[4,"X","","Behaviour for scrolling across the `X` axis.",null,null],[4,"Y","","Behaviour for scrolling across the `Y` axis.",null,null],[6,"StateX","","State for scrolling along the **X** axis.",null,null],[6,"StateY","","State for scrolling along the **Y** axis.",null,null],[8,"Axis","","Methods for distinguishing behaviour between both scroll axes at compile-time.",null,null],[10,"parallel_range","","The range of the given `Rect` that is parallel with this `Axis`.",140,{"inputs":[{"name":"rect"}],"output":{"name":"range"}}],[10,"perpendicular_range","","The range of the given `Rect` that is perpendicular with this `Axis`.",140,{"inputs":[{"name":"rect"}],"output":{"name":"range"}}],[10,"padding_range","","Given some rectangular `Padding`, return the `Range` that corresponds with this `Axis`.",140,{"inputs":[{"name":"padding"}],"output":{"name":"range"}}],[10,"mouse_scalar","","The coordinate of the given mouse position that corresponds with this `Axis`.",140,{"inputs":[{"name":"point"}],"output":{"name":"scalar"}}],[10,"offset_direction","","A `Scalar` multiplier representing the direction in which positive offset shifts the\n`scrollable_range` (either `-1.0` or `1.0).",140,{"inputs":[],"output":{"name":"scalar"}}],[11,"eq","","",141,null],[11,"ne","","",141,null],[11,"fmt","","",141,null],[11,"clone","","",141,null],[11,"eq","","",139,null],[11,"ne","","",139,null],[11,"fmt","","",139,null],[11,"clone","","",139,null],[11,"eq","","",142,null],[11,"fmt","","",142,null],[11,"clone","","",142,null],[11,"eq","","",143,null],[11,"fmt","","",143,null],[11,"clone","","",143,null],[11,"new","","The default `Scroll` args.",141,{"inputs":[],"output":{"name":"self"}}],[11,"update","","Calculate the new scroll state for the single axis of a `Widget`.",139,{"inputs":[{"name":"ui"},{"name":"index"},{"name":"kidarea"},{"name":"option"},{"name":"scalar"}],"output":{"name":"self"}}],[11,"parallel_range","","",142,{"inputs":[{"name":"rect"}],"output":{"name":"range"}}],[11,"perpendicular_range","","",142,{"inputs":[{"name":"rect"}],"output":{"name":"range"}}],[11,"padding_range","","",142,{"inputs":[{"name":"padding"}],"output":{"name":"range"}}],[11,"mouse_scalar","","",142,{"inputs":[{"name":"point"}],"output":{"name":"scalar"}}],[11,"offset_direction","","",142,{"inputs":[],"output":{"name":"scalar"}}],[11,"parallel_range","","",143,{"inputs":[{"name":"rect"}],"output":{"name":"range"}}],[11,"perpendicular_range","","",143,{"inputs":[{"name":"rect"}],"output":{"name":"range"}}],[11,"padding_range","","",143,{"inputs":[{"name":"padding"}],"output":{"name":"range"}}],[11,"mouse_scalar","","",143,{"inputs":[{"name":"point"}],"output":{"name":"scalar"}}],[11,"offset_direction","","",143,{"inputs":[],"output":{"name":"scalar"}}],[0,"primitive","conrod::widget","Primitive widgets are special in that they are built into conrod's `render`ing logic.",null,null],[0,"line","conrod::widget::primitive","A simple, non-interactive widget for drawing a single straight Line.",null,null],[3,"Line","conrod::widget::primitive::line","A simple, non-interactive widget for drawing a single straight Line.",null,null],[12,"start","","The start of the line.",144,null],[12,"end","","The end of the line.",144,null],[12,"common","","Data necessary and common for all widget builder types.",144,null],[12,"style","","Unique styling.",144,null],[12,"should_centre_points","","Whether or not the line should be automatically centred to the widget position.",144,null],[3,"State","","Unique state for the Line widget.",null,null],[12,"start","","The start of the line.",145,null],[12,"end","","The end of the line.",145,null],[3,"Style","","Unique styling for a Line widget.",null,null],[12,"maybe_pattern","","The patter for the line.",146,null],[12,"maybe_color","","Color of the Button's pressable area.",146,null],[12,"maybe_thickness","","The thickness of the line.",146,null],[12,"maybe_cap","","The style with which the ends of the line are drawn.",146,null],[4,"Pattern","","The pattern used to draw the line.",null,null],[13,"Solid","","A single continuous stroke.",147,null],[13,"Dashed","","A series of line strokes.",147,null],[13,"Dotted","","A series of circles.",147,null],[4,"Cap","","Whether the end of the **Line** should be flat or rounded.",null,null],[13,"Flat","","The line is capped with a flat edge.",148,null],[13,"Round","","The line is capped with a semi-circle.",148,null],[11,"fmt","","",144,null],[11,"clone","","",144,null],[11,"eq","","",145,null],[11,"ne","","",145,null],[11,"fmt","","",145,null],[11,"clone","","",145,null],[11,"eq","","",146,null],[11,"ne","","",146,null],[11,"fmt","","",146,null],[11,"clone","","",146,null],[11,"eq","","",147,null],[11,"fmt","","",147,null],[11,"clone","","",147,null],[11,"eq","","",148,null],[11,"fmt","","",148,null],[11,"clone","","",148,null],[11,"styled","","Build a new **Line** widget with the given style.",144,{"inputs":[{"name":"point"},{"name":"point"},{"name":"style"}],"output":{"name":"self"}}],[11,"new","","Build a new default **Line** widget.",144,{"inputs":[{"name":"point"},{"name":"point"}],"output":{"name":"self"}}],[11,"abs","","Build a new **Line** whose bounding box is fit to the absolute co-ordinates of the line\npoints.",144,{"inputs":[{"name":"point"},{"name":"point"}],"output":{"name":"self"}}],[11,"abs_styled","","The same as [**Line::abs**](./struct.Line#method.abs) but with the given style.",144,{"inputs":[{"name":"point"},{"name":"point"},{"name":"style"}],"output":{"name":"self"}}],[11,"centred","","Build a new **Line** and shift the location of the start and end points so that the centre\nof their bounding rectangle lies at the position determined by the layout for the **Line**\nwidget.",144,{"inputs":[{"name":"point"},{"name":"point"}],"output":{"name":"self"}}],[11,"centred_styled","","The same as [**Line::centred**](./struct.Line#method.centred) but with the given style.",144,{"inputs":[{"name":"point"},{"name":"point"},{"name":"style"}],"output":{"name":"self"}}],[11,"thickness","","The thickness or width of the Line.",144,null],[11,"solid","","Make a solid line.",144,null],[11,"dashed","","Make a line with a Dashed pattern.",144,null],[11,"dotted","","Make a line with a Dotted pattern.",144,null],[11,"new","","Constructor for a default Line Style.",146,{"inputs":[],"output":{"name":"self"}}],[11,"solid","","Make a solid line.",146,{"inputs":[],"output":{"name":"self"}}],[11,"dashed","","Make a line with a Dashed pattern.",146,{"inputs":[],"output":{"name":"self"}}],[11,"dotted","","Make a line with a Dotted pattern.",146,{"inputs":[],"output":{"name":"self"}}],[11,"pattern","","The style with some given pattern.",146,null],[11,"color","","The style with some given color.",146,null],[11,"thickness","","The style with some given thickness.",146,null],[11,"cap","","The style for the ends of the Line.",146,null],[11,"set_pattern","","Set the pattern for the line.",146,null],[11,"set_color","","Set the color for the line.",146,null],[11,"set_thickness","","Set the thickness for the line.",146,null],[11,"set_cap","","Set the **Cap** for the line.",146,null],[11,"get_pattern","","The Pattern for the Line.",146,null],[11,"get_color","","The Color for the Line.",146,null],[11,"get_thickness","","The width or thickness of the Line.",146,null],[11,"get_cap","","The styling for the ends of the Line.",146,null],[11,"common","","",144,null],[11,"common_mut","","",144,null],[11,"init_state","","",144,null],[11,"style","","",144,null],[11,"update","","Update the state of the Line.",144,null],[11,"color","","",144,null],[0,"image","conrod::widget::primitive","A simple, non-interactive widget for drawing an `Image`.",null,null],[3,"Image","conrod::widget::primitive::image","A primitive and basic widget for drawing an `Image`.",null,null],[12,"common","","Data necessary and common for all widget builder types.",149,null],[12,"src_rect","","The rectangle area of the original source image that should be used.",149,null],[12,"style","","Unique styling.",149,null],[3,"State","","Unique `State` to be stored between updates for the `Image`.",null,null],[12,"src_rect","","The rectangular area of the image that we wish to display.",150,null],[3,"Style","","Unique styling for the `Image` widget.",null,null],[12,"maybe_color","","Optionally specify a single colour to use for the image.",151,null],[11,"clone","","",149,null],[11,"clone","","",150,null],[11,"eq","","",151,null],[11,"ne","","",151,null],[11,"fmt","","",151,null],[11,"clone","","",151,null],[11,"new","","Construct the default `Style`, initialising all fields to `None`.",151,{"inputs":[],"output":{"name":"self"}}],[11,"maybe_color","","Retrieves the value from the `Style`.",151,null],[11,"new","","Construct a new `Image`.",149,{"inputs":[],"output":{"name":"self"}}],[11,"source_rectangle","","The rectangular area of the image that we wish to display.",149,null],[11,"color","","Build the type's self.$($assignee).+ with the given $Type.",149,null],[11,"common","","",149,null],[11,"common_mut","","",149,null],[11,"init_state","","",149,null],[11,"style","","",149,null],[11,"default_x_dimension","","",149,null],[11,"default_y_dimension","","",149,null],[11,"update","","",149,null],[0,"point_path","conrod::widget::primitive","A simple, non-interactive widget for drawing a series of conjoined lines.",null,null],[3,"PointPath","conrod::widget::primitive::point_path","A simple, non-interactive widget for drawing a series of lines and/or points.",null,null],[12,"points","","Some iterator yielding a series of Points.",152,null],[12,"common","","Data necessary and common for all widget builder types.",152,null],[12,"style","","Unique styling for the PointPath.",152,null],[12,"maybe_shift_to_centre_from","","Whether or not the points should be automatically centred to the widget position.",152,null],[3,"State","","State that is unique to the PointPath.",null,null],[12,"points","","An owned version of the list of points.",153,null],[11,"fmt","","",152,null],[11,"clone","","",152,null],[11,"eq","","",153,null],[11,"ne","","",153,null],[11,"fmt","","",153,null],[11,"clone","","",153,null],[11,"styled","","The same as [**PointPath::new**](./struct.PointPath#method.new) but with th given style.",152,{"inputs":[{"name":"i"},{"name":"style"}],"output":{"name":"self"}}],[11,"new","","Build a new default PointPath widget.",152,{"inputs":[{"name":"i"}],"output":{"name":"self"}}],[11,"abs","","Build a new PointPath whose bounding box is fit to the absolute co-ordinates of the points.",152,{"inputs":[{"name":"i"}],"output":{"name":"self"}}],[11,"abs_styled","","The same as [**PointPath::abs**](./struct.PointPath#method.abs) but constructs the\n**PointPath** with the given style.",152,{"inputs":[{"name":"i"},{"name":"style"}],"output":{"name":"self"}}],[11,"centred","","Build a new **PointPath** and shift the location of the points so that the centre of their\nbounding rectangle lies at the position determined for the **PointPath** widget.",152,{"inputs":[{"name":"i"}],"output":{"name":"self"}}],[11,"centred_styled","","The same as [**PointPath::centred**](./struct.PointPath#method.centred) but constructs the\n**PointPath** with the given style.",152,{"inputs":[{"name":"i"},{"name":"style"}],"output":{"name":"self"}}],[11,"thickness","","The thickness or width of the **PointPath**'s lines.",152,null],[11,"solid","","Make a Solid line.",152,null],[11,"dashed","","Make a line with a Dashed pattern.",152,null],[11,"dotted","","Make a line with a Dotted pattern.",152,null],[11,"common","","",152,null],[11,"common_mut","","",152,null],[11,"init_state","","",152,null],[11,"style","","",152,null],[11,"update","","Update the state of the Line.",152,null],[11,"color","","",152,null],[0,"shape","conrod::widget::primitive","A module encompassing the primitive 2D shape widgets.",null,null],[4,"Style","conrod::widget::primitive::shape","The style for some 2D shape.",null,null],[13,"Outline","","The outline of the shape with this style.",154,null],[13,"Fill","","A rectangle filled with this color.",154,null],[0,"circle","","An adaptation of the **Oval** type where the width and height are equal.",null,null],[3,"Circle","conrod::widget::primitive::shape::circle","A tiny wrapper around the **Oval** widget type.",null,null],[11,"fmt","","",155,null],[11,"clone","","",155,null],[11,"styled","","Build a circular **Oval** with the given dimensions and style.",155,{"inputs":[{"name":"scalar"},{"name":"style"}],"output":{"name":"oval"}}],[11,"fill","","Build a new **Fill**ed circular **Oval**.",155,{"inputs":[{"name":"scalar"}],"output":{"name":"oval"}}],[11,"fill_with","","Build a new circular **Oval** **Fill**ed with the given color.",155,{"inputs":[{"name":"scalar"},{"name":"color"}],"output":{"name":"oval"}}],[11,"outline","","Build a new circular **Outline**d **Oval** widget.",155,{"inputs":[{"name":"scalar"}],"output":{"name":"oval"}}],[11,"outline_styled","","Build a new circular **Oval** **Outline**d with the given style.",155,{"inputs":[{"name":"scalar"},{"name":"style"}],"output":{"name":"oval"}}],[0,"oval","conrod::widget::primitive::shape","A simple, non-interactive widget for drawing a single **Oval**.",null,null],[3,"Oval","conrod::widget::primitive::shape::oval","A simple, non-interactive widget for drawing a single **Oval**.",null,null],[12,"common","","Data necessary and common for all widget builder types.",156,null],[12,"style","","Unique styling.",156,null],[3,"State","","Unique state for the **Oval**.",null,null],[11,"fmt","","",156,null],[11,"clone","","",156,null],[11,"eq","","",157,null],[11,"fmt","","",157,null],[11,"clone","","",157,null],[11,"styled","","Build an **Oval** with the given dimensions and style.",156,{"inputs":[{"name":"dimensions"},{"name":"style"}],"output":{"name":"self"}}],[11,"fill","","Build a new **Fill**ed **Oval**.",156,{"inputs":[{"name":"dimensions"}],"output":{"name":"self"}}],[11,"fill_with","","Build a new **Oval** **Fill**ed with the given color.",156,{"inputs":[{"name":"dimensions"},{"name":"color"}],"output":{"name":"self"}}],[11,"outline","","Build a new **Outline**d **Oval** widget.",156,{"inputs":[{"name":"dimensions"}],"output":{"name":"self"}}],[11,"outline_styled","","Build a new **Oval** **Outline**d with the given style.",156,{"inputs":[{"name":"dimensions"},{"name":"style"}],"output":{"name":"self"}}],[11,"common","","",156,null],[11,"common_mut","","",156,null],[11,"init_state","","",156,null],[11,"style","","",156,null],[11,"update","","",156,null],[11,"color","","",156,null],[0,"polygon","conrod::widget::primitive::shape","A simple, non-interactive **Polygon** widget for drawing arbitrary convex shapes.",null,null],[3,"Polygon","conrod::widget::primitive::shape::polygon","A basic, non-interactive, arbitrary **Polygon** widget.",null,null],[12,"points","","The points describing the corners of the **Polygon**.",158,null],[12,"common","","Data necessary and common for all widget builder types.",158,null],[12,"style","","Unique styling for the **Polygon**.",158,null],[12,"maybe_shift_to_centre_from","","Whether or not the points should be automatically centred to the widget position.",158,null],[3,"State","","Unique state for the **Polygon**.",null,null],[12,"points","","An owned version of the points yielded by the **Polygon**'s `points` iterator.",159,null],[4,"Kind","","Whether the rectangle is drawn as an outline or a filled color.",null,null],[13,"Outline","","Only the outline of the rectangle is drawn.",160,null],[13,"Fill","","The rectangle area is filled with some color.",160,null],[11,"fmt","","",158,null],[11,"clone","","",158,null],[11,"eq","","",159,null],[11,"ne","","",159,null],[11,"fmt","","",159,null],[11,"clone","","",159,null],[11,"eq","","",160,null],[11,"fmt","","",160,null],[11,"clone","","",160,null],[11,"styled","","Build a polygon with the given points and style.",158,{"inputs":[{"name":"i"},{"name":"style"}],"output":{"name":"self"}}],[11,"fill","","Build a **Polygon** with the default **Fill** style.",158,{"inputs":[{"name":"i"}],"output":{"name":"self"}}],[11,"fill_with","","Build a **Polygon** **Fill**ed with the given **Color**.",158,{"inputs":[{"name":"i"},{"name":"color"}],"output":{"name":"self"}}],[11,"outline","","Build a **Polygon** with the default **Outline** style.",158,{"inputs":[{"name":"i"}],"output":{"name":"self"}}],[11,"outline_styled","","Build a **Polygon** **Outline**ed with the given line style.",158,{"inputs":[{"name":"i"},{"name":"style"}],"output":{"name":"self"}}],[11,"abs_styled","","Build a new filled **Polygon** whose bounding box is fit to the absolute co-ordinates of\nthe points.",158,{"inputs":[{"name":"i"},{"name":"style"}],"output":{"name":"self"}}],[11,"abs_fill","","The same as [**Polygon::abs_styled**](./struct.Polygon#method.abs_styled) but builds the\n**Polygon** with the default **Fill** style.",158,{"inputs":[{"name":"i"}],"output":{"name":"self"}}],[11,"abs_fill_with","","The same as [**Polygon::abs_styled**](./struct.Polygon#method.abs_styled) but builds the\n**Polygon** **Fill**ed with the given **Color**.",158,{"inputs":[{"name":"i"},{"name":"color"}],"output":{"name":"self"}}],[11,"abs_outline","","The same as [**Polygon::abs_styled**](./struct.Polygon#method.abs_styled) but builds the\n**Polygon** with the default **Outline** style.",158,{"inputs":[{"name":"i"}],"output":{"name":"self"}}],[11,"abs_outline_styled","","The same as [**Polygon::abs_styled**](./struct.Polygon#method.abs_styled) but builds the\n**Polygon** with the given **Outline** styling.",158,{"inputs":[{"name":"i"},{"name":"style"}],"output":{"name":"self"}}],[11,"centred_styled","","Build a new **Polygon** and shift the location of the points so that the centre of their\nbounding rectangle lies at the position determined for the **Polygon** widget.",158,{"inputs":[{"name":"i"},{"name":"style"}],"output":{"name":"self"}}],[11,"centred_fill","","The same as [**Polygon::centred_styled**](./struct.Polygon#method.centred_styled) but\nconstructs the **Polygon** with the default **Fill** style.",158,{"inputs":[{"name":"i"}],"output":{"name":"self"}}],[11,"centred_fill_with","","The same as [**Polygon::centred_styled**](./struct.Polygon#method.centred_styled) but\nconstructs the **Polygon** **Fill**ed with the given color.",158,{"inputs":[{"name":"i"},{"name":"color"}],"output":{"name":"self"}}],[11,"centred_outline","","The same as [**Polygon::centred_styled**](./struct.Polygon#method.centred_styled) but\nconstructs the **Polygon** with the default **Outline** style.",158,{"inputs":[{"name":"i"}],"output":{"name":"self"}}],[11,"centred_outline_styled","","The same as [**Polygon::centred_styled**](./struct.Polygon#method.centred_styled) but\nconstructs the **Polygon** **Outline**d with the given styling.",158,{"inputs":[{"name":"i"},{"name":"style"}],"output":{"name":"self"}}],[11,"common","","",158,null],[11,"common_mut","","",158,null],[11,"init_state","","",158,null],[11,"style","","",158,null],[11,"update","","Update the state of the Polygon.",158,null],[11,"color","","",158,null],[0,"rectangle","conrod::widget::primitive::shape","A simple, non-interactive rectangle shape widget.",null,null],[3,"Rectangle","conrod::widget::primitive::shape::rectangle","A basic, non-interactive rectangle shape widget.",null,null],[12,"common","","Data necessary and common for all widget builder types.",161,null],[12,"style","","Unique styling for the **Rectangle**.",161,null],[3,"State","","Unique state for the Rectangle.",null,null],[4,"Kind","","Whether the rectangle is drawn as an outline or a filled color.",null,null],[13,"Outline","","Only the outline of the rectangle is drawn.",162,null],[13,"Fill","","The rectangle area is filled with some color.",162,null],[11,"fmt","","",161,null],[11,"clone","","",161,null],[11,"eq","","",163,null],[11,"ne","","",163,null],[11,"fmt","","",163,null],[11,"clone","","",163,null],[11,"eq","","",162,null],[11,"fmt","","",162,null],[11,"clone","","",162,null],[11,"styled","","Build a rectangle with the dimensions and style.",161,{"inputs":[{"name":"dimensions"},{"name":"style"}],"output":{"name":"self"}}],[11,"fill","","Build a new filled rectangle.",161,{"inputs":[{"name":"dimensions"}],"output":{"name":"self"}}],[11,"fill_with","","Build a new filled rectangle widget filled with the given color.",161,{"inputs":[{"name":"dimensions"},{"name":"color"}],"output":{"name":"self"}}],[11,"outline","","Build a new outlined rectangle widget.",161,{"inputs":[{"name":"dimensions"}],"output":{"name":"self"}}],[11,"outline_styled","","Build an outlined rectangle rather than a filled one.",161,{"inputs":[{"name":"dimensions"},{"name":"style"}],"output":{"name":"self"}}],[11,"common","","",161,null],[11,"common_mut","","",161,null],[11,"init_state","","",161,null],[11,"style","","",161,null],[11,"update","","Update the state of the Rectangle.",161,null],[11,"color","","",161,null],[11,"eq","conrod::widget::primitive::shape","",154,null],[11,"ne","","",154,null],[11,"fmt","","",154,null],[11,"clone","","",154,null],[11,"fill","","A default `Fill` style.",154,{"inputs":[],"output":{"name":"self"}}],[11,"fill_with","","A `Fill` style with some given `Color`.",154,{"inputs":[{"name":"color"}],"output":{"name":"self"}}],[11,"outline","","A default `Outline` style.",154,{"inputs":[],"output":{"name":"self"}}],[11,"outline_styled","","A default `Outline` style.",154,{"inputs":[{"name":"style"}],"output":{"name":"self"}}],[11,"color","","The style with some given Color.",154,null],[11,"set_color","","Set the color for the style.",154,null],[11,"get_color","","Get the color of the Rectangle.",154,null],[0,"text","conrod::widget::primitive","The primitive widget used for displaying text.",null,null],[3,"Text","conrod::widget::primitive::text","Displays some given text centred within a rectangular area.",null,null],[12,"common","","Data necessary and common for all widget builder types.",164,null],[12,"text","","The text to be drawn by the **Text**.",164,null],[12,"style","","Unique styling for the **Text**.",164,null],[3,"Style","","The styling for a **Text**'s graphics.",null,null],[12,"font_size","","The font size for the **Text**.",165,null],[12,"color","","The color of the **Text**.",165,null],[12,"maybe_wrap","","Whether or not the text should wrap around the width.",165,null],[12,"line_spacing","","The spacing between consecutive lines.",165,null],[12,"text_align","","Alignment of the text along the *x* axis.",165,null],[12,"font_id","","The id of the font to use for rendring and layout.",165,null],[3,"State","","The state to be stored between updates for the **Text**.",null,null],[12,"string","","An owned version of the string.",166,null],[12,"line_infos","","The indices and width for each line of text within the `string`.",166,null],[4,"Wrap","","The way in which text should wrap around the width.",null,null],[13,"Character","","Wrap at the first character that exceeds the width.",167,null],[13,"Whitespace","","Wrap at the first word that exceeds the width.",167,null],[11,"eq","","",165,null],[11,"ne","","",165,null],[11,"fmt","","",165,null],[11,"clone","","",165,null],[11,"new","","Construct the default `Style`, initialising all fields to `None`.",165,{"inputs":[],"output":{"name":"self"}}],[11,"font_size","","Retrieves the value from the `Style`.",165,null],[11,"color","","Retrieves the value from the `Style`.",165,null],[11,"maybe_wrap","","Retrieves the value from the `Style`.",165,null],[11,"line_spacing","","Retrieves the value from the `Style`.",165,null],[11,"text_align","","Retrieves the value from the `Style`.",165,null],[11,"font_id","","Retrieves the value from the `Style`.",165,null],[11,"eq","","",167,null],[11,"fmt","","",167,null],[11,"clone","","",167,null],[11,"eq","","",166,null],[11,"ne","","",166,null],[11,"fmt","","",166,null],[11,"clone","","",166,null],[11,"new","","Build a new **Text** widget.",164,{"inputs":[{"name":"str"}],"output":{"name":"self"}}],[11,"no_line_wrap","","Specify that the **Text** should not wrap lines around the width.",164,null],[11,"wrap_by_word","","Line wrap the **Text** at the beginning of the first word that exceeds the width.",164,null],[11,"wrap_by_character","","Line wrap the **Text** at the beginning of the first character that exceeds the width.",164,null],[11,"with_style","","Build the **Text** with the given **Style**.",164,null],[11,"align_text_left","","Align the text to the left of its bounding **Rect**'s *x* axis range.",164,null],[11,"align_text_middle","","Align the text to the middle of its bounding **Rect**'s *x* axis range.",164,null],[11,"align_text_right","","Align the text to the right of its bounding **Rect**'s *x* axis range.",164,null],[11,"font_size","","Build the type's self.$($assignee).+ with the given $Type.",164,null],[11,"align_text_to","","Build the type's self.$($assignee).+ with the given $Type.",164,null],[11,"line_spacing","","Build the type's self.$($assignee).+ with the given $Type.",164,null],[11,"common","","",164,null],[11,"common_mut","","",164,null],[11,"init_state","","",164,null],[11,"style","","",164,null],[11,"default_x_dimension","","If no specific width was given, we'll use the width of the widest line as a default.",164,null],[11,"default_y_dimension","","If no specific height was given, we'll use the total height of the text as a default.",164,null],[11,"update","","Update the state of the Text.",164,null],[11,"color","","",164,null],[0,"button","conrod::widget","The `Button` widget and related items.",null,null],[3,"Button","conrod::widget::button","A pressable button widget whose reaction is triggered upon release.",null,null],[12,"show","","Whether the `Button` is a `Flat` color or an `Image`.",168,null],[12,"style","","Unique styling parameters for the Button.",168,null],[3,"Style","","Unique styling for the Button.",null,null],[12,"color","","Color of the Button's pressable area.",169,null],[12,"border","","Width of the border surrounding the button",169,null],[12,"border_color","","The color of the border.",169,null],[12,"label_color","","The color of the Button's label.",169,null],[12,"label_font_size","","The font size of the Button's label.",169,null],[12,"label_x_align","","The label's alignment over the *x* axis.",169,null],[3,"Flat","","The `Button` simply displays a flat color.",null,null],[3,"Image","","The `Button` displays an `Image` on top.",null,null],[12,"index","","The index of the `Image` to be used.",170,null],[12,"color","","If `Some`, maps the image's luminance to this `Color`.",170,null],[12,"src_rect","","The rectangular area of the original source image that should be displayed.",170,null],[3,"State","","Represents the state of the Button widget.",null,null],[3,"TimesClicked","","The `Event` type yielded by the `Button` widget.",null,null],[12,"0","","",171,null],[4,"ImageColor","","The coloring of the `Image`.",null,null],[13,"Normal","","The image's luminance will be mapped to this color.",172,null],[13,"WithFeedback","","The image's luminance will be mapped to this color.",172,null],[13,"None","","The image's regular color will be used.",172,null],[8,"Show","","The style of the `Button`, either `Flat` or `Image`.",null,null],[11,"show","","Display the unique styling of the `Button`.",173,null],[11,"clone","","",168,null],[11,"eq","","",169,null],[11,"ne","","",169,null],[11,"fmt","","",169,null],[11,"clone","","",169,null],[11,"new","","Construct the default `Style`, initialising all fields to `None`.",169,{"inputs":[],"output":{"name":"self"}}],[11,"color","","Retrieves the value from the `Style`.",169,null],[11,"border","","Retrieves the value from the `Style`.",169,null],[11,"border_color","","Retrieves the value from the `Style`.",169,null],[11,"label_color","","Retrieves the value from the `Style`.",169,null],[11,"label_font_size","","Retrieves the value from the `Style`.",169,null],[11,"label_x_align","","Retrieves the value from the `Style`.",169,null],[11,"clone","","",174,null],[11,"clone","","",170,null],[11,"fmt","","",172,null],[11,"clone","","",172,null],[11,"eq","","",175,null],[11,"ne","","",175,null],[11,"fmt","","",175,null],[11,"clone","","",175,null],[11,"fmt","","",171,null],[11,"clone","","",171,null],[11,"was_clicked","","`true` if the `Button` was clicked one or more times.",171,null],[11,"next","","",171,null],[11,"image","","Begin building a button displaying the given `Image` on top.",168,{"inputs":[{"name":"i"}],"output":{"name":"self"}}],[11,"source_rectangle","","The rectangular area of the image that we wish to display.",168,null],[11,"image_color","","Map the `Image`'s luminance to the given color.",168,null],[11,"image_color_with_feedback","","Map the `Image`'s luminance to the given color.",168,null],[11,"new","","Begin building a flat-colored `Button` widget.",168,{"inputs":[],"output":{"name":"self"}}],[11,"align_label_left","","Align the label to the mid-left of the `Button`'s surface.",168,null],[11,"align_label_middle","","Align the label to the mid-left of the `Button`'s surface.",168,null],[11,"align_label_right","","Align the label to the mid-left of the `Button`'s surface.",168,null],[11,"enabled","","Build the type's self.$($assignee).+ with the given $Type.",168,null],[11,"common","","",168,null],[11,"common_mut","","",168,null],[11,"init_state","","",168,null],[11,"style","","",168,null],[11,"update","","Update the state of the Button.",168,null],[11,"color","","Build the type's self.$($assignee).+ with the given $Type.",168,null],[11,"border","","Build the type's self.$($assignee).+ with the given $Type.",168,null],[11,"border_color","","Build the type's self.$($assignee).+ with the given $Type.",168,null],[11,"label","","Build the type's self.$($assignee).+ with the given $Type.",168,null],[11,"label_color","","Build the type's self.$($assignee).+ with the given $Type.",168,null],[11,"label_font_size","","Build the type's self.$($assignee).+ with the given $Type.",168,null],[11,"show","","",170,null],[0,"canvas","conrod::widget","The `Canvas` widget and related items.",null,null],[3,"Canvas","conrod::widget::canvas","**Canvas** is designed to be a "container"-like "parent" widget that simplifies placement of\n"children" widgets.",null,null],[12,"common","","Data necessary and common for all widget builder types.",176,null],[12,"style","","The builder data related to the style of the Canvas.",176,null],[12,"maybe_title_bar_label","","The label for the **Canvas**' **TitleBar** if there is one.",176,null],[12,"maybe_splits","","A list of child **Canvas**ses as splits of this **Canvas** flowing in the given direction.",176,null],[3,"State","","**Canvas** state to be cached.",null,null],[3,"Style","","Unique styling for the Canvas.",null,null],[12,"color","","The color of the Canvas' rectangle surface.",177,null],[12,"border","","The width of the border surrounding the Canvas' rectangle.",177,null],[12,"border_color","","The color of the Canvas' border.",177,null],[12,"length","","If this Canvas is a split of some parent Canvas, this is the length of the split.",177,null],[12,"pad_left","","Padding for the left edge of the Canvas' kid area.",177,null],[12,"pad_right","","Padding for the right edge of the Canvas' kid area.",177,null],[12,"pad_bottom","","Padding for the bottom edge of the Canvas' kid area.",177,null],[12,"pad_top","","Padding for the top edge of the Canvas' kid area.",177,null],[12,"title_bar_color","","The color of the title bar. Defaults to the color of the Canvas.",177,null],[12,"title_bar_text_color","","The color of the title bar's text.",177,null],[12,"title_bar_font_size","","The font size for the title bar's text.",177,null],[12,"title_bar_maybe_wrap","","The way in which the title bar's text should wrap.",177,null],[12,"title_bar_line_spacing","","The distance between lines for multi-line title bar text.",177,null],[12,"title_bar_text_align","","The horizontal alignment of the title bar text.",177,null],[4,"Length","","Used to describe the desired length for a `Split`.",null,null],[13,"Absolute","","The length as an absolute scalar.",178,null],[13,"Weight","","The length as a weight of the non-absolute length of the parent **Canvas**.",178,null],[4,"Direction","","The direction in which a sequence of canvas splits will be laid out.",null,null],[13,"X","","Lay splits along the *x* axis.",179,null],[13,"Y","","Lay splits along the *y* axis.",179,null],[6,"ListOfSplits","","A series of **Canvas** splits along with their unique identifiers.",null,null],[6,"FlowOfSplits","","A series of **Canvas** splits flowing in the specified direction.",null,null],[6,"Weight","","The length of a `Split` given as a weight.",null,null],[11,"fmt","","",176,null],[11,"clone","","",176,null],[11,"eq","","",180,null],[11,"ne","","",180,null],[11,"fmt","","",180,null],[11,"clone","","",180,null],[11,"eq","","",177,null],[11,"ne","","",177,null],[11,"fmt","","",177,null],[11,"clone","","",177,null],[11,"new","","Construct the default `Style`, initialising all fields to `None`.",177,{"inputs":[],"output":{"name":"self"}}],[11,"color","","Retrieves the value from the `Style`.",177,null],[11,"border","","Retrieves the value from the `Style`.",177,null],[11,"border_color","","Retrieves the value from the `Style`.",177,null],[11,"length","","Retrieves the value from the `Style`.",177,null],[11,"pad_left","","Retrieves the value from the `Style`.",177,null],[11,"pad_right","","Retrieves the value from the `Style`.",177,null],[11,"pad_bottom","","Retrieves the value from the `Style`.",177,null],[11,"pad_top","","Retrieves the value from the `Style`.",177,null],[11,"title_bar_color","","Retrieves the value from the `Style`.",177,null],[11,"title_bar_text_color","","Retrieves the value from the `Style`.",177,null],[11,"title_bar_font_size","","Retrieves the value from the `Style`.",177,null],[11,"title_bar_maybe_wrap","","Retrieves the value from the `Style`.",177,null],[11,"title_bar_line_spacing","","Retrieves the value from the `Style`.",177,null],[11,"title_bar_text_align","","Retrieves the value from the `Style`.",177,null],[11,"eq","","",178,null],[11,"ne","","",178,null],[11,"fmt","","",178,null],[11,"clone","","",178,null],[11,"fmt","","",179,null],[11,"clone","","",179,null],[11,"new","","Construct a new Canvas builder.",176,{"inputs":[],"output":{"name":"self"}}],[11,"title_bar","","Build the type's self.$($assignee).+ with the given $Type.",176,null],[11,"pad_left","","Build the type's self.$($assignee).+ with the given $Type.",176,null],[11,"pad_right","","Build the type's self.$($assignee).+ with the given $Type.",176,null],[11,"pad_bottom","","Build the type's self.$($assignee).+ with the given $Type.",176,null],[11,"pad_top","","Build the type's self.$($assignee).+ with the given $Type.",176,null],[11,"with_style","","Build the type's self.$($assignee).+ with the given $Type.",176,null],[11,"length","","Set the length of the Split as an absolute scalar.",176,null],[11,"length_weight","","Set the length of the Split as a weight.",176,null],[11,"flow_right","","Set the child Canvasses flowing to the right.",176,null],[11,"flow_left","","Set the child Canvasses flowing to the left.",176,null],[11,"flow_up","","Set the child Canvasses flowing upwards.",176,null],[11,"flow_down","","Set the child Canvasses flowing downwards.",176,null],[11,"pad","","Set the padding for all edges of the area where child widgets will be placed.",176,null],[11,"padding","","Set the padding of the area where child widgets will be placed.",176,null],[11,"title_bar_color","","Set the color of the `Canvas`' `TitleBar` if it is visible.",176,null],[11,"common","","",176,null],[11,"common_mut","","",176,null],[11,"init_state","","",176,null],[11,"style","","",176,null],[11,"default_x_position","","",176,null],[11,"default_y_position","","",176,null],[11,"drag_area","","The title bar area at which the Canvas can be clicked and dragged.",176,null],[11,"kid_area","","The area of the widget below the title bar, upon which child widgets will be placed.",176,null],[11,"update","","Update the state of the Canvas.",176,null],[11,"padding","","Get the Padding for the Canvas' kid area.",177,null],[11,"color","","Build the type's self.$($assignee).+ with the given $Type.",176,null],[11,"border","","Build the type's self.$($assignee).+ with the given $Type.",176,null],[11,"border_color","","Build the type's self.$($assignee).+ with the given $Type.",176,null],[11,"label","","",176,null],[11,"label_color","","Build the type's self.$($assignee).+ with the given $Type.",176,null],[11,"label_font_size","","Build the type's self.$($assignee).+ with the given $Type.",176,null],[0,"drop_down_list","conrod::widget","The `DropDownList` and related items.",null,null],[3,"DropDownList","conrod::widget::drop_down_list","Displays a given `Vec<String>` as a selectable drop down menu.",null,null],[3,"Style","","Styling for the DropDownList, necessary for constructing its renderable Element.",null,null],[12,"color","","Color of the widget.",181,null],[12,"border","","Width of the widget's border.",181,null],[12,"border_color","","Color of the widget's border.",181,null],[12,"label_color","","Color of the item labels.",181,null],[12,"label_font_size","","Font size for the item labels.",181,null],[12,"label_x_align","","The label's alignment over the *x* axis.",181,null],[12,"maybe_max_visible_height","","Maximum height of the Open menu before the scrollbar appears.",181,null],[12,"scrollbar_position","","The position of the scrollbar in the case that the list is scrollable.",181,null],[12,"scrollbar_width","","The width of the scrollbar in the case that the list is scrollable.",181,null],[3,"State","","Represents the state of the DropDownList.",null,null],[4,"MaxHeight","","Representations of the max height of the visible area of the DropDownList.",null,null],[13,"Items","","Specify the max height as a number of items.",182,null],[13,"Scalar","","Specify the max height as an absolute scalar distance.",182,null],[6,"Idx","","The index of a selected item.",null,null],[6,"Len","","The number of items in a list.",null,null],[11,"eq","","",181,null],[11,"ne","","",181,null],[11,"fmt","","",181,null],[11,"clone","","",181,null],[11,"new","","Construct the default `Style`, initialising all fields to `None`.",181,{"inputs":[],"output":{"name":"self"}}],[11,"color","","Retrieves the value from the `Style`.",181,null],[11,"border","","Retrieves the value from the `Style`.",181,null],[11,"border_color","","Retrieves the value from the `Style`.",181,null],[11,"label_color","","Retrieves the value from the `Style`.",181,null],[11,"label_font_size","","Retrieves the value from the `Style`.",181,null],[11,"label_x_align","","Retrieves the value from the `Style`.",181,null],[11,"maybe_max_visible_height","","Retrieves the value from the `Style`.",181,null],[11,"scrollbar_position","","Retrieves the value from the `Style`.",181,null],[11,"scrollbar_width","","Retrieves the value from the `Style`.",181,null],[11,"fmt","","",183,null],[11,"clone","","",183,null],[11,"eq","","",183,null],[11,"ne","","",183,null],[11,"fmt","","",182,null],[11,"clone","","",182,null],[11,"eq","","",182,null],[11,"ne","","",182,null],[11,"new","","Construct a new DropDownList.",184,null],[11,"enabled","","Build the type's self.$($assignee).+ with the given $Type.",184,null],[11,"max_visible_items","","Set the maximum height of the DropDownList (before the scrollbar appears) as a number of\nitems.",184,null],[11,"max_visible_height","","Set the maximum height of the DropDownList (before the scrollbar appears) as a scalar\nheight.",184,null],[11,"scrollbar_next_to","","Specifies that the list should be scrollable and should provide a `Scrollbar` to the right\nof the items.",184,null],[11,"scrollbar_on_top","","Specifies that the list should be scrollable and should provide a `Scrollbar` that hovers\nabove the right edge of the items and automatically hides when the user is not scrolling.",184,null],[11,"no_scrollbar","","Even in the case that the list is scrollable, do not display a `Scrollbar`.",184,null],[11,"scrollbar_width","","Specify the width of the scrollbar.",184,null],[11,"common","","",184,null],[11,"common_mut","","",184,null],[11,"init_state","","",184,null],[11,"style","","",184,null],[11,"update","","Update the state of the DropDownList.",184,null],[11,"button_style","","Style for a `Button` given this `Style`'s current state.",181,null],[11,"color","","Build the type's self.$($assignee).+ with the given $Type.",184,null],[11,"border","","Build the type's self.$($assignee).+ with the given $Type.",184,null],[11,"border_color","","Build the type's self.$($assignee).+ with the given $Type.",184,null],[11,"label","","Build the type's self.$($assignee).+ with the given $Type.",184,null],[11,"label_color","","Build the type's self.$($assignee).+ with the given $Type.",184,null],[11,"label_font_size","","Build the type's self.$($assignee).+ with the given $Type.",184,null],[0,"list_select","conrod::widget","A wrapper around the `List` widget providing the ability to select one or more items.",null,null],[3,"ListSelect","conrod::widget::list_select","A wrapper around the `List` widget that handles single and multiple selection logic.",null,null],[3,"State","","Represents the state of the ListSelect.",null,null],[3,"Events","","An iterator-like type for yielding `ListSelect` `Event`s.",null,null],[3,"Single","","A single item selection `Mode` for the `ListSelect`.",null,null],[3,"Multiple","","A selection `Mode` for the `ListSelect` that allows selecting more than one item at a time.",null,null],[4,"Event","","The kind of events that the `ListSelect` may `react` to.\nProvides tuple(s) of index in list and string representation of selection",null,null],[13,"Item","","The next `Item` is ready for instantiation.",185,null],[13,"Selection","","A change in selection has occurred.",185,null],[13,"Press","","A button press occurred while the widget was capturing the mouse.",185,null],[13,"Release","","A button release occurred while the widget was capturing the mouse.",185,null],[13,"Click","","A click occurred while the widget was capturing the mouse.",185,null],[13,"DoubleClick","","A double click occurred while the widget was capturing the mouse.",185,null],[4,"Selection","","Represents some change in item selection for a `ListSelect` in `Multiple` mode.",null,null],[13,"Add","","Items which have been added to the selection.",186,null],[13,"Remove","","Items which have been removed from the selection.",186,null],[6,"PendingEvents","","Buffer use for storing events that have been produced but are yet to be yielded.",null,null],[8,"Mode","","Allows the `ListSelect` to be generic over `Single` and `Multiple` selection modes.",null,null],[16,"Selection","","The data associated with the `Mode`s `Event::Selection`.",187,null],[10,"click_selection","","Update the `PendingEvents` in accordance with the given `Click` event.",187,null],[10,"key_selection","","Update the `PendingEvents` in accordance with the given `KeyPress` event.",187,null],[11,"clone","","",188,null],[11,"fmt","","",189,null],[11,"clone","","",189,null],[11,"eq","","",189,null],[11,"ne","","",189,null],[11,"fmt","","",185,null],[11,"clone","","",185,null],[11,"clone","","",190,null],[11,"clone","","",191,null],[11,"fmt","","",186,null],[11,"clone","","",186,null],[11,"update_bool_slice","","Update the given slice of `bool`s with this `Selection`.",186,null],[11,"update_index_set","","Update the given set of selected indices with this `Selection`.",186,null],[11,"single","","Construct a new ListSelect, allowing one selected item at a time.",188,{"inputs":[{"name":"usize"},{"name":"scalar"}],"output":{"name":"self"}}],[11,"multiple","","Construct a new ListSelect, allowing multiple selected items.",188,{"inputs":[{"name":"usize"},{"name":"scalar"}],"output":{"name":"self"}}],[11,"new","","Begin building a new `ListSelect` with the given mode.",188,{"inputs":[{"name":"usize"},{"name":"scalar"},{"name":"m"}],"output":{"name":"self"}}],[11,"scrollbar_next_to","","Specifies that the `List` should be scrollable and should provide a `Scrollbar` to the\nright of the items.",188,null],[11,"scrollbar_on_top","","Specifies that the `List` should be scrollable and should provide a `Scrollbar` that hovers\nabove the right edge of the items and automatically hides when the user is not scrolling.",188,null],[11,"scrollbar_width","","The width of the `Scrollbar`.",188,null],[11,"scrollbar_color","","The color of the `Scrollbar`.",188,null],[11,"instantiate_all_items","","Indicates that an `Item` should be instatiated for every element in the list, regardless of\nwhether or not the `Item` would be visible.",188,null],[11,"instantiate_only_visible_items","","Indicates that only `Item`s that are visible should be instantiated. This ensures that we\navoid bloating the widget graph with unnecessary nodes and in turn keep traversal times to\na minimum.",188,null],[11,"common","","",188,null],[11,"common_mut","","",188,null],[11,"init_state","","",188,null],[11,"style","","",188,null],[11,"update","","Update the state of the ListSelect.",188,null],[11,"next","","Yield the next `Event`.",192,null],[11,"click_selection","","",190,null],[11,"key_selection","","",190,null],[11,"click_selection","","",191,null],[11,"key_selection","","",191,null],[0,"envelope_editor","conrod::widget","The `EnvelopeEditor` widget and related items.",null,null],[3,"EnvelopeEditor","conrod::widget::envelope_editor","Used for editing a series of 2D Points on a cartesian (X, Y) plane within some given range.",null,null],[12,"skew_y_range","","The value skewing for the envelope's y-axis. This is useful for displaying exponential\nranges such as frequency.",193,null],[3,"Style","","Styling for the EnvelopeEditor, necessary for constructing its renderable Element.",null,null],[12,"color","","Coloring for the EnvelopeEditor's **BorderedRectangle**.",194,null],[12,"border","","Thickness of the **BorderedRectangle**'s border.",194,null],[12,"border_color","","Color of the border.",194,null],[12,"label_color","","Color of the label.",194,null],[12,"label_font_size","","The font size of the **EnvelopeEditor**'s label if one was given.",194,null],[12,"value_font_size","","The font size of the value label.",194,null],[12,"point_radius","","The radius of the envelope points.",194,null],[12,"line_thickness","","The thickness of the envelope lines.",194,null],[3,"State","","Represents the state of the EnvelopeEditor widget.",null,null],[4,"Event","","The kinds of events that may be yielded by the `EnvelopeEditor`.",null,null],[13,"AddPoint","","Insert a new point.",195,null],[12,"i","conrod::widget::envelope_editor::Event","The index at which the point should be inserted.",195,null],[12,"point","","The new point.",195,null],[13,"RemovePoint","conrod::widget::envelope_editor","Remove a point.",195,null],[12,"i","conrod::widget::envelope_editor::Event","The index of the point that should be removed.",195,null],[13,"MovePoint","conrod::widget::envelope_editor","Move a point.",195,null],[12,"i","conrod::widget::envelope_editor::Event","The index of the point that should be moved.",195,null],[12,"x","","The point's new *x* value.",195,null],[12,"y","","The point's new *y* value.",195,null],[8,"EnvelopePoint","conrod::widget::envelope_editor","`EnvPoint` must be implemented for any type that is used as a 2D point within the\nEnvelopeEditor.",null,null],[16,"X","","A value on the X-axis of the envelope.",196,null],[16,"Y","","A value on the Y-axis of the envelope.",196,null],[10,"get_x","","Return the X value.",196,null],[10,"get_y","","Return the Y value.",196,null],[10,"set_x","","Set the X value.",196,null],[10,"set_y","","Set the Y value.",196,null],[11,"get_curve","","Return the bezier curve depth (-1. to 1.) for the next interpolation.",196,null],[11,"set_curve","","Set the bezier curve depth (-1. to 1.) for the next interpolation.",196,null],[10,"new","","Create a new EnvPoint.",196,{"inputs":[{"name":"x"},{"name":"y"}],"output":{"name":"self"}}],[11,"eq","","",194,null],[11,"ne","","",194,null],[11,"fmt","","",194,null],[11,"clone","","",194,null],[11,"new","","Construct the default `Style`, initialising all fields to `None`.",194,{"inputs":[],"output":{"name":"self"}}],[11,"color","","Retrieves the value from the `Style`.",194,null],[11,"border","","Retrieves the value from the `Style`.",194,null],[11,"border_color","","Retrieves the value from the `Style`.",194,null],[11,"label_color","","Retrieves the value from the `Style`.",194,null],[11,"label_font_size","","Retrieves the value from the `Style`.",194,null],[11,"value_font_size","","Retrieves the value from the `Style`.",194,null],[11,"point_radius","","Retrieves the value from the `Style`.",194,null],[11,"line_thickness","","Retrieves the value from the `Style`.",194,null],[11,"eq","","",197,null],[11,"ne","","",197,null],[11,"fmt","","",197,null],[11,"clone","","",197,null],[11,"new","","Construct an EnvelopeEditor widget.",193,null],[11,"point_radius","","Build the type's self.$($assignee).+ with the given $Type.",193,null],[11,"line_thickness","","Build the type's self.$($assignee).+ with the given $Type.",193,null],[11,"value_font_size","","Build the type's self.$($assignee).+ with the given $Type.",193,null],[11,"skew_y","","Build the type's self.$($assignee).+ with the given $Type.",193,null],[11,"enabled","","Build the type's self.$($assignee).+ with the given $Type.",193,null],[11,"fmt","","",195,null],[11,"clone","","",195,null],[11,"update","","Update the given `envelope` in accordance with the `Event`.",195,null],[11,"common","","",193,null],[11,"common_mut","","",193,null],[11,"init_state","","",193,null],[11,"style","","",193,null],[11,"update","","Update the `EnvelopeEditor` in accordance to the latest input and call the given `react`\nfunction if necessary.",193,null],[11,"color","","Build the type's self.$($assignee).+ with the given $Type.",193,null],[11,"border","","Build the type's self.$($assignee).+ with the given $Type.",193,null],[11,"border_color","","Build the type's self.$($assignee).+ with the given $Type.",193,null],[11,"label","","Build the type's self.$($assignee).+ with the given $Type.",193,null],[11,"label_color","","Build the type's self.$($assignee).+ with the given $Type.",193,null],[11,"label_font_size","","Build the type's self.$($assignee).+ with the given $Type.",193,null],[0,"file_navigator","conrod::widget","A widget for navigating through through a file system. Generally inspired by Finder.",null,null],[3,"FileNavigator","conrod::widget::file_navigator","A widget for navigating and interacting with a file system.",null,null],[12,"style","","Unique styling for the widget.",198,null],[12,"starting_directory","","The first directory shown for the `FileNavigator`.",198,null],[12,"types","","Only display files of the given type.",198,null],[3,"State","","Unique state stored within the widget graph for each `FileNavigator`.",null,null],[3,"Directory","","Represents the state for a single directory.",null,null],[3,"Style","","Unique styling for the widget.",null,null],[12,"color","","Color of the selected entries.",199,null],[12,"unselected_color","","The color of the unselected entries.",199,null],[12,"text_color","","The color of the directory and file names.",199,null],[12,"font_size","","The font size for the directory and file names.",199,null],[12,"column_width","","The default width of a single directory view.",199,null],[12,"resize_handle_width","","The width of the bar that separates each directory in the stack and allows for\nre-sizing.",199,null],[4,"Types","","A type for specifying the types of files to be shown by a `FileNavigator`.",null,null],[13,"All","","Indicates that files of all types should be shown.",200,null],[13,"WithExtension","","A list of types of files that are accepted by the `FileNavigator`.",200,null],[4,"Event","","The kinds of events that the `FileNavigator` may produce.",null,null],[13,"ChangeDirectory","","The directory at the top of the stack has changed.",201,null],[13,"ChangeSelection","","The selection of files in the top of the stack has changed.",201,null],[13,"Click","","A `Click` event occurred over a selection of entries.",201,null],[13,"DoubleClick","","A file was double clicked.",201,null],[13,"Press","","A `Press` event occurred over a selection of entries.",201,null],[13,"Release","","A `Release` event occurred over a selection of entries.",201,null],[0,"directory_view","","Lists the contents of a single directory.",null,null],[3,"DirectoryView","conrod::widget::file_navigator::directory_view","For viewing, selecting, double-clicking, etc the contents of a directory.",null,null],[12,"style","","Unique styling for the widget.",202,null],[12,"directory","","The path of the directory to display.",202,null],[12,"types","","Only display files of the given type.",202,null],[3,"State","","Unique state stored within the widget graph for each `FileNavigator`.",null,null],[3,"Entry","","Data stored for each `File` in the `State`.",null,null],[3,"Style","","Unique styling for the widget.",null,null],[12,"color","","Color of the selected entries.",203,null],[12,"unselected_color","","The color of the unselected entries.",203,null],[12,"text_color","","The color of the directory and file names.",203,null],[12,"font_size","","The font size for the directory and file names.",203,null],[4,"Event","","The kinds of `Event`s produced by the `DirectoryView`.",null,null],[13,"Selection","","Some change in the `Selection` occurred. This represents the new full selection.",204,null],[13,"Click","","One or more entries have been double clicked.",204,null],[13,"DoubleClick","","One or more entries have been double clicked.",204,null],[13,"Press","","A `Press` event occurred while the given entries were selected.",204,null],[13,"Release","","A `Release` event occurred while the given entries were selected.",204,null],[11,"eq","","",205,null],[11,"ne","","",205,null],[11,"fmt","","",205,null],[11,"eq","","",206,null],[11,"ne","","",206,null],[11,"fmt","","",206,null],[11,"clone","","",206,null],[11,"eq","","",203,null],[11,"ne","","",203,null],[11,"fmt","","",203,null],[11,"clone","","",203,null],[11,"new","","Construct the default `Style`, initialising all fields to `None`.",203,{"inputs":[],"output":{"name":"self"}}],[11,"color","","Retrieves the value from the `Style`.",203,null],[11,"unselected_color","","Retrieves the value from the `Style`.",203,null],[11,"text_color","","Retrieves the value from the `Style`.",203,null],[11,"font_size","","Retrieves the value from the `Style`.",203,null],[11,"clone","","",204,null],[11,"new","","Begin building a `DirectoryNavigator` widget that displays only files of the given types.",202,{"inputs":[{"name":"path"},{"name":"types"}],"output":{"name":"self"}}],[11,"unselected_color","","The color of the unselected entries within each `DirectoryView`.",202,null],[11,"text_color","","The color of the `Text` used to display the file names.",202,null],[11,"show_hidden_files","","Whether to show hidden files and directories",202,null],[11,"font_size","","Build the type's self.$($assignee).+ with the given $Type.",202,null],[11,"common","","",202,null],[11,"common_mut","","",202,null],[11,"init_state","","",202,null],[11,"style","","",202,null],[11,"update","","",202,null],[11,"color","","Build the type's self.$($assignee).+ with the given $Type.",202,null],[11,"clone","conrod::widget::file_navigator","",200,null],[11,"eq","","",207,null],[11,"ne","","",207,null],[11,"fmt","","",207,null],[11,"eq","","",208,null],[11,"ne","","",208,null],[11,"fmt","","",208,null],[11,"eq","","",199,null],[11,"ne","","",199,null],[11,"fmt","","",199,null],[11,"clone","","",199,null],[11,"new","","Construct the default `Style`, initialising all fields to `None`.",199,{"inputs":[],"output":{"name":"self"}}],[11,"color","","Retrieves the value from the `Style`.",199,null],[11,"unselected_color","","Retrieves the value from the `Style`.",199,null],[11,"text_color","","Retrieves the value from the `Style`.",199,null],[11,"font_size","","Retrieves the value from the `Style`.",199,null],[11,"column_width","","Retrieves the value from the `Style`.",199,null],[11,"resize_handle_width","","Retrieves the value from the `Style`.",199,null],[11,"fmt","","",201,null],[11,"clone","","",201,null],[11,"new","","Begin building a `FileNavigator` widget that displays only files of the given types.",198,{"inputs":[{"name":"path"},{"name":"types"}],"output":{"name":"self"}}],[11,"all","","Begin building a `FileNavigator` that will display all file types.",198,{"inputs":[{"name":"path"}],"output":{"name":"self"}}],[11,"with_extension","","Begin building a `FileNavigator` that will only display files whose extensions match one\nof those within the given extension list.",198,null],[11,"unselected_color","","The color of the unselected entries within each `DirectoryView`.",198,null],[11,"text_color","","The color of the `Text` used to display the file names.",198,null],[11,"show_hidden_files","","Whether to show hidden files and directories.",198,null],[11,"font_size","","Build the type's self.$($assignee).+ with the given $Type.",198,null],[11,"common","","",198,null],[11,"common_mut","","",198,null],[11,"init_state","","",198,null],[11,"style","","",198,null],[11,"update","","Update the state of the Button.",198,null],[11,"color","","Build the type's self.$($assignee).+ with the given $Type.",198,null],[0,"bordered_rectangle","conrod::widget","The `BorderedRectangle` widget and related items.",null,null],[3,"BorderedRectangle","conrod::widget::bordered_rectangle","A filled rectangle widget that may or may not have some border.",null,null],[12,"common","","Data necessary and common for all widget builder types.",209,null],[12,"style","","Unique styling for the **BorderedRectangle**.",209,null],[3,"State","","Unique state for the `BorderedRectangle`.",null,null],[3,"Style","","Unique styling for the **BorderedRectangle** widget.",null,null],[12,"color","","Shape styling for the inner rectangle.",210,null],[12,"border","","The thickness of the border.",210,null],[12,"border_color","","The color of the border.",210,null],[11,"fmt","","",209,null],[11,"clone","","",209,null],[11,"eq","","",211,null],[11,"ne","","",211,null],[11,"fmt","","",211,null],[11,"clone","","",211,null],[11,"eq","","",210,null],[11,"ne","","",210,null],[11,"fmt","","",210,null],[11,"clone","","",210,null],[11,"new","","Construct the default `Style`, initialising all fields to `None`.",210,{"inputs":[],"output":{"name":"self"}}],[11,"color","","Retrieves the value from the `Style`.",210,null],[11,"border","","Retrieves the value from the `Style`.",210,null],[11,"border_color","","Retrieves the value from the `Style`.",210,null],[11,"new","","Build a new **BorderedRectangle**.",209,{"inputs":[{"name":"dimensions"}],"output":{"name":"self"}}],[11,"with_style","","Build the type's self.$($assignee).+ with the given $Type.",209,null],[11,"common","","",209,null],[11,"common_mut","","",209,null],[11,"init_state","","",209,null],[11,"style","","",209,null],[11,"update","","Update the state of the Rectangle.",209,null],[11,"color","","Build the type's self.$($assignee).+ with the given $Type.",209,null],[11,"border","","Build the type's self.$($assignee).+ with the given $Type.",209,null],[11,"border_color","","Build the type's self.$($assignee).+ with the given $Type.",209,null],[0,"list","conrod::widget","A helper widget, useful for instantiating a sequence of widgets in a vertical list.",null,null],[3,"List","conrod::widget::list","A helper widget, useful for instantiating a sequence of widgets in a vertical list.",null,null],[12,"common","","Common widget building params for the `List`.",212,null],[12,"style","","Unique styling for the `List`.",212,null],[12,"item_instantiation","","Whether all or only visible items should be instantiated.",212,null],[3,"Style","","Unique styling for the `List`.",null,null],[12,"scrollbar_width","","The width of the scrollbar if it is visible.",213,null],[12,"scrollbar_color","","The color of the scrollbar if it is visible.",213,null],[12,"scrollbar_position","","The location of the `List`'s scrollbar.",213,null],[3,"State","","Represents the state of the List widget.",null,null],[3,"Item","","The data necessary for instantiating a single item within a `List`.",null,null],[12,"i","","The index of the item within the list.",214,null],[12,"widget_idx","","The index generated for the widget.",214,null],[12,"last_idx","","The index used for the previous item's widget.",214,null],[12,"w","","The width of the item.",214,null],[12,"h","","The height of the item.",214,null],[3,"Scrollbar","","A wrapper around a `List`'s `Scrollbar` and its `NodeIndex`.",null,null],[3,"Items","","An `Iterator` yielding each `Item` in the list.",null,null],[4,"ItemInstantiation","","The way in which a `List` should instantiate its `Item`s.",null,null],[13,"All","","Instantiate an `Item` for every element, regardless of visibility.",215,null],[13,"OnlyVisible","","Only instantiate visible `Item`s.",215,null],[4,"ScrollbarPosition","","If the `List` is scrollable, this describes how th `Scrollbar` should be positioned.",null,null],[13,"NextTo","","To the right of the items (reduces the item width to fit).",216,null],[13,"OnTop","","On top of the right edge of the items with auto_hide activated.",216,null],[11,"clone","","",212,null],[11,"eq","","",213,null],[11,"ne","","",213,null],[11,"fmt","","",213,null],[11,"clone","","",213,null],[11,"new","","Construct the default `Style`, initialising all fields to `None`.",213,{"inputs":[],"output":{"name":"self"}}],[11,"scrollbar_width","","Retrieves the value from the `Style`.",213,null],[11,"scrollbar_color","","Retrieves the value from the `Style`.",213,null],[11,"scrollbar_position","","Retrieves the value from the `Style`.",213,null],[11,"eq","","",217,null],[11,"ne","","",217,null],[11,"fmt","","",217,null],[11,"clone","","",217,null],[11,"fmt","","",214,null],[11,"clone","","",214,null],[11,"eq","","",215,null],[11,"fmt","","",215,null],[11,"clone","","",215,null],[11,"eq","","",216,null],[11,"fmt","","",216,null],[11,"clone","","",216,null],[11,"new","","Create a List context to be built upon.",212,{"inputs":[{"name":"usize"},{"name":"scalar"}],"output":{"name":"self"}}],[11,"scrollbar_next_to","","Specifies that the `List` should be scrollable and should provide a `Scrollbar` to the\nright of the items.",212,null],[11,"scrollbar_on_top","","Specifies that the `List` should be scrollable and should provide a `Scrollbar` that hovers\nabove the right edge of the items and automatically hides when the user is not scrolling.",212,null],[11,"scrollbar_width","","The width of the `Scrollbar`.",212,null],[11,"scrollbar_color","","The color of the `Scrollbar`.",212,null],[11,"instantiate_all_items","","Indicates that an `Item` should be instatiated for every element in the list, regardless of\nwhether or not the `Item` would be visible.",212,null],[11,"instantiate_only_visible_items","","Indicates that only `Item`s that are visible should be instantiated. This ensures that we\navoid bloating the widget graph with unnecessary nodes and in turn keep traversal times to\na minimum.",212,null],[11,"common","","",212,null],[11,"common_mut","","",212,null],[11,"init_state","","",212,null],[11,"style","","",212,null],[11,"update","","",212,null],[11,"next","","Yield the next `Item` in the list.",218,null],[11,"set","","Sets the given widget as the widget to use for the item.",214,null],[11,"set","","Set the `Scrollbar` within the given `Ui`.",219,null],[0,"matrix","conrod::widget","A helper widget for laying out child widgets in the form of a grid.",null,null],[3,"Matrix","conrod::widget::matrix","Draw a matrix of any rectangular widget type, where the matrix will provide a function with\nthe widget number, it's `rows` and `cols` position, the width and height for the widget and\nthe location at which the widget should be drawn.",null,null],[3,"State","","The state of the Matrix, to be cached within the `Ui`'s widget `Graph`.",null,null],[3,"Style","","Unique styling for the `Matrix`.",null,null],[12,"cell_pad_w","","The width of the padding for each matrix element's "cell".",220,null],[12,"cell_pad_h","","The height of the padding for each matrix element's "cell".",220,null],[3,"Elements","","The event type yielded by the `Matrix`.",null,null],[3,"Element","","Data necessary for instantiating a widget for a single `Matrix` element.",null,null],[12,"widget_idx","","The index generated for the widget.",221,null],[12,"row","","The row number for the `Element`.",221,null],[12,"col","","The column number for the `Element`.",221,null],[12,"w","","The width of the element.",221,null],[12,"h","","The height of the element.",221,null],[12,"rel_x","","The *x* position of the element relative to the centre of the `Matrix`.",221,null],[12,"rel_y","","The *y* position of the element relative to the centre of the `Matrix`.",221,null],[6,"WidgetNum","","The number of the widget.",null,null],[6,"ColNum","","A column index.",null,null],[6,"RowNum","","A row index.",null,null],[6,"Width","","The width of an element.",null,null],[6,"Height","","The height of an element.",null,null],[6,"PosX","","The position of an element along the *x* axis.",null,null],[6,"PosY","","The position of an element along the *y* axis.",null,null],[11,"clone","","",222,null],[11,"eq","","",223,null],[11,"ne","","",223,null],[11,"fmt","","",223,null],[11,"clone","","",223,null],[11,"eq","","",220,null],[11,"ne","","",220,null],[11,"fmt","","",220,null],[11,"clone","","",220,null],[11,"new","","Construct the default `Style`, initialising all fields to `None`.",220,{"inputs":[],"output":{"name":"self"}}],[11,"cell_pad_w","","Retrieves the value from the `Style`.",220,null],[11,"cell_pad_h","","Retrieves the value from the `Style`.",220,null],[11,"fmt","","",224,null],[11,"fmt","","",221,null],[11,"clone","","",221,null],[11,"new","","Create a widget matrix context.",222,{"inputs":[{"name":"usize"},{"name":"usize"}],"output":{"name":"self"}}],[11,"cell_padding","","A builder method for adding padding to the cell.",222,null],[11,"common","","",222,null],[11,"common_mut","","",222,null],[11,"init_state","","",222,null],[11,"style","","",222,null],[11,"update","","Update the state of the Matrix.",222,null],[11,"next","","Yield the next `Element`.",224,null],[11,"set","","Sets the given widget as the widget to use for the item.",221,null],[0,"number_dialer","conrod::widget","A widget for precision control over any base-10 digit within a given value.",null,null],[3,"NumberDialer","conrod::widget::number_dialer","A widget for precision control over any digit within a value.",null,null],[3,"Style","","Unique graphical styling for the NumberDialer.",null,null],[12,"color","","Color of the NumberDialer's rectangle.",225,null],[12,"border","","The color of the rectangle border.",225,null],[12,"border_color","","The color of the rectangle border.",225,null],[12,"label_color","","The color of the NumberDialer's label.",225,null],[12,"label_font_size","","The font size for the NumberDialer's label.",225,null],[12,"font_id","","The `Id` associated with the font to use for the `NumberDialer` values.",225,null],[3,"State","","The state of the NumberDialer.",null,null],[3,"GlyphSlot","","Each digit in the adjustable value has its own **Rectangle** and **Text** widgets.",null,null],[11,"eq","","",225,null],[11,"ne","","",225,null],[11,"fmt","","",225,null],[11,"clone","","",225,null],[11,"new","","Construct the default `Style`, initialising all fields to `None`.",225,{"inputs":[],"output":{"name":"self"}}],[11,"color","","Retrieves the value from the `Style`.",225,null],[11,"border","","Retrieves the value from the `Style`.",225,null],[11,"border_color","","Retrieves the value from the `Style`.",225,null],[11,"label_color","","Retrieves the value from the `Style`.",225,null],[11,"label_font_size","","Retrieves the value from the `Style`.",225,null],[11,"font_id","","Retrieves the value from the `Style`.",225,null],[11,"eq","","",226,null],[11,"ne","","",226,null],[11,"fmt","","",226,null],[11,"clone","","",226,null],[11,"eq","","",227,null],[11,"ne","","",227,null],[11,"fmt","","",227,null],[11,"clone","","",227,null],[11,"new","","Construct a new NumberDialer widget.",228,{"inputs":[{"name":"t"},{"name":"t"},{"name":"t"},{"name":"u8"}],"output":{"name":"self"}}],[11,"enabled","","Build the type's self.$($assignee).+ with the given $Type.",228,null],[11,"common","","",228,null],[11,"common_mut","","",228,null],[11,"init_state","","",228,null],[11,"style","","",228,null],[11,"update","","Update the state of the NumberDialer.",228,null],[11,"color","","Build the type's self.$($assignee).+ with the given $Type.",228,null],[11,"border","","Build the type's self.$($assignee).+ with the given $Type.",228,null],[11,"border_color","","Build the type's self.$($assignee).+ with the given $Type.",228,null],[11,"label","","Build the type's self.$($assignee).+ with the given $Type.",228,null],[11,"label_color","","Build the type's self.$($assignee).+ with the given $Type.",228,null],[11,"label_font_size","","Build the type's self.$($assignee).+ with the given $Type.",228,null],[0,"plot_path","conrod::widget","A widget for plotting a series of lines using the given function *x -> y*.",null,null],[3,"PlotPath","conrod::widget::plot_path","A widget that plots a series of lines using the given function *x -> y*.",null,null],[3,"Style","","Unique styling parameters for the `PlotPath` widget.",null,null],[12,"thickness","","The thickness of the plotted line.",229,null],[12,"color","","The color of the line.",229,null],[3,"State","","Unique state stored between updates for the `PlotPath` widget.",null,null],[11,"eq","","",229,null],[11,"ne","","",229,null],[11,"fmt","","",229,null],[11,"clone","","",229,null],[11,"new","","Construct the default `Style`, initialising all fields to `None`.",229,{"inputs":[],"output":{"name":"self"}}],[11,"thickness","","Retrieves the value from the `Style`.",229,null],[11,"color","","Retrieves the value from the `Style`.",229,null],[11,"eq","","",230,null],[11,"ne","","",230,null],[11,"fmt","","",230,null],[11,"new","","Begin building a new `PlotPath` widget instance.",231,{"inputs":[{"name":"x"},{"name":"x"},{"name":"y"},{"name":"y"},{"name":"f"}],"output":{"name":"self"}}],[11,"common","","",231,null],[11,"common_mut","","",231,null],[11,"init_state","","",231,null],[11,"style","","",231,null],[11,"update","","Update the state of the PlotPath.",231,null],[11,"color","","Build the type's self.$($assignee).+ with the given $Type.",231,null],[0,"range_slider","conrod::widget","A widget for specifying start and end values for some linear range.",null,null],[3,"RangeSlider","conrod::widget::range_slider","Linear range selection.",null,null],[3,"Style","","Graphical styling unique to the RangeSlider widget.",null,null],[12,"color","","The color of the slidable rectangle.",232,null],[12,"border","","The length of the border around the edges of the slidable rectangle.",232,null],[12,"border_color","","The color of the Slider's border.",232,null],[12,"label_color","","The color of the Slider's label.",232,null],[12,"label_font_size","","The font-size for the Slider's label.",232,null],[3,"State","","Represents the state of the Slider widget.",null,null],[3,"Event","","The `Event` type produced by the `RangeSlider`.",null,null],[4,"Drag","","The part of the `RangeSlider` that is in the process of being dragged.",null,null],[13,"Edge","","One of the edges is being dragged.",233,null],[13,"Handle","","The whole range is being dragged.",233,null],[4,"Edge","","Either the `Start` or `End` `Edge` of the `RangeSlider`'s bar.",null,null],[13,"Start","","The start edge of the scrollbar handle.",234,null],[13,"End","","The end edge of the scrollbar handle.",234,null],[11,"eq","","",232,null],[11,"ne","","",232,null],[11,"fmt","","",232,null],[11,"clone","","",232,null],[11,"new","","Construct the default `Style`, initialising all fields to `None`.",232,{"inputs":[],"output":{"name":"self"}}],[11,"color","","Retrieves the value from the `Style`.",232,null],[11,"border","","Retrieves the value from the `Style`.",232,null],[11,"border_color","","Retrieves the value from the `Style`.",232,null],[11,"label_color","","Retrieves the value from the `Style`.",232,null],[11,"label_font_size","","Retrieves the value from the `Style`.",232,null],[11,"eq","","",235,null],[11,"ne","","",235,null],[11,"fmt","","",235,null],[11,"clone","","",235,null],[11,"eq","","",233,null],[11,"ne","","",233,null],[11,"fmt","","",233,null],[11,"clone","","",233,null],[11,"eq","","",234,null],[11,"fmt","","",234,null],[11,"clone","","",234,null],[11,"clone","","",236,null],[11,"next","","",236,null],[11,"new","","Construct a new RangeSlider widget.",237,{"inputs":[{"name":"t"},{"name":"t"},{"name":"t"},{"name":"t"}],"output":{"name":"self"}}],[11,"common","","",237,null],[11,"common_mut","","",237,null],[11,"init_state","","",237,null],[11,"style","","",237,null],[11,"kid_area","","",237,null],[11,"update","","Update the state of the Slider.",237,null],[11,"color","","Build the type's self.$($assignee).+ with the given $Type.",237,null],[11,"border","","Build the type's self.$($assignee).+ with the given $Type.",237,null],[11,"border_color","","Build the type's self.$($assignee).+ with the given $Type.",237,null],[11,"label","","Build the type's self.$($assignee).+ with the given $Type.",237,null],[11,"label_color","","Build the type's self.$($assignee).+ with the given $Type.",237,null],[11,"label_font_size","","Build the type's self.$($assignee).+ with the given $Type.",237,null],[0,"scrollbar","conrod::widget","A widget that allows for manually scrolling via dragging the mouse.",null,null],[3,"Scrollbar","conrod::widget::scrollbar","A widget that allows for scrolling via dragging the mouse.",null,null],[3,"Style","","Styling for the DropDownList, necessary for constructing its renderable Element.",null,null],[12,"color","","Color of the widget.",238,null],[12,"thickness","","The "thickness" of the scrollbar's track and handle `Rect`s.",238,null],[12,"auto_hide","","When true, the `Scrollbar` will only be visible when:",238,null],[3,"State","","The state of the `Scrollbar`.",null,null],[8,"Axis","","The axis that is scrolled by the `Scrollbar`.",null,null],[10,"track_rect","","The `Rect` for a scroll "track" with the given `thickness` for a container with the given\n`Rect`.",239,{"inputs":[{"name":"rect"},{"name":"scalar"}],"output":{"name":"rect"}}],[10,"handle_rect","","The `Rect` for a scroll handle given both `Range`s.",239,{"inputs":[{"name":"range"},{"name":"range"}],"output":{"name":"rect"}}],[10,"scroll_state","","Retrieve the related `scroll::State` for the axis from a given widget container.",239,{"inputs":[{"name":"container"}],"output":{"name":"option"}}],[10,"default_x_dimension","","Determine a default *x* dimension for the scrollbar in the case that no specific width is\ngiven.",239,{"inputs":[{"name":"scrollbar"},{"name":"ui"}],"output":{"name":"dimension"}}],[10,"default_y_dimension","","Determine a default *y* dimension for the scrollbar in the case that no specific height is\ngiven.",239,{"inputs":[{"name":"scrollbar"},{"name":"ui"}],"output":{"name":"dimension"}}],[10,"to_2d","","Convert a given `Scalar` along the axis into two dimensions.",239,null],[11,"eq","","",238,null],[11,"ne","","",238,null],[11,"fmt","","",238,null],[11,"clone","","",238,null],[11,"new","","Construct the default `Style`, initialising all fields to `None`.",238,{"inputs":[],"output":{"name":"self"}}],[11,"color","","Retrieves the value from the `Style`.",238,null],[11,"thickness","","Retrieves the value from the `Style`.",238,null],[11,"auto_hide","","Retrieves the value from the `Style`.",238,null],[11,"fmt","","",240,null],[11,"clone","","",240,null],[11,"eq","","",240,null],[11,"ne","","",240,null],[11,"auto_hide","","By default, this is set to `false`.",241,null],[11,"thickness","","Build the widget with the given `thickness`.",241,null],[11,"x_axis","","Begin building a new scrollbar widget that scrolls along the *X* axis along the range of\nthe scrollable widget at the given index.",241,{"inputs":[{"name":"i"}],"output":{"name":"self"}}],[11,"y_axis","","Begin building a new scrollbar widget that scrolls along the *Y* axis along the range of\nthe scrollable widget at the given index.",241,{"inputs":[{"name":"i"}],"output":{"name":"self"}}],[11,"common","","",241,null],[11,"common_mut","","",241,null],[11,"init_state","","",241,null],[11,"style","","",241,null],[11,"default_x_dimension","","",241,null],[11,"default_y_dimension","","",241,null],[11,"update","","",241,null],[11,"track_rect","conrod::widget::scroll","",142,{"inputs":[{"name":"rect"},{"name":"scalar"}],"output":{"name":"rect"}}],[11,"handle_rect","","",142,{"inputs":[{"name":"range"},{"name":"range"}],"output":{"name":"rect"}}],[11,"scroll_state","","",142,{"inputs":[{"name":"container"}],"output":{"name":"option"}}],[11,"default_x_dimension","","",142,{"inputs":[{"name":"scrollbar"},{"name":"ui"}],"output":{"name":"dimension"}}],[11,"default_y_dimension","","",142,{"inputs":[{"name":"scrollbar"},{"name":"ui"}],"output":{"name":"dimension"}}],[11,"to_2d","","",142,null],[11,"track_rect","","",143,{"inputs":[{"name":"rect"},{"name":"scalar"}],"output":{"name":"rect"}}],[11,"handle_rect","","",143,{"inputs":[{"name":"range"},{"name":"range"}],"output":{"name":"rect"}}],[11,"scroll_state","","",143,{"inputs":[{"name":"container"}],"output":{"name":"option"}}],[11,"default_x_dimension","","",143,{"inputs":[{"name":"scrollbar"},{"name":"ui"}],"output":{"name":"dimension"}}],[11,"default_y_dimension","","",143,{"inputs":[{"name":"scrollbar"},{"name":"ui"}],"output":{"name":"dimension"}}],[11,"to_2d","","",143,null],[11,"color","conrod::widget::scrollbar","Build the type's self.$($assignee).+ with the given $Type.",241,null],[0,"slider","conrod::widget","A widget for selecting a single value along some linear range.",null,null],[3,"Slider","conrod::widget::slider","Linear value selection.",null,null],[12,"skew","","The amount in which the slider's display should be skewed.",242,null],[12,"enabled","","Whether or not user input is enabled for the Slider.",242,null],[3,"Style","","Graphical styling unique to the Slider widget.",null,null],[12,"color","","The color of the slidable rectangle.",243,null],[12,"border","","The length of the border around the edges of the slidable rectangle.",243,null],[12,"border_color","","The color of the Slider's border.",243,null],[12,"label_color","","The color of the Slider's label.",243,null],[12,"label_font_size","","The font-size for the Slider's label.",243,null],[3,"State","","Represents the state of the Slider widget.",null,null],[11,"eq","","",243,null],[11,"ne","","",243,null],[11,"fmt","","",243,null],[11,"clone","","",243,null],[11,"new","","Construct the default `Style`, initialising all fields to `None`.",243,{"inputs":[],"output":{"name":"self"}}],[11,"color","","Retrieves the value from the `Style`.",243,null],[11,"border","","Retrieves the value from the `Style`.",243,null],[11,"border_color","","Retrieves the value from the `Style`.",243,null],[11,"label_color","","Retrieves the value from the `Style`.",243,null],[11,"label_font_size","","Retrieves the value from the `Style`.",243,null],[11,"eq","","",244,null],[11,"ne","","",244,null],[11,"fmt","","",244,null],[11,"clone","","",244,null],[11,"new","","Construct a new Slider widget.",242,{"inputs":[{"name":"t"},{"name":"t"},{"name":"t"}],"output":{"name":"self"}}],[11,"skew","","Build the type's self.$($assignee).+ with the given $Type.",242,null],[11,"enabled","","Build the type's self.$($assignee).+ with the given $Type.",242,null],[11,"common","","",242,null],[11,"common_mut","","",242,null],[11,"init_state","","",242,null],[11,"style","","",242,null],[11,"kid_area","","",242,null],[11,"update","","Update the state of the Slider.",242,null],[11,"color","","Build the type's self.$($assignee).+ with the given $Type.",242,null],[11,"border","","Build the type's self.$($assignee).+ with the given $Type.",242,null],[11,"border_color","","Build the type's self.$($assignee).+ with the given $Type.",242,null],[11,"label","","Build the type's self.$($assignee).+ with the given $Type.",242,null],[11,"label_color","","Build the type's self.$($assignee).+ with the given $Type.",242,null],[11,"label_font_size","","Build the type's self.$($assignee).+ with the given $Type.",242,null],[0,"tabs","conrod::widget","A wrapper around a list of `Canvas`ses that displays them as a list of selectable tabs.",null,null],[3,"Tabs","conrod::widget::tabs","A wrapper around a list of `Canvas`ses that displays them as a list of selectable tabs.",null,null],[3,"State","","The state to be cached within the Canvas.",null,null],[3,"Tab","","A single **Tab** in the list owned by the **Tabs** **State**.",null,null],[3,"Style","","Unique styling for the `Tabs` widget.",null,null],[12,"layout","","Layout for the tab selection bar.",245,null],[12,"bar_thickness","","The thickness of the tab selection bar (width for vertical, height for horizontal).",245,null],[12,"label_color","","Color of the number dialer's label.",245,null],[12,"label_font_size","","Font size of the number dialer's label.",245,null],[12,"font_id","","The `font::Id` of the number dialer's font.",245,null],[12,"canvas","","The styling for each `Canvas`.",245,null],[3,"TabRects","","An iterator yielding the **Rect** for each Tab in the given list.",null,null],[4,"Layout","","The direction in which the tabs will be laid out.",null,null],[13,"Horizontal","","Tabs will be laid out horizontally (left to right).",246,null],[13,"Vertical","","Tabs will be laid out vertically (top to bottom).",246,null],[11,"eq","","",247,null],[11,"ne","","",247,null],[11,"fmt","","",247,null],[11,"clone","","",247,null],[11,"eq","","",248,null],[11,"ne","","",248,null],[11,"fmt","","",248,null],[11,"clone","","",248,null],[11,"eq","","",245,null],[11,"ne","","",245,null],[11,"fmt","","",245,null],[11,"clone","","",245,null],[11,"new","","Construct the default `Style`, initialising all fields to `None`.",245,{"inputs":[],"output":{"name":"self"}}],[11,"layout","","Retrieves the value from the `Style`.",245,null],[11,"bar_thickness","","Retrieves the value from the `Style`.",245,null],[11,"label_color","","Retrieves the value from the `Style`.",245,null],[11,"label_font_size","","Retrieves the value from the `Style`.",245,null],[11,"font_id","","Retrieves the value from the `Style`.",245,null],[11,"canvas","","Retrieves the value from the `Style`.",245,null],[11,"eq","","",246,null],[11,"fmt","","",246,null],[11,"clone","","",246,null],[11,"new","","Construct some new Canvas Tabs.",249,null],[11,"starting_canvas","","Set the initially selected tab with a Canvas via its widget::Id.",249,null],[11,"pad","","Set the padding for all edges.",249,null],[11,"layout_horizontally","","Layout the tabs horizontally.",249,null],[11,"layout_vertically","","Layout the tabs vertically.",249,null],[11,"canvas_style","","Build the `Tabs` widget with the given styling for its `Canvas`ses.",249,null],[11,"pad_left","","If the `Tabs` has some `widget::canvas::Style`, assign the left padding.",249,null],[11,"pad_right","","If the `Tabs` has some `widget::canvas::Style`, assign the left padding.",249,null],[11,"pad_bottom","","If the `Tabs` has some `widget::canvas::Style`, assign the left padding.",249,null],[11,"pad_top","","If the `Tabs` has some `widget::canvas::Style`, assign the left padding.",249,null],[11,"bar_thickness","","The width of a vertical `Tabs` selection bar, or the height of a horizontal one.",249,null],[11,"starting_tab_idx","","Build the type's self.$($assignee).+ with the given $Type.",249,null],[11,"label_color","","Build the type's self.$($assignee).+ with the given $Type.",249,null],[11,"label_font_size","","Build the type's self.$($assignee).+ with the given $Type.",249,null],[11,"common","","",249,null],[11,"common_mut","","",249,null],[11,"init_state","","",249,null],[11,"style","","",249,null],[11,"kid_area","","The area on which child widgets will be placed when using the `Place` Positionable methods.",249,null],[11,"update","","Update the state of the Tabs.",249,null],[11,"color","","",249,null],[11,"border","","",249,null],[11,"border_color","","",249,null],[11,"new","","Construct a new **TabRects** iterator.",250,null],[11,"next_with_id_and_label","","Yield the next **Tab** **Rect**, along with the associated ID and label.",250,null],[0,"text_box","conrod::widget","A widget for displaying and mutating a one-line field of text.",null,null],[3,"TextBox","conrod::widget::text_box","A widget for displaying and mutating a small, one-line field of text, given by the user in the\nform of a `String`.",null,null],[3,"Style","","Unique graphical styling for the TextBox.",null,null],[12,"text_padding","","The length of the gap between the bounding rectangle's border and the edge of the text.",251,null],[12,"color","","Color of the rectangle behind the text.",251,null],[12,"border","","The width of the bounding `BorderedRectangle` border.",251,null],[12,"border_color","","The color of the `BorderedRecangle`'s border.",251,null],[12,"text_color","","The color of the `TextEdit` widget.",251,null],[12,"font_size","","The font size for the text.",251,null],[12,"x_align","","The horizontal alignment of the text.",251,null],[3,"State","","The `State` of the `TextBox` widget that will be cached within the `Ui`.",null,null],[4,"Event","","Events produced by the `TextBox`.",null,null],[13,"Update","","The `String` was updated.",252,null],[13,"Enter","","The `Return` or `Enter` key was pressed.",252,null],[11,"eq","","",251,null],[11,"ne","","",251,null],[11,"fmt","","",251,null],[11,"clone","","",251,null],[11,"new","","Construct the default `Style`, initialising all fields to `None`.",251,{"inputs":[],"output":{"name":"self"}}],[11,"text_padding","","Retrieves the value from the `Style`.",251,null],[11,"color","","Retrieves the value from the `Style`.",251,null],[11,"border","","Retrieves the value from the `Style`.",251,null],[11,"border_color","","Retrieves the value from the `Style`.",251,null],[11,"text_color","","Retrieves the value from the `Style`.",251,null],[11,"font_size","","Retrieves the value from the `Style`.",251,null],[11,"x_align","","Retrieves the value from the `Style`.",251,null],[11,"eq","","",253,null],[11,"ne","","",253,null],[11,"fmt","","",253,null],[11,"clone","","",253,null],[11,"new","","Construct a TextBox widget.",254,{"inputs":[{"name":"string"}],"output":{"name":"self"}}],[11,"align_text_left","","Align the text to the left of its bounding **Rect**'s *x* axis range.",254,null],[11,"align_text_middle","","Align the text to the middle of its bounding **Rect**'s *x* axis range.",254,null],[11,"align_text_right","","Align the text to the right of its bounding **Rect**'s *x* axis range.",254,null],[11,"text_color","","Build the type's self.$($assignee).+ with the given $Type.",254,null],[11,"font_size","","Build the type's self.$($assignee).+ with the given $Type.",254,null],[11,"x_align_text","","Build the type's self.$($assignee).+ with the given $Type.",254,null],[11,"pad_text","","Build the type's self.$($assignee).+ with the given $Type.",254,null],[11,"fmt","","",252,null],[11,"clone","","",252,null],[11,"common","","",254,null],[11,"common_mut","","",254,null],[11,"init_state","","",254,null],[11,"style","","",254,null],[11,"update","","Update the state of the TextEdit.",254,null],[11,"border","","Build the type's self.$($assignee).+ with the given $Type.",254,null],[11,"border_color","","Build the type's self.$($assignee).+ with the given $Type.",254,null],[11,"color","","Build the type's self.$($assignee).+ with the given $Type.",254,null],[0,"text_edit","conrod::widget","A widget for displaying and mutating multi-line text, given as a `String`.",null,null],[3,"TextEdit","conrod::widget::text_edit","A widget for displaying and mutating multi-line text, given as a `String`.",null,null],[3,"Style","","Unique graphical styling for the TextEdit.",null,null],[12,"color","","The color of the text (this includes cursor and selection color).",255,null],[12,"font_size","","The font size for the text.",255,null],[12,"x_align","","The horizontal alignment of the text.",255,null],[12,"y_align","","The vertical alignment of the text.",255,null],[12,"line_spacing","","The vertical space between each line of text.",255,null],[12,"line_wrap","","The way in which text is wrapped at the end of a line.",255,null],[12,"restrict_to_height","","Do not allow to enter text that would exceed the bounds of the `TextEdit`'s `Rect`.",255,null],[12,"font_id","","The font used for the `Text`.",255,null],[3,"State","","The State of the TextEdit widget that will be cached within the Ui.",null,null],[4,"Drag","","Track whether some sort of dragging is currently occurring.",null,null],[13,"Selecting","","The drag is currently selecting a range of text.",256,null],[13,"MoveSelection","","The drag is moving a selection of text.",256,null],[4,"Cursor","","The position of the `Cursor` over the text.",null,null],[13,"Idx","","The cursor is at the given character index.",257,null],[13,"Selection","","The cursor is a selection between these two indices.",257,null],[12,"start","conrod::widget::text_edit::Cursor","The `start` is always the "anchor" point.",257,null],[12,"end","","The `end` may be either greater or less than the `start`.",257,null],[11,"eq","conrod::widget::text_edit","",255,null],[11,"ne","","",255,null],[11,"fmt","","",255,null],[11,"clone","","",255,null],[11,"new","","Construct the default `Style`, initialising all fields to `None`.",255,{"inputs":[],"output":{"name":"self"}}],[11,"color","","Retrieves the value from the `Style`.",255,null],[11,"font_size","","Retrieves the value from the `Style`.",255,null],[11,"x_align","","Retrieves the value from the `Style`.",255,null],[11,"y_align","","Retrieves the value from the `Style`.",255,null],[11,"line_spacing","","Retrieves the value from the `Style`.",255,null],[11,"line_wrap","","Retrieves the value from the `Style`.",255,null],[11,"restrict_to_height","","Retrieves the value from the `Style`.",255,null],[11,"font_id","","Retrieves the value from the `Style`.",255,null],[11,"eq","","",258,null],[11,"ne","","",258,null],[11,"fmt","","",258,null],[11,"clone","","",258,null],[11,"eq","","",256,null],[11,"fmt","","",256,null],[11,"clone","","",256,null],[11,"eq","","",257,null],[11,"ne","","",257,null],[11,"fmt","","",257,null],[11,"clone","","",257,null],[11,"new","","Construct a TextEdit widget.",259,{"inputs":[{"name":"str"}],"output":{"name":"self"}}],[11,"wrap_by_whitespace","","The `TextEdit` will wrap text via the whitespace that precedes the first width-exceeding\ncharacter.",259,null],[11,"wrap_by_character","","By default, the `TextEdit` will wrap text via the whitespace that precedes the first\nwidth-exceeding character.",259,null],[11,"align_text_left","","Align the text to the left of its bounding **Rect**'s *x* axis range.",259,null],[11,"align_text_x_middle","","Align the text to the middle of its bounding **Rect**'s *x* axis range.",259,null],[11,"align_text_right","","Align the text to the right of its bounding **Rect**'s *x* axis range.",259,null],[11,"align_text_bottom","","Align the text to the left of its bounding **Rect**'s *y* axis range.",259,null],[11,"align_text_y_middle","","Align the text to the middle of its bounding **Rect**'s *y* axis range.",259,null],[11,"align_text_top","","Align the text to the right of its bounding **Rect**'s *y* axis range.",259,null],[11,"align_text_middle","","Align the text to the middle of its bounding **Rect**.",259,null],[11,"font_size","","Build the type's self.$($assignee).+ with the given $Type.",259,null],[11,"x_align_text","","Build the type's self.$($assignee).+ with the given $Type.",259,null],[11,"y_align_text","","Build the type's self.$($assignee).+ with the given $Type.",259,null],[11,"line_wrap","","Build the type's self.$($assignee).+ with the given $Type.",259,null],[11,"line_spacing","","Build the type's self.$($assignee).+ with the given $Type.",259,null],[11,"restrict_to_height","","Build the type's self.$($assignee).+ with the given $Type.",259,null],[11,"common","","",259,null],[11,"common_mut","","",259,null],[11,"init_state","","",259,null],[11,"style","","",259,null],[11,"update","","Update the state of the TextEdit.",259,null],[11,"color","","Build the type's self.$($assignee).+ with the given $Type.",259,null],[0,"title_bar","conrod::widget","A simple title bar widget that automatically sizes itself to the top of some other widget.",null,null],[3,"TitleBar","conrod::widget::title_bar","A simple title bar widget that automatically sizes itself to the top of some other widget.",null,null],[12,"common","","Data necessary and common for all widget builder types.",260,null],[12,"style","","Unique styling for the **BorderedRectangle**.",260,null],[12,"label","","A label displayed in the middle of the TitleBar.",260,null],[3,"State","","Unique state for the **TitleBar** widget.",null,null],[3,"Style","","Unique styling for the **TitleBar** widget.",null,null],[12,"color","","The color of the TitleBar's rectangle surface.",261,null],[12,"border","","The width of the border surrounding the TitleBar's rectangle.",261,null],[12,"border_color","","The color of the TitleBar's border.",261,null],[12,"text_color","","The color of the title bar's text.",261,null],[12,"font_size","","The font size for the title bar's text.",261,null],[12,"maybe_wrap","","The way in which the title bar's text should wrap.",261,null],[12,"line_spacing","","The distance between lines for multi-line title bar text.",261,null],[12,"text_align","","The horizontal alignment of the title bar text.",261,null],[5,"calc_height","","Calculate the default height for the **TitleBar**'s rect.",null,{"inputs":[{"name":"fontsize"}],"output":{"name":"scalar"}}],[11,"eq","","",262,null],[11,"ne","","",262,null],[11,"fmt","","",262,null],[11,"clone","","",262,null],[11,"eq","","",261,null],[11,"ne","","",261,null],[11,"fmt","","",261,null],[11,"clone","","",261,null],[11,"new","","Construct the default `Style`, initialising all fields to `None`.",261,{"inputs":[],"output":{"name":"self"}}],[11,"color","","Retrieves the value from the `Style`.",261,null],[11,"border","","Retrieves the value from the `Style`.",261,null],[11,"border_color","","Retrieves the value from the `Style`.",261,null],[11,"text_color","","Retrieves the value from the `Style`.",261,null],[11,"font_size","","Retrieves the value from the `Style`.",261,null],[11,"maybe_wrap","","Retrieves the value from the `Style`.",261,null],[11,"line_spacing","","Retrieves the value from the `Style`.",261,null],[11,"text_align","","Retrieves the value from the `Style`.",261,null],[11,"new","","Construct a new TitleBar widget and attach it to the widget at the given index.",260,{"inputs":[{"name":"str"},{"name":"i"}],"output":{"name":"self"}}],[11,"align_text_left","","Align the text to the left of its bounding **Rect**'s *x* axis range.",260,null],[11,"align_text_middle","","Align the text to the middle of its bounding **Rect**'s *x* axis range.",260,null],[11,"align_text_right","","Align the text to the right of its bounding **Rect**'s *x* axis range.",260,null],[11,"line_spacing","","Build the type's self.$($assignee).+ with the given $Type.",260,null],[11,"common","","",260,null],[11,"common_mut","","",260,null],[11,"init_state","","",260,null],[11,"style","","",260,null],[11,"default_y_dimension","","",260,null],[11,"update","","",260,null],[11,"color","","Build the type's self.$($assignee).+ with the given $Type.",260,null],[11,"border","","Build the type's self.$($assignee).+ with the given $Type.",260,null],[11,"border_color","","Build the type's self.$($assignee).+ with the given $Type.",260,null],[11,"label","","Build the type's self.$($assignee).+ with the given $Type.",260,null],[11,"label_color","","Build the type's self.$($assignee).+ with the given $Type.",260,null],[11,"label_font_size","","Build the type's self.$($assignee).+ with the given $Type.",260,null],[0,"toggle","conrod::widget","A button that allows for toggling boolean state.",null,null],[3,"Toggle","conrod::widget::toggle","A pressable widget for toggling the state of a bool.",null,null],[12,"enabled","","If true, will allow user inputs. If false, will disallow user inputs.",263,null],[3,"Style","","Styling for the Toggle including coloring, bordering and labelling.",null,null],[12,"color","","Color of the Toggle's pressable area.",264,null],[12,"border","","The width of the rectangular border surrounding the Toggle.",264,null],[12,"border_color","","The color of the Toggle's border.",264,null],[12,"label_color","","The color of the Toggle's Text label.",264,null],[12,"label_font_size","","The font size for the Toggle's Text label.",264,null],[3,"State","","The state of the Toggle.",null,null],[3,"TimesClicked","","The `Event` type yielded by the `Toggle` widget.",null,null],[11,"clone","","",263,null],[11,"eq","","",264,null],[11,"ne","","",264,null],[11,"fmt","","",264,null],[11,"clone","","",264,null],[11,"new","","Construct the default `Style`, initialising all fields to `None`.",264,{"inputs":[],"output":{"name":"self"}}],[11,"color","","Retrieves the value from the `Style`.",264,null],[11,"border","","Retrieves the value from the `Style`.",264,null],[11,"border_color","","Retrieves the value from the `Style`.",264,null],[11,"label_color","","Retrieves the value from the `Style`.",264,null],[11,"label_font_size","","Retrieves the value from the `Style`.",264,null],[11,"eq","","",265,null],[11,"ne","","",265,null],[11,"fmt","","",265,null],[11,"clone","","",265,null],[11,"fmt","","",266,null],[11,"clone","","",266,null],[11,"next","","",266,null],[11,"new","","Construct a new Toggle widget.",263,{"inputs":[{"name":"bool"}],"output":{"name":"toggle"}}],[11,"enabled","","Build the type's self.$($assignee).+ with the given $Type.",263,null],[11,"common","","",263,null],[11,"common_mut","","",263,null],[11,"init_state","","",263,null],[11,"style","","",263,null],[11,"update","","Update the state of the Toggle.",263,null],[11,"color","","Build the type's self.$($assignee).+ with the given $Type.",263,null],[11,"border","","Build the type's self.$($assignee).+ with the given $Type.",263,null],[11,"border_color","","Build the type's self.$($assignee).+ with the given $Type.",263,null],[11,"label","","Build the type's self.$($assignee).+ with the given $Type.",263,null],[11,"label_color","","Build the type's self.$($assignee).+ with the given $Type.",263,null],[11,"label_font_size","","Build the type's self.$($assignee).+ with the given $Type.",263,null],[0,"xy_pad","conrod::widget","Used for displaying and controlling a 2D point on a cartesian plane within a given range.",null,null],[3,"XYPad","conrod::widget::xy_pad","Used for displaying and controlling a 2D point on a cartesian plane within a given range.",null,null],[12,"enabled","","Indicates whether the XYPad will respond to user input.",267,null],[3,"Style","","Unique graphical styling for the XYPad.",null,null],[12,"color","","The color of the XYPad's rectangle.",268,null],[12,"border","","The width of the border surrounding the rectangle.",268,null],[12,"border_color","","The color of the surrounding rectangle border.",268,null],[12,"label_color","","The color of the XYPad's label and value label text.",268,null],[12,"label_font_size","","The font size for the XYPad's label.",268,null],[12,"value_font_size","","The font size for the XYPad's *value* label.",268,null],[12,"line_thickness","","The thickness of the XYPad's crosshair lines.",268,null],[3,"State","","The state of the XYPad.",null,null],[11,"eq","","",268,null],[11,"ne","","",268,null],[11,"fmt","","",268,null],[11,"clone","","",268,null],[11,"new","","Construct the default `Style`, initialising all fields to `None`.",268,{"inputs":[],"output":{"name":"self"}}],[11,"color","","Retrieves the value from the `Style`.",268,null],[11,"border","","Retrieves the value from the `Style`.",268,null],[11,"border_color","","Retrieves the value from the `Style`.",268,null],[11,"label_color","","Retrieves the value from the `Style`.",268,null],[11,"label_font_size","","Retrieves the value from the `Style`.",268,null],[11,"value_font_size","","Retrieves the value from the `Style`.",268,null],[11,"line_thickness","","Retrieves the value from the `Style`.",268,null],[11,"eq","","",269,null],[11,"ne","","",269,null],[11,"fmt","","",269,null],[11,"clone","","",269,null],[11,"new","","Build a new XYPad widget.",267,{"inputs":[{"name":"x"},{"name":"x"},{"name":"x"},{"name":"y"},{"name":"y"},{"name":"y"}],"output":{"name":"self"}}],[11,"line_thickness","","Build the type's self.$($assignee).+ with the given $Type.",267,null],[11,"value_font_size","","Build the type's self.$($assignee).+ with the given $Type.",267,null],[11,"enabled","","Build the type's self.$($assignee).+ with the given $Type.",267,null],[11,"common","","",267,null],[11,"common_mut","","",267,null],[11,"init_state","","",267,null],[11,"style","","",267,null],[11,"update","","Update the XYPad's cached state.",267,null],[11,"color","","Build the type's self.$($assignee).+ with the given $Type.",267,null],[11,"border","","Build the type's self.$($assignee).+ with the given $Type.",267,null],[11,"border_color","","Build the type's self.$($assignee).+ with the given $Type.",267,null],[11,"label","","Build the type's self.$($assignee).+ with the given $Type.",267,null],[11,"label_color","","Build the type's self.$($assignee).+ with the given $Type.",267,null],[11,"label_font_size","","Build the type's self.$($assignee).+ with the given $Type.",267,null],[8,"Style","conrod::widget","The necessary bounds for a **Widget**'s associated **Style** type.",null,null],[8,"Widget","","A trait to be implemented by all **Widget** types.",null,null],[16,"State","","State to be stored within the `Ui`s widget cache.",270,null],[16,"Style","","Every widget is required to have its own associated `Style` type. This type is intended to\ncontain high-level styling information for the widget that can be *optionally specified* by\na user of the widget.",270,null],[16,"Event","","The type of event yielded by the widget, returned via the `Widget::set` function.",270,null],[10,"common","","Return a reference to a **CommonBuilder** struct owned by the Widget.\nThis method allows us to do a blanket impl of Positionable and Sizeable for T: Widget.",270,null],[10,"common_mut","","Return a mutable reference to a CommonBuilder struct owned by the Widget.\nThis method allows us to do a blanket impl of Positionable and Sizeable for T: Widget.",270,null],[10,"init_state","","Return the initial **State** of the Widget.",270,null],[10,"style","","Return the styling of the widget.",270,null],[10,"update","","Update our **Widget**'s unique **Widget::State** via the **State** wrapper type (the\n`state` field within the [**UpdateArgs**](./struct.UpdateArgs)).",270,null],[11,"default_x_position","","The default **Position** for the widget along the *x* axis.",270,null],[11,"default_y_position","","The default **Position** for the widget along the *y* axis.",270,null],[11,"default_x_dimension","","The default width for the **Widget**.",270,null],[11,"default_y_dimension","","The default height of the widget.",270,null],[11,"drag_area","","If the widget is draggable, implement this method and return the position and dimensions of\nthe draggable space. The position should be relative to the center of the widget.",270,null],[11,"kid_area","","The area on which child widgets will be placed when using the `Place` `Position` methods.",270,null],[11,"parent","","Set the parent widget for this Widget by passing the WidgetId of the parent.",270,null],[11,"no_parent","","Specify that this widget has no parent widgets.",270,null],[11,"place_on_kid_area","","Set whether or not the **Widget** should be placed on the kid_area.",270,null],[11,"graphics_for","","Indicates that the **Widget** is used as a non-interactive graphical element for some other\nwidget.",270,null],[11,"floating","","Set whether or not the widget is floating (the default is `false`).\nA typical example of a floating widget would be a pop-up or alert window.",270,null],[11,"crop_kids","","Indicates that all widgets who are children of this widget should be cropped to the\n`kid_area` of this widget.",270,null],[11,"scroll_kids","","Makes the widget's `KidArea` scrollable.",270,null],[11,"scroll_kids_vertically","","Makes the widget's `KidArea` scrollable.",270,null],[11,"scroll_kids_horizontally","","Set whether or not the widget's `KidArea` is scrollable (the default is false).",270,null],[11,"and","","A builder method that "lifts" the **Widget** through the given `build` function.",270,null],[11,"and_mut","","A builder method that mutates the **Widget** with the given `mutate` function.",270,null],[11,"and_if","","A method that conditionally builds the **Widget** with the given `build` function.",270,null],[11,"and_then","","A method that optionally builds the the **Widget** with the given `build` function.",270,null],[11,"set","","Note: There should be no need to override this method.",270,null],[11,"eq","","",271,null],[11,"ne","","",271,null],[11,"fmt","","",271,null],[11,"clone","","",271,null],[11,"eq","","",130,null],[11,"ne","","",130,null],[11,"fmt","","",130,null],[11,"clone","","",130,null],[11,"eq","","",138,null],[11,"ne","","",138,null],[11,"fmt","","",138,null],[11,"clone","","",138,null],[11,"get_unchecked","","Convert the **MaybeParent** into an **Option<Index>**.",138,null],[11,"get","","The same as `get_unchecked`, but checks whether or not the widget that we're inferring the\nparent for is the `Ui`'s window (which cannot have a parent, without creating a cycle).",138,null],[11,"eq","","",131,null],[11,"ne","","",131,null],[11,"fmt","","",131,null],[11,"clone","","",131,null],[11,"fmt","","",132,null],[11,"clone","","",132,null],[11,"fmt","","",133,null],[11,"clone","","",133,null],[11,"eq","","",134,null],[11,"ne","","",134,null],[11,"fmt","","",134,null],[11,"clone","","",134,null],[11,"new","","Construct a new empty **IndexSlot**.",271,{"inputs":[],"output":{"name":"self"}}],[11,"get","","Returns the **NodeIndex** held by the **IndexSlot**.",271,null],[11,"update","","Mutate the internal widget state and set a flag notifying us that there has been a mutation.",272,null],[11,"deref","","",272,null],[11,"new","","Construct an empty, initialised CommonBuilder.",132,{"inputs":[],"output":{"name":"commonbuilder"}}],[11,"new","","A new default CommonStyle.",133,{"inputs":[],"output":{"name":"self"}}],[6,"FontSize","conrod","Font size used throughout Conrod.",null,null],[6,"Depth","","The depth at which the widget will be rendered.",null,null],[6,"Dimensions","","General use 2D spatial dimensions.",null,null],[6,"Margin","","The margin for some `Place`ment on either end of an axis.",null,null],[6,"Point","","General use 2D spatial point.",null,null],[6,"Scalar","","An alias over the Scalar type used throughout Conrod.",null,null],[8,"Borderable","","Widgets that may display a border.",null,null],[10,"border","","Set the width of the widget's border.",273,null],[10,"border_color","","Set the color of the widget's border.",273,null],[11,"border_rgba","","Set the color of the widget's border with rgba values.",273,null],[11,"border_rgb","","Set the color of the widget's border with rgb values.",273,null],[11,"border_hsla","","Set the color of the widget's border with hsla values.",273,null],[11,"border_hsl","","Set the color of the widget's border with hsl values.",273,null],[8,"Labelable","","Widgets that may display some label.",null,null],[10,"label","","Set the label for the widget.",274,null],[10,"label_color","","Set the color of the widget's label.",274,null],[11,"label_rgba","","Set the color of the widget's label from rgba values.",274,null],[11,"label_rgb","","Set the color of the widget's label from rgb values.",274,null],[11,"label_hsla","","Set the color of the widget's label from hsla values.",274,null],[11,"label_hsl","","Set the color of the widget's label from hsl values.",274,null],[10,"label_font_size","","Set the font size for the widget's label.",274,null],[11,"small_font","","Set a "small" font size for the widget's label.",274,null],[11,"medium_font","","Set a "medium" font size for the widget's label.",274,null],[11,"large_font","","Set a "large" font size for the widget's label.",274,null],[8,"Positionable","","Widgets that are positionable.",null,null],[10,"x_position","","Build with the given **Position** along the *x* axis.",275,null],[10,"y_position","","Build with the given **Position** along the *y* axis.",275,null],[10,"get_x_position","","Get the **Position** along the *x* axis.",275,null],[10,"get_y_position","","Get the **Position** along the *y* axis.",275,null],[11,"x","","Build with the given **Absolute** **Position** along the *x* axis.",275,null],[11,"y","","Build with the given **Absolute** **Position** along the *y* axis.",275,null],[11,"xy","","Set the **Position** with some Point.",275,null],[11,"x_y","","Set the **Position** with *x* *y* coordinates.",275,null],[11,"x_relative","","Set the **Position** along the *x* axis **Relative** to the previous widget.",275,null],[11,"y_relative","","Set the **Position** along the *y* axis **Relative** to the previous widget.",275,null],[11,"xy_relative","","Set the **Position** **Relative** to the previous widget.",275,null],[11,"x_y_relative","","Set the **Position** **Relative** to the previous widget.",275,null],[11,"x_relative_to","","Set the position relative to the widget with the given widget::Index.",275,null],[11,"y_relative_to","","Set the position relative to the widget with the given widget::Index.",275,null],[11,"xy_relative_to","","Set the position relative to the widget with the given widget::Index.",275,null],[11,"x_y_relative_to","","Set the position relative to the widget with the given widget::Index.",275,null],[11,"x_direction","","Build with the **Position** along the *x* axis as some distance from another widget.",275,null],[11,"y_direction","","Build with the **Position** along the *y* axis as some distance from another widget.",275,null],[11,"down","","Build with the **Position** as some distance below another widget.",275,null],[11,"up","","Build with the **Position** as some distance above another widget.",275,null],[11,"left","","Build with the **Position** as some distance to the left of another widget.",275,null],[11,"right","","Build with the **Position** as some distance to the right of another widget.",275,null],[11,"x_direction_from","","Build with the **Position** along the *x* axis as some distance from the given widget.",275,null],[11,"y_direction_from","","Build with the **Position** along the *y* axis as some distance from the given widget.",275,null],[11,"down_from","","Build with the **Position** as some distance below the given widget.",275,null],[11,"up_from","","Build with the **Position** as some distance above the given widget.",275,null],[11,"left_from","","Build with the **Position** as some distance to the left of the given widget.",275,null],[11,"right_from","","Build with the **Position** as some distance to the right of the given widget.",275,null],[11,"x_align","","Align the **Position** of the widget along the *x* axis.",275,null],[11,"y_align","","Align the **Position** of the widget along the *y* axis.",275,null],[11,"align_left","","Align the position to the left (only effective for Up or Down `Direction`s).",275,null],[11,"align_middle_x","","Align the position to the middle (only effective for Up or Down `Direction`s).",275,null],[11,"align_right","","Align the position to the right (only effective for Up or Down `Direction`s).",275,null],[11,"align_top","","Align the position to the top (only effective for Left or Right `Direction`s).",275,null],[11,"align_middle_y","","Align the position to the middle (only effective for Left or Right `Direction`s).",275,null],[11,"align_bottom","","Align the position to the bottom (only effective for Left or Right `Direction`s).",275,null],[11,"x_align_to","","Align the **Position** of the widget with the given widget along the *x* axis.",275,null],[11,"y_align_to","","Align the **Position** of the widget with the given widget along the *y* axis.",275,null],[11,"align_left_of","","Align the position to the left (only effective for Up or Down `Direction`s).",275,null],[11,"align_middle_x_of","","Align the position to the middle (only effective for Up or Down `Direction`s).",275,null],[11,"align_right_of","","Align the position to the right (only effective for Up or Down `Direction`s).",275,null],[11,"align_top_of","","Align the position to the top (only effective for Left or Right `Direction`s).",275,null],[11,"align_middle_y_of","","Align the position to the middle (only effective for Left or Right `Direction`s).",275,null],[11,"align_bottom_of","","Align the position to the bottom (only effective for Left or Right `Direction`s).",275,null],[11,"x_place_on","","Place the widget at some position on the `other` Widget along the *x* axis.",275,null],[11,"y_place_on","","Place the widget at some position on the `other` Widget along the *y* axis.",275,null],[11,"middle_of","","Place the widget in the middle of the given Widget.",275,null],[11,"top_left_of","","Place the widget in the top left corner of the given Widget.",275,null],[11,"top_left_with_margin_on","","Place the widget in the top left corner of the given Widget with the given margin between\nboth edges.",275,null],[11,"top_left_with_margins_on","","Place the widget in the top left corner of the given Widget with the given margins between\neach respective edge.",275,null],[11,"top_right_of","","Place the widget in the top right corner of the given Widget.",275,null],[11,"top_right_with_margin_on","","Place the widget in the top right corner of the given Widget with the given margin\nbetween both edges.",275,null],[11,"top_right_with_margins_on","","Place the widget in the top right corner of the given Widget with the given margins between\neach respective edge.",275,null],[11,"bottom_left_of","","Place the widget in the bottom left corner of the given Widget.",275,null],[11,"bottom_left_with_margin_on","","Place the widget in the bottom left corner of the given Widget with the given margin\nbetween both edges.",275,null],[11,"bottom_left_with_margins_on","","Place the widget in the bottom left corner of the given Widget with the given margins\nbetween each respective edge.",275,null],[11,"bottom_right_of","","Place the widget in the bottom right corner of the given Widget.",275,null],[11,"bottom_right_with_margin_on","","Place the widget in the bottom right corner of the given Widget with the given margin\nbetween both edges.",275,null],[11,"bottom_right_with_margins_on","","Place the widget in the bottom right corner of the given Widget with the given margins\nbetween each respective edge.",275,null],[11,"mid_top_of","","Place the widget in the middle of the top edge of the given Widget.",275,null],[11,"mid_top_with_margin_on","","Place the widget in the middle of the top edge of the given Widget with the given margin\nbetween the edges.",275,null],[11,"mid_bottom_of","","Place the widget in the middle of the bottom edge of the given Widget.",275,null],[11,"mid_bottom_with_margin_on","","Place the widget in the middle of the bottom edge of the given Widget with the given margin\nbetween the edges.",275,null],[11,"mid_left_of","","Place the widget in the middle of the left edge of the given Widget.",275,null],[11,"mid_left_with_margin_on","","Place the widget in the middle of the left edge of the given Widget with the given margin\nbetween the edges.",275,null],[11,"mid_right_of","","Place the widget in the middle of the right edge of the given Widget.",275,null],[11,"mid_right_with_margin_on","","Place the widget in the middle of the right edge of the given Widget with the given margin\nbetween the edges.",275,null],[11,"x_place","","Place the widget at some position on the Widget along the *x* axis.",275,null],[11,"y_place","","Place the widget at some position on the Widget along the *y* axis.",275,null],[11,"middle","","Place the widget in the middle of the current parent Widget.",275,null],[11,"top_left","","Place the widget in the top left corner of the current parent Widget.",275,null],[11,"top_left_with_margin","","Place the widget in the top left corner of the current parent Widget with the given margin\nbetween both edges.",275,null],[11,"top_left_with_margins","","Place the widget in the top left corner of the current parent Widget with the given margins\nbetween each respective edge.",275,null],[11,"top_right","","Place the widget in the top right corner of the current parent Widget.",275,null],[11,"top_right_with_margin","","Place the widget in the top right corner of the current parent Widget with the given margin\nbetween both edges.",275,null],[11,"top_right_with_margins","","Place the widget in the top right corner of the current parent Widget with the given margins\nbetween each respective edge.",275,null],[11,"bottom_left","","Place the widget in the bottom left corner of the current parent Widget.",275,null],[11,"bottom_left_with_margin","","Place the widget in the bottom left corner of the current parent Widget with the given\nmargin between both edges.",275,null],[11,"bottom_left_with_margins","","Place the widget in the bottom left corner of the current parent Widget with the given\nmargins between each respective edge.",275,null],[11,"bottom_right","","Place the widget in the bottom right corner of the current parent Widget.",275,null],[11,"bottom_right_with_margin","","Place the widget in the bottom right corner of the current parent Widget with the given\nmargin between both edges.",275,null],[11,"bottom_right_with_margins","","Place the widget in the bottom right corner of the current parent Widget with the given\nmargins between each respective edge.",275,null],[11,"mid_top","","Place the widget in the middle of the top edge of the current parent Widget.",275,null],[11,"mid_top_with_margin","","Place the widget in the middle of the top edge of the current parent Widget with the given\nmargin from the edge.",275,null],[11,"mid_bottom","","Place the widget in the middle of the bottom edge of the current parent Widget.",275,null],[11,"mid_bottom_with_margin","","Place the widget in the middle of the bottom edge of the current parent Widget with the\ngiven margin from the edge.",275,null],[11,"mid_left","","Place the widget in the middle of the left edge of the current parent Widget.",275,null],[11,"mid_left_with_margin","","Place the widget in the middle of the left edge of the current parent Widget with the\ngiven margin from the edge.",275,null],[11,"mid_right","","Place the widget in the middle of the right edge of the current parent Widget.",275,null],[11,"mid_right_with_margin","","Place the widget in the middle of the right edge of the current parent Widget with the\ngiven margin from the edge.",275,null],[10,"depth","","The depth at which the widget should be rendered relatively to its sibling widgets.",275,null],[10,"get_depth","","Return the depth.",275,null],[8,"Sizeable","","Widgets that support different dimensions.",null,null],[10,"x_dimension","","Set the length along the x axis.",276,null],[10,"y_dimension","","Set the length along the y axis.",276,null],[10,"get_x_dimension","","The widget's length along the x axis as a Dimension.",276,null],[10,"get_y_dimension","","The widget's length along the y axis as a Dimension.",276,null],[11,"w","","Set the absolute width for the widget.",276,null],[11,"h","","Set the absolute height for the widget.",276,null],[11,"wh","","Set the dimensions for the widget.",276,null],[11,"w_h","","Set the width and height for the widget.",276,null],[11,"w_of","","Set the width as the width of the widget at the given index.",276,null],[11,"padded_w_of","","Set the width as the width of the widget at the given index padded at both ends by the\ngiven Scalar.",276,null],[11,"h_of","","Set the height as the height of the widget at the given index.",276,null],[11,"padded_h_of","","Set the height as the height of the widget at the given index padded at both ends by the\ngiven Scalar.",276,null],[11,"wh_of","","Set the dimensions as the dimensions of the widget at the given index.",276,null],[11,"padded_wh_of","","Set the dimensions as the dimensions of the widget at the given index with all four edges\npadded by the given scalar.",276,null],[11,"kid_area_w_of","","Set the width as the width of the padded area of the widget at the given index.",276,null],[11,"padded_kid_area_w_of","","Set the width as the `KidArea` width for the widget at the given index, padded at both ends\nby the given scalar.",276,null],[11,"kid_area_h_of","","Set the height as the `KidArea` height of the widget at the given index.",276,null],[11,"padded_kid_area_h_of","","Set the height as the `KidArea` height of the widget at the given index, padded at both\nends by the given scalar.",276,null],[11,"kid_area_wh_of","","Set the dimensions as the `KidArea` dimensions of the widget at the given index.",276,null],[11,"padded_kid_area_wh_of","","Set the dimensions as the `KidArea` dimensions of the widget at the given index, padded at\nall four edges by the given scalar.",276,null],[11,"get_w","","Get the absolute width of the widget as a Scalar value.",276,null],[11,"get_h","","Get the height of the widget.",276,null],[11,"get_wh","","The dimensions for the widget.",276,null],[14,"image_map!","","A macro for simplifying the instantiation of an `image::Map`.",null,null],[14,"builder_method!","","A macro for simplifying implementation of methods for the `builder pattern`.",null,null],[14,"builder_methods!","","A macro to simplify implementation of\n["builder-pattern"](https://en.wikipedia.org/wiki/Builder_pattern) methods.",null,null],[14,"widget_style!","","A macro for vastly simplifying the definition and implementation of a widget's associated\n`Style` type.",null,null],[14,"widget_ids!","","Generate a list of unique IDs given a list of identifiers.",null,null],[11,"new","conrod::backend::piston::draw","Creates a new drawing context.",14,{"inputs":[],"output":{"name":"context"}}],[11,"new_viewport","","Creates a new context with absolute transform in point coordinates.",14,{"inputs":[{"name":"viewport"}],"output":{"name":"context"}}],[11,"new_abs","","Creates a new drawing context in absolute coordinates.",14,{"inputs":[{"name":"f64"},{"name":"f64"}],"output":{"name":"context"}}],[11,"view","","Moves the current transform to the view coordinate system.",14,null],[11,"reset","","Moves the current transform to the default coordinate system.",14,null],[11,"store_view","","Stores the current transform as new view.",14,null],[11,"get_view_size","","Computes the current view size.",14,null],[11,"append_transform","","",14,null],[11,"prepend_transform","","",14,null],[11,"trans","","",14,null],[11,"rot_rad","","",14,null],[11,"orient","","",14,null],[11,"scale","","",14,null],[11,"shear","","",14,null],[11,"partial_cmp","","",15,null],[11,"lt","","",15,null],[11,"le","","",15,null],[11,"gt","","",15,null],[11,"ge","","",15,null],[11,"fmt","","",15,null],[11,"eq","","",15,null],[11,"ne","","",15,null],[11,"clone","","",15,null],[11,"default","","",15,{"inputs":[],"output":{"name":"drawstate"}}],[11,"new_alpha","","Uses alpha blending.",15,{"inputs":[],"output":{"name":"drawstate"}}],[11,"new_clip","","Draws to stencil buffer with value 255.\nThis can be used for clipping.",15,{"inputs":[],"output":{"name":"drawstate"}}],[11,"new_inside","","Tests against stencil buffer with value 255.\nDraws inside the shape defined by stencil buffer.",15,{"inputs":[],"output":{"name":"drawstate"}}],[11,"new_outside","","Tests against stencil buffer with value 255.\nDraws outside the shape defined by stencil buffer.",15,{"inputs":[],"output":{"name":"drawstate"}}],[11,"blend","","Sets blending.",15,null],[11,"scissor","","Sets scissor `[x, y, w, h]`.",15,null],[11,"clone","","",14,null],[11,"hash","conrod::input","",59,null],[11,"fmt","","",59,null],[11,"eq","","",59,null],[11,"ne","","",59,null],[11,"encode","","",59,null],[11,"decode","","",59,{"inputs":[{"name":"__d"}],"output":{"name":"result"}}],[11,"clone","","",59,null],[11,"new","","Create a new ControllerButton object. Intended for use by backends when\nemitting events.",59,{"inputs":[{"name":"i32"},{"name":"u8"}],"output":{"name":"controllerbutton"}}],[11,"fmt","","",60,null],[11,"eq","","",60,null],[11,"ne","","",60,null],[11,"encode","","",60,null],[11,"decode","","",60,{"inputs":[{"name":"__d"}],"output":{"name":"result"}}],[11,"clone","","",60,null],[11,"new","","Create a new ControllerAxisArgs object. Intended for use by backends when\nemitting events.",60,{"inputs":[{"name":"i32"},{"name":"u8"},{"name":"f64"}],"output":{"name":"controlleraxisargs"}}],[11,"hash","conrod::input::keyboard","",277,null],[11,"cmp","","",277,null],[11,"partial_cmp","","",277,null],[11,"lt","","",277,null],[11,"le","","",277,null],[11,"gt","","",277,null],[11,"ge","","",277,null],[11,"clone","","",277,null],[11,"eq","","",277,null],[11,"ne","","",277,null],[11,"encode","","",277,null],[11,"decode","","",277,{"inputs":[{"name":"__d"}],"output":{"name":"result"}}],[11,"fmt","","",277,null],[11,"empty","","Returns an empty set of flags.",277,{"inputs":[],"output":{"name":"modifierkey"}}],[11,"all","","Returns the set containing all flags.",277,{"inputs":[],"output":{"name":"modifierkey"}}],[11,"bits","","Returns the raw value of the flags currently stored.",277,null],[11,"from_bits","","Convert from underlying bit representation, unless that\nrepresentation contains bits that do not correspond to a flag.",277,{"inputs":[{"name":"u8"}],"output":{"name":"option"}}],[11,"from_bits_truncate","","Convert from underlying bit representation, dropping any bits\nthat do not correspond to flags.",277,{"inputs":[{"name":"u8"}],"output":{"name":"modifierkey"}}],[11,"is_empty","","Returns `true` if no flags are currently stored.",277,null],[11,"is_all","","Returns `true` if all flags are currently set.",277,null],[11,"intersects","","Returns `true` if there are flags common to both `self` and `other`.",277,null],[11,"contains","","Returns `true` all of the flags in `other` are contained within `self`.",277,null],[11,"insert","","Inserts the specified flags in-place.",277,null],[11,"remove","","Removes the specified flags in-place.",277,null],[11,"toggle","","Toggles the specified flags in-place.",277,null],[11,"bitor","","Returns the union of the two sets of flags.",277,null],[11,"bitor_assign","","Adds the set of flags.",277,null],[11,"bitxor","","Returns the left flags, but with all the right flags toggled.",277,null],[11,"bitxor_assign","","Toggles the set of flags.",277,null],[11,"bitand","","Returns the intersection between the two sets of flags.",277,null],[11,"bitand_assign","","Disables all flags disabled in the set.",277,null],[11,"sub","","Returns the set difference of the two sets of flags.",277,null],[11,"sub_assign","","Disables all flags enabled in the set.",277,null],[11,"not","","Returns the complement of this set of flags.",277,null],[11,"extend","","",277,null],[11,"from_iter","","",277,{"inputs":[{"name":"t"}],"output":{"name":"modifierkey"}}],[11,"event","","Change modifier key state depending on input.",277,null],[11,"default","","",277,{"inputs":[],"output":{"name":"modifierkey"}}],[11,"hash","conrod::input","",61,null],[11,"fmt","","",61,null],[11,"encode","","",61,null],[11,"decode","","",61,{"inputs":[{"name":"__d"}],"output":{"name":"result"}}],[11,"clone","","",61,null],[11,"from","","",61,{"inputs":[{"name":"u32"}],"output":{"name":"key"}}],[11,"eq","","",61,null],[11,"partial_cmp","","",61,null],[11,"cmp","","",61,null],[11,"code","","Returns an id of the key",61,null],[11,"fmt","conrod::input::state::mouse","",62,null],[11,"hash","","",62,null],[11,"partial_cmp","","",62,null],[11,"cmp","","",62,null],[11,"eq","","",62,null],[11,"encode","","",62,null],[11,"decode","","",62,{"inputs":[{"name":"__d"}],"output":{"name":"result"}}],[11,"clone","","",62,null],[11,"from","","",62,{"inputs":[{"name":"u32"}],"output":{"name":"mousebutton"}}],[11,"event_id","conrod::event","",27,null],[11,"with_args","","",27,null],[11,"from_args","","",27,{"inputs":[{"name":"eventid"},{"name":"any"},{"name":"input"}],"output":{"name":"option"}}],[11,"event_id","","",26,null],[11,"with_args","","",26,null],[11,"from_args","","",26,{"inputs":[{"name":"eventid"},{"name":"any"},{"name":"event"}],"output":{"name":"option"}}],[11,"fmt","","",26,null],[11,"eq","","",26,null],[11,"ne","","",26,null],[11,"clone","","",26,null],[11,"from","","",26,{"inputs":[{"name":"renderargs"}],"output":{"name":"event"}}],[11,"from","","",26,{"inputs":[{"name":"afterrenderargs"}],"output":{"name":"event"}}],[11,"from","","",26,{"inputs":[{"name":"updateargs"}],"output":{"name":"event"}}],[11,"from","","",26,{"inputs":[{"name":"idleargs"}],"output":{"name":"event"}}],[11,"from","","",26,{"inputs":[{"name":"input"}],"output":{"name":"event"}}],[11,"fmt","conrod::input","",63,null],[11,"eq","","",63,null],[11,"ne","","",63,null],[11,"clone","","",63,null],[11,"viewport","","Returns viewport information filling entire render area.",63,null],[11,"fmt","","",64,null],[11,"eq","","",64,null],[11,"encode","","",64,null],[11,"decode","","",64,{"inputs":[{"name":"__d"}],"output":{"name":"result"}}],[11,"clone","","",64,null],[11,"fmt","","",65,null],[11,"eq","","",65,null],[11,"ne","","",65,null],[11,"encode","","",65,null],[11,"decode","","",65,{"inputs":[{"name":"__d"}],"output":{"name":"result"}}],[11,"clone","","",65,null],[11,"new","","Creates arguments for 2D touch.",65,null],[11,"new_3d","","Creates arguments for 3D touch.",65,null],[11,"position","","The position of the touch in 2D.",65,null],[11,"position_3d","","The position of the touch in 3D.",65,null],[11,"pressure","","The pressure magnitude, normalized 0..1.",65,null],[11,"pressure_3d","","The pressure vector in 3D.",65,null],[11,"fmt","","",58,null],[11,"hash","","",58,null],[11,"eq","","",58,null],[11,"ne","","",58,null],[11,"encode","","",58,null],[11,"decode","","",58,{"inputs":[{"name":"__d"}],"output":{"name":"result"}}],[11,"clone","","",58,null],[11,"fmt","conrod::event","",28,null],[11,"eq","","",28,null],[11,"ne","","",28,null],[11,"encode","","",28,null],[11,"decode","","",28,{"inputs":[{"name":"__d"}],"output":{"name":"result"}}],[11,"clone","","",28,null],[11,"fmt","","",27,null],[11,"eq","","",27,null],[11,"ne","","",27,null],[11,"encode","","",27,null],[11,"decode","","",27,{"inputs":[{"name":"__d"}],"output":{"name":"result"}}],[11,"clone","","",27,null],[11,"from","conrod::input","",58,{"inputs":[{"name":"key"}],"output":{"name":"button"}}],[11,"from","","",58,{"inputs":[{"name":"mousebutton"}],"output":{"name":"button"}}],[11,"from","","",58,{"inputs":[{"name":"controllerbutton"}],"output":{"name":"button"}}],[11,"from","conrod::event","",28,{"inputs":[{"name":"controlleraxisargs"}],"output":{"name":"motion"}}],[11,"from","","",27,{"inputs":[{"name":"motion"}],"output":{"name":"input"}}],[11,"border_rgba","conrod","Set the color of the widget's border with rgba values.",273,null],[11,"border_rgb","","Set the color of the widget's border with rgb values.",273,null],[11,"border_hsla","","Set the color of the widget's border with hsla values.",273,null],[11,"border_hsl","","Set the color of the widget's border with hsl values.",273,null],[11,"to_widget_id","conrod::widget","",127,null],[11,"to_node_index","","",127,null],[11,"from_idx","","",127,{"inputs":[{"name":"i"},{"name":"indexmap"}],"output":{"name":"option"}}],[11,"to_widget_id","conrod::graph","",278,null],[11,"to_node_index","","",278,null],[11,"from_idx","","",278,{"inputs":[{"name":"i"},{"name":"indexmap"}],"output":{"name":"option"}}],[11,"to_node_index","conrod::widget","Coerce a widget::Index into an Option<NodeIndex>.\nIf the Index is the Internal variant, that idx will be used directly.\nIf the Index is the Public variant, the index_map will be used to find the matching\nNodeIndex.",137,null],[11,"to_widget_id","","Coerce a widget::Index into an Option<WidgetId>.\nIf the Index is the Public variant, that id will be used directly.\nIf the Index is the Internal variant, the index_map will be used to find the matching\nWidgetId.",137,null],[11,"from_idx","","Construct a widget::Index from some GraphIndex.\nFirst tries to construct a Public variant by checking the IndexMap for a matching WidgetId.\nIf not WidgetId is found, then tries to find a matching NodeIndex.",137,{"inputs":[{"name":"i"},{"name":"indexmap"}],"output":{"name":"option"}}],[11,"label_rgba","conrod","Set the color of the widget's label from rgba values.",274,null],[11,"label_rgb","","Set the color of the widget's label from rgb values.",274,null],[11,"label_hsla","","Set the color of the widget's label from hsla values.",274,null],[11,"label_hsl","","Set the color of the widget's label from hsl values.",274,null],[11,"small_font","","Set a "small" font size for the widget's label.",274,null],[11,"medium_font","","Set a "medium" font size for the widget's label.",274,null],[11,"large_font","","Set a "large" font size for the widget's label.",274,null],[11,"x","","Build with the given **Absolute** **Position** along the *x* axis.",275,null],[11,"y","","Build with the given **Absolute** **Position** along the *y* axis.",275,null],[11,"xy","","Set the **Position** with some Point.",275,null],[11,"x_y","","Set the **Position** with *x* *y* coordinates.",275,null],[11,"x_relative","","Set the **Position** along the *x* axis **Relative** to the previous widget.",275,null],[11,"y_relative","","Set the **Position** along the *y* axis **Relative** to the previous widget.",275,null],[11,"xy_relative","","Set the **Position** **Relative** to the previous widget.",275,null],[11,"x_y_relative","","Set the **Position** **Relative** to the previous widget.",275,null],[11,"x_relative_to","","Set the position relative to the widget with the given widget::Index.",275,null],[11,"y_relative_to","","Set the position relative to the widget with the given widget::Index.",275,null],[11,"xy_relative_to","","Set the position relative to the widget with the given widget::Index.",275,null],[11,"x_y_relative_to","","Set the position relative to the widget with the given widget::Index.",275,null],[11,"x_direction","","Build with the **Position** along the *x* axis as some distance from another widget.",275,null],[11,"y_direction","","Build with the **Position** along the *y* axis as some distance from another widget.",275,null],[11,"down","","Build with the **Position** as some distance below another widget.",275,null],[11,"up","","Build with the **Position** as some distance above another widget.",275,null],[11,"left","","Build with the **Position** as some distance to the left of another widget.",275,null],[11,"right","","Build with the **Position** as some distance to the right of another widget.",275,null],[11,"x_direction_from","","Build with the **Position** along the *x* axis as some distance from the given widget.",275,null],[11,"y_direction_from","","Build with the **Position** along the *y* axis as some distance from the given widget.",275,null],[11,"down_from","","Build with the **Position** as some distance below the given widget.",275,null],[11,"up_from","","Build with the **Position** as some distance above the given widget.",275,null],[11,"left_from","","Build with the **Position** as some distance to the left of the given widget.",275,null],[11,"right_from","","Build with the **Position** as some distance to the right of the given widget.",275,null],[11,"x_align","","Align the **Position** of the widget along the *x* axis.",275,null],[11,"y_align","","Align the **Position** of the widget along the *y* axis.",275,null],[11,"align_left","","Align the position to the left (only effective for Up or Down `Direction`s).",275,null],[11,"align_middle_x","","Align the position to the middle (only effective for Up or Down `Direction`s).",275,null],[11,"align_right","","Align the position to the right (only effective for Up or Down `Direction`s).",275,null],[11,"align_top","","Align the position to the top (only effective for Left or Right `Direction`s).",275,null],[11,"align_middle_y","","Align the position to the middle (only effective for Left or Right `Direction`s).",275,null],[11,"align_bottom","","Align the position to the bottom (only effective for Left or Right `Direction`s).",275,null],[11,"x_align_to","","Align the **Position** of the widget with the given widget along the *x* axis.",275,null],[11,"y_align_to","","Align the **Position** of the widget with the given widget along the *y* axis.",275,null],[11,"align_left_of","","Align the position to the left (only effective for Up or Down `Direction`s).",275,null],[11,"align_middle_x_of","","Align the position to the middle (only effective for Up or Down `Direction`s).",275,null],[11,"align_right_of","","Align the position to the right (only effective for Up or Down `Direction`s).",275,null],[11,"align_top_of","","Align the position to the top (only effective for Left or Right `Direction`s).",275,null],[11,"align_middle_y_of","","Align the position to the middle (only effective for Left or Right `Direction`s).",275,null],[11,"align_bottom_of","","Align the position to the bottom (only effective for Left or Right `Direction`s).",275,null],[11,"x_place_on","","Place the widget at some position on the `other` Widget along the *x* axis.",275,null],[11,"y_place_on","","Place the widget at some position on the `other` Widget along the *y* axis.",275,null],[11,"middle_of","","Place the widget in the middle of the given Widget.",275,null],[11,"top_left_of","","Place the widget in the top left corner of the given Widget.",275,null],[11,"top_left_with_margin_on","","Place the widget in the top left corner of the given Widget with the given margin between\nboth edges.",275,null],[11,"top_left_with_margins_on","","Place the widget in the top left corner of the given Widget with the given margins between\neach respective edge.",275,null],[11,"top_right_of","","Place the widget in the top right corner of the given Widget.",275,null],[11,"top_right_with_margin_on","","Place the widget in the top right corner of the given Widget with the given margin\nbetween both edges.",275,null],[11,"top_right_with_margins_on","","Place the widget in the top right corner of the given Widget with the given margins between\neach respective edge.",275,null],[11,"bottom_left_of","","Place the widget in the bottom left corner of the given Widget.",275,null],[11,"bottom_left_with_margin_on","","Place the widget in the bottom left corner of the given Widget with the given margin\nbetween both edges.",275,null],[11,"bottom_left_with_margins_on","","Place the widget in the bottom left corner of the given Widget with the given margins\nbetween each respective edge.",275,null],[11,"bottom_right_of","","Place the widget in the bottom right corner of the given Widget.",275,null],[11,"bottom_right_with_margin_on","","Place the widget in the bottom right corner of the given Widget with the given margin\nbetween both edges.",275,null],[11,"bottom_right_with_margins_on","","Place the widget in the bottom right corner of the given Widget with the given margins\nbetween each respective edge.",275,null],[11,"mid_top_of","","Place the widget in the middle of the top edge of the given Widget.",275,null],[11,"mid_top_with_margin_on","","Place the widget in the middle of the top edge of the given Widget with the given margin\nbetween the edges.",275,null],[11,"mid_bottom_of","","Place the widget in the middle of the bottom edge of the given Widget.",275,null],[11,"mid_bottom_with_margin_on","","Place the widget in the middle of the bottom edge of the given Widget with the given margin\nbetween the edges.",275,null],[11,"mid_left_of","","Place the widget in the middle of the left edge of the given Widget.",275,null],[11,"mid_left_with_margin_on","","Place the widget in the middle of the left edge of the given Widget with the given margin\nbetween the edges.",275,null],[11,"mid_right_of","","Place the widget in the middle of the right edge of the given Widget.",275,null],[11,"mid_right_with_margin_on","","Place the widget in the middle of the right edge of the given Widget with the given margin\nbetween the edges.",275,null],[11,"x_place","","Place the widget at some position on the Widget along the *x* axis.",275,null],[11,"y_place","","Place the widget at some position on the Widget along the *y* axis.",275,null],[11,"middle","","Place the widget in the middle of the current parent Widget.",275,null],[11,"top_left","","Place the widget in the top left corner of the current parent Widget.",275,null],[11,"top_left_with_margin","","Place the widget in the top left corner of the current parent Widget with the given margin\nbetween both edges.",275,null],[11,"top_left_with_margins","","Place the widget in the top left corner of the current parent Widget with the given margins\nbetween each respective edge.",275,null],[11,"top_right","","Place the widget in the top right corner of the current parent Widget.",275,null],[11,"top_right_with_margin","","Place the widget in the top right corner of the current parent Widget with the given margin\nbetween both edges.",275,null],[11,"top_right_with_margins","","Place the widget in the top right corner of the current parent Widget with the given margins\nbetween each respective edge.",275,null],[11,"bottom_left","","Place the widget in the bottom left corner of the current parent Widget.",275,null],[11,"bottom_left_with_margin","","Place the widget in the bottom left corner of the current parent Widget with the given\nmargin between both edges.",275,null],[11,"bottom_left_with_margins","","Place the widget in the bottom left corner of the current parent Widget with the given\nmargins between each respective edge.",275,null],[11,"bottom_right","","Place the widget in the bottom right corner of the current parent Widget.",275,null],[11,"bottom_right_with_margin","","Place the widget in the bottom right corner of the current parent Widget with the given\nmargin between both edges.",275,null],[11,"bottom_right_with_margins","","Place the widget in the bottom right corner of the current parent Widget with the given\nmargins between each respective edge.",275,null],[11,"mid_top","","Place the widget in the middle of the top edge of the current parent Widget.",275,null],[11,"mid_top_with_margin","","Place the widget in the middle of the top edge of the current parent Widget with the given\nmargin from the edge.",275,null],[11,"mid_bottom","","Place the widget in the middle of the bottom edge of the current parent Widget.",275,null],[11,"mid_bottom_with_margin","","Place the widget in the middle of the bottom edge of the current parent Widget with the\ngiven margin from the edge.",275,null],[11,"mid_left","","Place the widget in the middle of the left edge of the current parent Widget.",275,null],[11,"mid_left_with_margin","","Place the widget in the middle of the left edge of the current parent Widget with the\ngiven margin from the edge.",275,null],[11,"mid_right","","Place the widget in the middle of the right edge of the current parent Widget.",275,null],[11,"mid_right_with_margin","","Place the widget in the middle of the right edge of the current parent Widget with the\ngiven margin from the edge.",275,null],[11,"w","","Set the absolute width for the widget.",276,null],[11,"h","","Set the absolute height for the widget.",276,null],[11,"wh","","Set the dimensions for the widget.",276,null],[11,"w_h","","Set the width and height for the widget.",276,null],[11,"w_of","","Set the width as the width of the widget at the given index.",276,null],[11,"padded_w_of","","Set the width as the width of the widget at the given index padded at both ends by the\ngiven Scalar.",276,null],[11,"h_of","","Set the height as the height of the widget at the given index.",276,null],[11,"padded_h_of","","Set the height as the height of the widget at the given index padded at both ends by the\ngiven Scalar.",276,null],[11,"wh_of","","Set the dimensions as the dimensions of the widget at the given index.",276,null],[11,"padded_wh_of","","Set the dimensions as the dimensions of the widget at the given index with all four edges\npadded by the given scalar.",276,null],[11,"kid_area_w_of","","Set the width as the width of the padded area of the widget at the given index.",276,null],[11,"padded_kid_area_w_of","","Set the width as the `KidArea` width for the widget at the given index, padded at both ends\nby the given scalar.",276,null],[11,"kid_area_h_of","","Set the height as the `KidArea` height of the widget at the given index.",276,null],[11,"padded_kid_area_h_of","","Set the height as the `KidArea` height of the widget at the given index, padded at both\nends by the given scalar.",276,null],[11,"kid_area_wh_of","","Set the dimensions as the `KidArea` dimensions of the widget at the given index.",276,null],[11,"padded_kid_area_wh_of","","Set the dimensions as the `KidArea` dimensions of the widget at the given index, padded at\nall four edges by the given scalar.",276,null],[11,"get_w","","Get the absolute width of the widget as a Scalar value.",276,null],[11,"get_h","","Get the height of the widget.",276,null],[11,"get_wh","","The dimensions for the widget.",276,null],[11,"font","conrod::text","The font to which this glyph belongs. If the glyph is a standalone glyph that owns its resources,\nit no longer has a reference to the font which it was created from (using `standalone()`). In which\ncase, `None` is returned.",279,null],[11,"id","","The glyph identifier for this glyph.",279,null],[11,"scaled","","Augments this glyph with scaling information, making methods that depend on the scale of the glyph\navailable.",279,null],[11,"standalone","","Turns a `Glyph<'a>` into a `Glyph<'static>`. This produces a glyph that owns its resources,\nextracted from the font. This glyph can outlive the font that it comes from.",279,null],[11,"hash","conrod::text::rt","",100,null],[11,"eq","","",100,null],[11,"ne","","",100,null],[11,"cmp","","",100,null],[11,"partial_cmp","","",100,null],[11,"lt","","",100,null],[11,"le","","",100,null],[11,"gt","","",100,null],[11,"ge","","",100,null],[11,"fmt","","",100,null],[11,"clone","","",100,null],[11,"hash","","",102,null],[11,"eq","","",102,null],[11,"ne","","",102,null],[11,"cmp","","",102,null],[11,"partial_cmp","","",102,null],[11,"lt","","",102,null],[11,"le","","",102,null],[11,"gt","","",102,null],[11,"ge","","",102,null],[11,"fmt","","",102,null],[11,"clone","","",102,null],[11,"sub","","",100,null],[11,"add","","",102,null],[11,"sub","","",102,null],[11,"mul","","",102,null],[11,"mul","","",102,null],[11,"div","","",102,null],[11,"div","","",102,null],[11,"add","","",100,null],[11,"sub","","",100,null],[11,"add","","",102,null],[11,"cmp","","",101,null],[11,"partial_cmp","","",101,null],[11,"lt","","",101,null],[11,"le","","",101,null],[11,"gt","","",101,null],[11,"ge","","",101,null],[11,"hash","","",101,null],[11,"eq","","",101,null],[11,"ne","","",101,null],[11,"fmt","","",101,null],[11,"clone","","",101,null],[11,"width","","",101,null],[11,"height","","",101,null],[11,"new","conrod::text","Constructs a new cache. Note that this is just the CPU side of the cache. The GPU texture is managed\nby the user.",280,{"inputs":[{"name":"u32"},{"name":"u32"},{"name":"f32"},{"name":"f32"}],"output":{"name":"cache"}}],[11,"set_scale_tolerance","","Sets the scale tolerance for the cache. See the documentation for `Cache::new` for more information.",280,null],[11,"scale_tolerance","","Returns the current scale tolerance for the cache.",280,null],[11,"set_position_tolerance","","Sets the subpixel position tolerance for the cache. See the documentation for `Cache::new` for more\ninformation.",280,null],[11,"position_tolerance","","Returns the current subpixel position tolerance for the cache.",280,null],[11,"dimensions","","Returns the cache texture dimensions assumed by the cache. For proper operation this should\nmatch the dimensions of the used GPU texture.",280,null],[11,"queue_glyph","","Queue a glyph for caching by the next call to `cache_queued`. `font_id` is used to\ndisambiguate glyphs from different fonts. The user should ensure that `font_id` is unique to the\nfont the glyph is from.",280,null],[11,"clear","","Clears the cache. Does not affect the glyph queue.",280,null],[11,"clear_queue","","Clears the glyph queue.",280,null],[11,"cache_queued","","Caches the queued glyphs. If this is unsuccessful, the queue is untouched.\nAny glyphs cached by previous calls to this function may be removed from the cache to make\nroom for the newly queued glyphs. Thus if you want to ensure that a glyph is in the cache,\nthe most recently cached queue must have contained that glyph.",280,null],[11,"rect_for","","Retrieves the (floating point) texture coordinates of the quad for a glyph in the cache,\nas well as the pixel-space (integer) coordinates that this region should be drawn at.\nIn the majority of cases these pixel-space coordinates should be identical to the bounding box of the\ninput glyph. They only differ if the cache has returned a substitute glyph that is deemed close enough\nto the requested glyph as specified by the cache tolerance parameters.",280,null],[11,"cmp","","",98,null],[11,"partial_cmp","","",98,null],[11,"lt","","",98,null],[11,"le","","",98,null],[11,"gt","","",98,null],[11,"ge","","",98,null],[11,"hash","","",98,null],[11,"eq","","",98,null],[11,"ne","","",98,null],[11,"fmt","","",98,null],[11,"clone","","",98,null],[11,"clone","","",279,null],[11,"fmt","","",99,null],[11,"partial_cmp","","",99,null],[11,"lt","","",99,null],[11,"le","","",99,null],[11,"gt","","",99,null],[11,"ge","","",99,null],[11,"eq","","",99,null],[11,"ne","","",99,null],[11,"clone","","",99,null],[11,"uniform","","Uniform scaling, equivalent to `Scale { x: s, y: s }`.",99,{"inputs":[{"name":"f32"}],"output":{"name":"scale"}}],[11,"next","","",281,null],[11,"next","","",282,null],[11,"get_x","conrod","Return the X value.",283,null],[11,"get_y","","Return the Y value.",283,null],[11,"set_x","","Return the X value.",283,null],[11,"set_y","","Return the Y value.",283,null],[11,"new","","Create a new Envelope Point.",283,{"inputs":[{"name":"scalar"},{"name":"scalar"}],"output":{"name":"point"}}]],"paths":[[3,"Padding"],[3,"Range"],[3,"Rect"],[3,"Ui"],[3,"UiBuilder"],[4,"Bordering"],[4,"Align"],[4,"Axis"],[4,"Corner"],[4,"Direction"],[4,"Dimension"],[4,"Edge"],[4,"Place"],[4,"Position"],[3,"Context"],[3,"DrawState"],[8,"Graphics"],[8,"ImageSize"],[8,"Transformed"],[8,"GenericEvent"],[3,"GlyphCache"],[3,"Hsla"],[3,"Rgba"],[4,"Color"],[4,"Gradient"],[8,"Colorable"],[4,"RawEvent"],[4,"Input"],[4,"Motion"],[3,"Text"],[3,"Move"],[3,"Press"],[3,"MousePress"],[3,"KeyPress"],[3,"Release"],[3,"MouseRelease"],[3,"KeyRelease"],[3,"Drag"],[3,"Click"],[3,"DoubleClick"],[3,"Scroll"],[4,"Event"],[4,"Ui"],[4,"Widget"],[4,"Button"],[8,"Walker"],[3,"UniqueWidgetState"],[3,"Container"],[4,"Node"],[4,"Edge"],[3,"PickWidgets"],[3,"PickScrollableWidgets"],[3,"DepthOrder"],[8,"GraphIndex"],[3,"Graph"],[6,"Children"],[6,"Parents"],[3,"Map"],[4,"Button"],[3,"ControllerButton"],[3,"ControllerAxisArgs"],[4,"Key"],[4,"Button"],[3,"RenderArgs"],[4,"Touch"],[3,"TouchArgs"],[3,"State"],[3,"Mouse"],[4,"ButtonPosition"],[3,"ButtonMap"],[3,"PressedButtons"],[3,"Mouse"],[3,"Widget"],[3,"Events"],[3,"Presses"],[3,"MousePresses"],[3,"MouseButtonPresses"],[3,"KeyPresses"],[3,"Releases"],[3,"MouseButtonReleases"],[3,"MouseReleases"],[3,"KeyReleases"],[3,"Clicks"],[3,"ButtonClicks"],[3,"Drags"],[3,"ButtonDrags"],[3,"Texts"],[3,"Scrolls"],[3,"Global"],[3,"Events"],[3,"UiEvents"],[3,"Primitive"],[4,"PrimitiveKind"],[8,"PrimitiveWalker"],[3,"OwnedPrimitives"],[3,"Primitives"],[3,"WalkOwnedPrimitives"],[3,"Text"],[3,"GlyphId"],[3,"Scale"],[3,"Point"],[3,"Rect"],[3,"Vector"],[4,"Error"],[3,"Id"],[3,"Ids"],[3,"Map"],[3,"NewIds"],[3,"RectsPerLine"],[3,"SelectedRectsPerLine"],[3,"Rects"],[3,"SelectedRects"],[3,"Index"],[3,"XysPerLine"],[3,"XysPerLineFromText"],[3,"Xs"],[3,"Info"],[4,"Break"],[3,"Rects"],[3,"Infos"],[3,"SelectedRects"],[3,"Lines"],[3,"Theme"],[3,"WidgetDefault"],[3,"UniqueDefault"],[3,"UiCell"],[4,"IterDiff"],[3,"Id"],[3,"UpdateArgs"],[3,"KidAreaArgs"],[3,"KidArea"],[3,"Floating"],[3,"CommonBuilder"],[3,"CommonStyle"],[3,"CommonState"],[3,"PreUpdateCache"],[3,"PostUpdateCache"],[4,"Index"],[4,"MaybeParent"],[3,"State"],[8,"Axis"],[3,"Scroll"],[4,"X"],[4,"Y"],[3,"Line"],[3,"State"],[3,"Style"],[4,"Pattern"],[4,"Cap"],[3,"Image"],[3,"State"],[3,"Style"],[3,"PointPath"],[3,"State"],[4,"Style"],[3,"Circle"],[3,"Oval"],[3,"State"],[3,"Polygon"],[3,"State"],[4,"Kind"],[3,"Rectangle"],[4,"Kind"],[3,"State"],[3,"Text"],[3,"Style"],[3,"State"],[4,"Wrap"],[3,"Button"],[3,"Style"],[3,"Image"],[3,"TimesClicked"],[4,"ImageColor"],[8,"Show"],[3,"Flat"],[3,"State"],[3,"Canvas"],[3,"Style"],[4,"Length"],[4,"Direction"],[3,"State"],[3,"Style"],[4,"MaxHeight"],[3,"State"],[3,"DropDownList"],[4,"Event"],[4,"Selection"],[8,"Mode"],[3,"ListSelect"],[3,"State"],[3,"Single"],[3,"Multiple"],[3,"Events"],[3,"EnvelopeEditor"],[3,"Style"],[4,"Event"],[8,"EnvelopePoint"],[3,"State"],[3,"FileNavigator"],[3,"Style"],[4,"Types"],[4,"Event"],[3,"DirectoryView"],[3,"Style"],[4,"Event"],[3,"State"],[3,"Entry"],[3,"State"],[3,"Directory"],[3,"BorderedRectangle"],[3,"Style"],[3,"State"],[3,"List"],[3,"Style"],[3,"Item"],[4,"ItemInstantiation"],[4,"ScrollbarPosition"],[3,"State"],[3,"Items"],[3,"Scrollbar"],[3,"Style"],[3,"Element"],[3,"Matrix"],[3,"State"],[3,"Elements"],[3,"Style"],[3,"State"],[3,"GlyphSlot"],[3,"NumberDialer"],[3,"Style"],[3,"State"],[3,"PlotPath"],[3,"Style"],[4,"Drag"],[4,"Edge"],[3,"State"],[3,"Event"],[3,"RangeSlider"],[3,"Style"],[8,"Axis"],[3,"State"],[3,"Scrollbar"],[3,"Slider"],[3,"Style"],[3,"State"],[3,"Style"],[4,"Layout"],[3,"State"],[3,"Tab"],[3,"Tabs"],[3,"TabRects"],[3,"Style"],[4,"Event"],[3,"State"],[3,"TextBox"],[3,"Style"],[4,"Drag"],[4,"Cursor"],[3,"State"],[3,"TextEdit"],[3,"TitleBar"],[3,"Style"],[3,"State"],[3,"Toggle"],[3,"Style"],[3,"State"],[3,"TimesClicked"],[3,"XYPad"],[3,"Style"],[3,"State"],[8,"Widget"],[3,"IndexSlot"],[3,"State"],[8,"Borderable"],[8,"Labelable"],[8,"Positionable"],[8,"Sizeable"],[3,"ModifierKey"],[6,"NodeIndex"],[3,"Glyph"],[3,"GlyphCache"],[3,"GlyphIter"],[3,"LayoutIter"],[6,"Point"]]}; initSearch(searchIndex);