var searchIndex = {}; searchIndex["cursive"] = {"doc":"# Cursive","items":[[3,"Cursive","cursive","Central part of the cursive library.",null,null],[0,"event","","User-input events and their effects.",null,null],[4,"EventResult","cursive::event","Answer to an event notification.\nThe event can be consumed or ignored.",null,null],[13,"Ignored","","The event was ignored. The parent can keep handling it.",0,null],[13,"Consumed","","The event was consumed. An optionnal callback to run is attached.",0,null],[4,"Key","","Represents a key, or a combination of keys.",null,null],[13,"Enter","","Both Enter and numpad Enter",1,null],[13,"Tab","","Tabulation key",1,null],[13,"ShiftTab","","",1,null],[13,"Backspace","","",1,null],[13,"Resize","","Indicates the window was resized",1,null],[13,"Esc","","Escape key.",1,null],[13,"NumpadCenter","","The 5 in the center of the keypad, when numlock is disabled.",1,null],[13,"Left","","",1,null],[13,"ShiftLeft","","Left arrow while shift is pressed.",1,null],[13,"AltLeft","","",1,null],[13,"AltShiftLeft","","",1,null],[13,"CtrlLeft","","",1,null],[13,"CtrlShiftLeft","","",1,null],[13,"CtrlAltLeft","","",1,null],[13,"Right","","",1,null],[13,"ShiftRight","","Right arrow while shift is pressed.",1,null],[13,"AltRight","","",1,null],[13,"AltShiftRight","","",1,null],[13,"CtrlRight","","",1,null],[13,"CtrlShiftRight","","",1,null],[13,"CtrlAltRight","","",1,null],[13,"Up","","",1,null],[13,"ShiftUp","","",1,null],[13,"AltUp","","",1,null],[13,"AltShiftUp","","",1,null],[13,"CtrlUp","","",1,null],[13,"CtrlShiftUp","","",1,null],[13,"CtrlAltUp","","",1,null],[13,"Down","","",1,null],[13,"ShiftDown","","",1,null],[13,"AltDown","","",1,null],[13,"AltShiftDown","","",1,null],[13,"CtrlDown","","",1,null],[13,"CtrlShiftDown","","",1,null],[13,"CtrlAltDown","","",1,null],[13,"PageUp","","",1,null],[13,"ShiftPageUp","","",1,null],[13,"AltPageUp","","",1,null],[13,"AltShiftPageUp","","",1,null],[13,"CtrlPageUp","","",1,null],[13,"CtrlShiftPageUp","","",1,null],[13,"CtrlAltPageUp","","",1,null],[13,"PageDown","","",1,null],[13,"ShiftPageDown","","",1,null],[13,"AltPageDown","","",1,null],[13,"AltShiftPageDown","","",1,null],[13,"CtrlPageDown","","",1,null],[13,"CtrlShiftPageDown","","",1,null],[13,"CtrlAltPageDown","","",1,null],[13,"Home","","",1,null],[13,"ShiftHome","","",1,null],[13,"AltHome","","",1,null],[13,"AltShiftHome","","",1,null],[13,"CtrlHome","","",1,null],[13,"CtrlShiftHome","","",1,null],[13,"CtrlAltHome","","",1,null],[13,"End","","",1,null],[13,"ShiftEnd","","",1,null],[13,"AltEnd","","",1,null],[13,"AltShiftEnd","","",1,null],[13,"CtrlEnd","","",1,null],[13,"CtrlShiftEnd","","",1,null],[13,"CtrlAltEnd","","",1,null],[13,"Del","","Delete key",1,null],[13,"ShiftDel","","",1,null],[13,"AltDel","","",1,null],[13,"AltShiftDel","","",1,null],[13,"CtrlDel","","",1,null],[13,"CtrlShiftDel","","",1,null],[13,"Ins","","Insert key.",1,null],[13,"CtrlIns","","Insert key while ctrl is pressed.",1,null],[13,"AltIns","","",1,null],[13,"CtrlAltIns","","",1,null],[13,"F","","",1,null],[13,"ShiftF","","",1,null],[13,"AltF","","",1,null],[13,"CtrlF","","",1,null],[13,"CtrlShiftF","","",1,null],[13,"CtrlChar","","",1,null],[13,"Unknown","","",1,null],[4,"Event","","Represents an event as seen by the application.",null,null],[13,"Char","","A text character was entered.",2,null],[13,"Key","","A key was pressed.",2,null],[6,"Callback","","Callback is a function that can be triggered by an event.\nIt has a mutable access to the cursive root.",null,null],[8,"ToEvent","","Generic trait to convert a value to an event.",null,null],[10,"to_event","","",3,null],[11,"with_cb","","",0,{"inputs":[{"name":"f"}],"output":{"name":"self"}}],[11,"hash","","",1,null],[11,"clone","","",1,null],[11,"eq","","",1,null],[11,"ne","","",1,null],[11,"fmt","","",1,null],[11,"hash","","",2,null],[11,"clone","","",2,null],[11,"eq","","",2,null],[11,"ne","","",2,null],[11,"to_event","","",1,null],[11,"to_event","","",2,null],[0,"view","cursive","Defines various views to use when creating the layout.",null,null],[3,"Position","cursive::view","Location of the view on screen",null,null],[12,"x","","",4,null],[12,"y","","",4,null],[3,"ScrollBase","","Provide scrolling functionalities to a view.",null,null],[12,"start_line","","",5,null],[12,"content_height","","",5,null],[12,"view_height","","",5,null],[12,"scrollbar_padding","","",5,null],[3,"IdView","","Wrapper view that allows to select its content with a fixed string id.",null,null],[3,"BoxView","","`BoxView` is a wrapper around an other view, with a given minimum size.",null,null],[3,"Button","","Simple text label with a callback when ENTER is pressed.\nA button shows its content in a single line and has a fixed size.",null,null],[3,"Dialog","","Popup-like view with a main content, and optional buttons under it.",null,null],[3,"EditView","","Input box where the user can enter and edit text.",null,null],[3,"FullView","","Simple wrapper view that asks for all the space it can get.",null,null],[3,"KeyEventView","","A simple wrapper view that catches some ignored event from its child.",null,null],[3,"LinearLayout","","Arranges its children linearly according to its orientation.",null,null],[3,"MenuPopup","","fd",null,null],[3,"ViewPath","","Represents a path to a single view in the layout.",null,null],[12,"path","","List of turns to make on decision nodes when descending the view tree.\nSimple nodes (with one fixed child) are skipped.",6,null],[3,"SelectView","","View to select an item among a list.",null,null],[3,"ShadowView","","Wrapper view that adds a shadow.",null,null],[3,"StackView","","Simple stack of views.\nOnly the top-most view is active and can receive input.",null,null],[3,"TextView","","A simple view showing a fixed text",null,null],[3,"TrackedView","","",null,null],[12,"view","","",7,null],[12,"offset","","",7,null],[3,"SizedView","","Wrapper around a view that remembers its size.",null,null],[12,"view","","Wrapped view.",8,null],[12,"size","","Cached size from the last layout() call.",8,null],[4,"Offset","","",null,null],[13,"Center","","In the center of the screen",9,null],[13,"Absolute","","Place top-left corner at the given absolute coordinates",9,null],[13,"Parent","","Offset from the previous layer's top-left corner.",9,null],[4,"Selector","","Selects a single view (if any) in the tree.",null,null],[13,"Id","","Selects a view from its ID",10,null],[13,"Path","","Selects a view from its path",10,null],[11,"clone","","",4,null],[11,"fmt","","",4,null],[11,"eq","","",4,null],[11,"ne","","",4,null],[11,"new","","",4,{"inputs":[{"name":"offset"},{"name":"offset"}],"output":{"name":"self"}}],[11,"center","","",4,{"inputs":[],"output":{"name":"self"}}],[11,"absolute","","",4,{"inputs":[{"name":"t"}],"output":{"name":"self"}}],[11,"parent","","",4,{"inputs":[{"name":"t"}],"output":{"name":"self"}}],[11,"compute_offset","","",4,null],[11,"clone","","",9,null],[11,"fmt","","",9,null],[11,"eq","","",9,null],[11,"ne","","",9,null],[11,"compute_offset","","",9,null],[11,"default","","",6,{"inputs":[],"output":{"name":"self"}}],[11,"new","","Creates a new empty path.",6,{"inputs":[],"output":{"name":"self"}}],[11,"from","","Creates a path from the given item.",6,{"inputs":[{"name":"t"}],"output":{"name":"self"}}],[11,"default","","",5,{"inputs":[],"output":{"name":"scrollbase"}}],[11,"new","","",5,{"inputs":[],"output":{"name":"self"}}],[11,"bar_padding","","",5,null],[11,"set_heights","","Call this method whem the content or the view changes.",5,null],[11,"scrollable","","Returns `TRUE` if the view needs to scroll.",5,null],[11,"can_scroll_up","","Returns `TRUE` unless we are at the top.",5,null],[11,"can_scroll_down","","Returns `TRUE` unless we are at the bottom.",5,null],[11,"scroll_top","","Scroll to the top of the view.",5,null],[11,"scroll_to","","Makes sure that the given line is visible, scrolling if needed.",5,null],[11,"scroll_bottom","","Scroll to the bottom of the view.",5,null],[11,"scroll_down","","Scroll down by the given number of line, never going further than the bottom of the view.",5,null],[11,"scroll_up","","Scroll up by the given number of lines, never going above the top of the view.",5,null],[11,"draw","","Draws the scroll bar and the content using the given drawer.",5,null],[11,"new","","Creates a new `BoxView` with the given minimum size and content",11,{"inputs":[{"name":"s"},{"name":"t"}],"output":{"name":"self"}}],[11,"get_view","","",11,null],[11,"get_view_mut","","",11,null],[11,"wrap_get_min_size","","",11,null],[11,"new","","Creates a new button with the given content and callback.",12,{"inputs":[{"name":"str"},{"name":"f"}],"output":{"name":"self"}}],[11,"draw","","",12,null],[11,"get_min_size","","",12,null],[11,"on_event","","",12,null],[11,"take_focus","","",12,null],[11,"new","","Creates a new Dialog with the given content.",13,{"inputs":[{"name":"v"}],"output":{"name":"self"}}],[11,"info","","",13,{"inputs":[{"name":"str"}],"output":{"name":"self"}}],[11,"button","","Adds a button to the dialog with the given label and callback.",13,null],[11,"h_align","","Sets the horizontal alignment for the buttons, if any.\nOnly works if the buttons are as a row at the bottom of the dialog.",13,null],[11,"v_align","","Sets the vertical alignment for the buttons, if any.\nOnly works if the buttons are as a column to the right of the dialog.",13,null],[11,"dismiss_button","","Shortcut method to add a button that will dismiss the dialog.",13,null],[11,"title","","Sets the title of the dialog.\nIf not empty, it will be visible at the top.",13,null],[11,"padding","","Sets the padding in the dialog (around content and buttons).",13,null],[11,"draw","","",13,null],[11,"get_min_size","","",13,null],[11,"layout","","",13,null],[11,"on_event","","",13,null],[11,"take_focus","","",13,null],[11,"find","","",13,null],[11,"default","","",14,{"inputs":[],"output":{"name":"self"}}],[11,"new","","Creates a new, empty edit view.",14,{"inputs":[],"output":{"name":"self"}}],[11,"set_content","","Replace the entire content of the view with the given one.",14,null],[11,"get_content","","Get the current text.",14,null],[11,"content","","Sets the current content to the given value.",14,null],[11,"min_length","","Sets the minimum length for this view.\n(This applies to the layout, not the content.)",14,null],[11,"with_id","","Wraps this view into an IdView with the given id.",14,null],[11,"draw","","",14,null],[11,"layout","","",14,null],[11,"get_min_size","","",14,null],[11,"take_focus","","",14,null],[11,"on_event","","",14,null],[11,"new","","Wraps the given view into a new FullView.",15,{"inputs":[{"name":"t"}],"output":{"name":"self"}}],[11,"get_view","","",15,null],[11,"get_view_mut","","",15,null],[11,"wrap_get_min_size","","",15,null],[11,"new","","Wraps the given view. It will be selectable with the given id.",16,{"inputs":[{"name":"str"},{"name":"t"}],"output":{"name":"self"}}],[11,"get_view","","",16,null],[11,"get_view_mut","","",16,null],[11,"wrap_find","","",16,null],[11,"new","","Wraps the given view in a new KeyEventView.",17,{"inputs":[{"name":"v"}],"output":{"name":"self"}}],[11,"register","","Registers a callback when the given key is ignored by the child.",17,null],[11,"get_view","","",17,null],[11,"get_view_mut","","",17,null],[11,"wrap_on_event","","",17,null],[11,"new","","Creates a new layout with the given orientation.",18,{"inputs":[{"name":"orientation"}],"output":{"name":"self"}}],[11,"weight","","Modifies the weight of the last child added.",18,null],[11,"child","","Adds a child to the layout.",18,null],[11,"vertical","","Creates a new vertical layout.",18,{"inputs":[],"output":{"name":"self"}}],[11,"horizontal","","Creates a new horizontal layout.",18,{"inputs":[],"output":{"name":"self"}}],[11,"draw","","",18,null],[11,"layout","","",18,null],[11,"get_min_size","","",18,null],[11,"on_event","","",18,null],[11,"new","","",19,{"inputs":[{"name":"rc"}],"output":{"name":"self"}}],[11,"align","","Sets the alignment for this view.",19,null],[11,"on_dismiss","","",19,null],[11,"on_action","","",19,null],[11,"draw","","",19,null],[11,"get_min_size","","",19,null],[11,"on_event","","",19,null],[11,"layout","","",19,null],[11,"new","","Wraps the given view.",20,{"inputs":[{"name":"t"}],"output":{"name":"self"}}],[11,"left_padding","","",20,null],[11,"top_padding","","",20,null],[11,"get_view","","",20,null],[11,"get_view_mut","","",20,null],[11,"wrap_get_min_size","","",20,null],[11,"wrap_layout","","",20,null],[11,"wrap_draw","","",20,null],[11,"new","","Creates a new empty SelectView.",21,{"inputs":[],"output":{"name":"self"}}],[11,"set_on_select","","",21,null],[11,"on_select","","Sets a function to be called when an item is selected.",21,null],[11,"align","","Sets the alignment for this view.",21,null],[11,"v_align","","Sets the vertical alignment for this view.\n(If the view is given too much space vertically.)",21,null],[11,"h_align","","Sets the horizontal alignment for this view.",21,null],[11,"selection","","Returns the value of the currently selected item.",21,null],[11,"add_item","","Adds a item to the list, with given label and value.",21,null],[11,"item","","Chainable variant of add_item",21,null],[11,"with_id","","Wraps this view into an IdView with the given id.",21,null],[11,"add_item_str","","Convenient method to use the label as value.",21,null],[11,"item_str","","Chainable variant of add_item_str",21,null],[11,"draw","","",21,null],[11,"get_min_size","","",21,null],[11,"on_event","","",21,null],[11,"take_focus","","",21,null],[11,"layout","","",21,null],[11,"new","","Wraps the given view.",8,{"inputs":[{"name":"t"}],"output":{"name":"self"}}],[11,"get_view","","",8,null],[11,"get_view_mut","","",8,null],[11,"wrap_layout","","",8,null],[11,"default","","",22,{"inputs":[],"output":{"name":"self"}}],[11,"new","","Creates a new empty StackView",22,{"inputs":[],"output":{"name":"self"}}],[11,"add_layer","","Adds new view on top of the stack in the center of the screen.",22,null],[11,"add_layer_at","","Adds a view on top of the stack.",22,null],[11,"pop_layer","","Remove the top-most layer.",22,null],[11,"draw","","",22,null],[11,"on_event","","",22,null],[11,"layout","","",22,null],[11,"get_min_size","","",22,null],[11,"take_focus","","",22,null],[11,"find","","",22,null],[11,"new","","Creates a new TextView with the given content.",23,{"inputs":[{"name":"str"}],"output":{"name":"self"}}],[11,"h_align","","Sets the horizontal alignment for this view.",23,null],[11,"v_align","","Sets the vertical alignment for this view.",23,null],[11,"align","","Sets the alignment for this view.",23,null],[11,"set_content","","Replace the text in this view.",23,null],[11,"get_content","","Returns the current text in this view.",23,null],[11,"draw","","",23,null],[11,"on_event","","",23,null],[11,"get_min_size","","",23,null],[11,"take_focus","","",23,null],[11,"layout","","",23,null],[11,"new","","",7,{"inputs":[{"name":"t"}],"output":{"name":"self"}}],[11,"with_id","","",7,null],[11,"get_view","","",7,null],[11,"get_view_mut","","",7,null],[11,"wrap_draw","","",7,null],[8,"ViewWrapper","","Generic wrapper around a view.",null,null],[10,"get_view","","Get an immutable reference to the wrapped view, so that we can forward some calls to it.",24,null],[10,"get_view_mut","","Get a mutable reference to the wrapped view, for the mutable methods.",24,null],[11,"wrap_draw","","Wraps the draw method.",24,null],[11,"wrap_get_min_size","","Wraps the get_min_size method.",24,null],[11,"wrap_on_event","","Wraps the on_event method.",24,null],[11,"wrap_layout","","Wraps the layout method",24,null],[11,"wrap_take_focus","","Wraps the take_focus method",24,null],[11,"wrap_find","","",24,null],[8,"View","","Main trait defining a view behaviour.",null,null],[11,"on_event","","Called when a key was pressed. Default implementation just ignores it.",25,null],[11,"get_min_size","","Returns the minimum size the view requires with the given restrictions.",25,null],[11,"layout","","Called once the size for this view has been decided, so it can\npropagate the information to its children.",25,null],[10,"draw","","Draws the view with the given printer (includes bounds) and focus.",25,null],[11,"find","","Finds the view pointed to by the given path.\nReturns None if the path doesn't lead to a view.",25,null],[11,"take_focus","","This view is offered focus. Will it take it?",25,null],[0,"printer","cursive","Makes drawing on ncurses windows easier.",null,null],[3,"Printer","cursive::printer","Convenient interface to draw on a subset of the screen.",null,null],[12,"offset","","Offset into the window this printer should start drawing at.",26,null],[12,"size","","Size of the area we are allowed to draw on.",26,null],[12,"focused","","Whether the view to draw is currently focused or not.",26,null],[12,"theme","","Currently used theme",26,null],[11,"clone","","",26,null],[11,"new","","Creates a new printer on the given window.",26,{"inputs":[{"name":"t"},{"name":"theme"}],"output":{"name":"self"}}],[11,"print","","Prints some text at the given position relative to the window.",26,null],[11,"print_vline","","Prints a vertical line using the given character.",26,null],[11,"print_hline","","Prints a horizontal line using the given character.",26,null],[11,"with_color","","Call the given closure with a colored printer,\nthat will apply the given color on prints.",26,null],[11,"with_effect","","Same as `with_color`, but apply a ncurses style instead,\nlike `ncurses::A_BOLD()` or `ncurses::A_REVERSE()`.",26,null],[11,"print_box","","Prints a rectangular box.",26,null],[11,"with_selection","","",26,null],[11,"print_hdelim","","",26,null],[11,"sub_printer","","Returns a printer on a subset of this one's area.",26,null],[0,"vec","cursive","Points on the 2D character grid.",null,null],[3,"Vec2","cursive::vec","Simple 2D size, in characters.",null,null],[12,"x","","X coordinate (column), from left to right.",27,null],[12,"y","","Y coordinate (row), from top to bottom.",27,null],[3,"Vec4","","Four values representing each direction.",null,null],[12,"left","","Left margin",28,null],[12,"right","","Right margin",28,null],[12,"top","","Top margin",28,null],[12,"bottom","","Bottom margin",28,null],[8,"ToVec2","","A generic trait for converting a value into a 2D vector.",null,null],[10,"to_vec2","","Converts self into a Vec2.",29,null],[8,"ToVec4","","Generic trait for converting a value into a Vec4.",null,null],[10,"to_vec4","","Converts self to a Vec4.",30,null],[11,"fmt","","",27,null],[11,"eq","","",27,null],[11,"ne","","",27,null],[11,"clone","","",27,null],[11,"partial_cmp","","",27,null],[11,"new","","Creates a new Vec2 from coordinates.",27,{"inputs":[{"name":"usize"},{"name":"usize"}],"output":{"name":"self"}}],[11,"max","","Returns a new Vec2 that is a maximum per coordinate.",27,{"inputs":[{"name":"self"},{"name":"self"}],"output":{"name":"self"}}],[11,"min","","Returns a new Vec2 that is no larger than any input in both dimensions.",27,{"inputs":[{"name":"self"},{"name":"self"}],"output":{"name":"self"}}],[11,"keep_x","","Returns a vector with the X component of self, and y=0.",27,null],[11,"keep_y","","Returns a vector with the Y component of self, and x=0.",27,null],[11,"zero","","Alias for Vec::new(0,0).",27,{"inputs":[],"output":{"name":"self"}}],[11,"stack_vertical","","Returns (max(self.x,other.x), self.y+other.y)",27,null],[11,"stack_horizontal","","Returns (self.x+other.x, max(self.y,other.y))",27,null],[11,"to_vec2","","",27,null],[11,"add","","",27,null],[11,"sub","","",27,null],[11,"div","","",27,null],[11,"mul","","",27,null],[11,"clone","","",28,null],[11,"new","","Creates a new Vec4.",28,{"inputs":[{"name":"usize"},{"name":"usize"},{"name":"usize"},{"name":"usize"}],"output":{"name":"self"}}],[11,"horizontal","","Returns left + right.",28,null],[11,"vertical","","Returns top + bottom.",28,null],[11,"combined","","Returns (left+right, top+bottom).",28,null],[11,"top_left","","Returns (left, top).",28,null],[11,"bot_right","","Returns (right, bottom).",28,null],[11,"to_vec4","","",28,null],[11,"add","","",28,null],[11,"sub","","",28,null],[11,"div","","",28,null],[11,"mul","","",28,null],[0,"theme","cursive","Module to handle colors and themes in the UI.",null,null],[3,"Theme","cursive::theme","Represents the style a Cursive application will use.",null,null],[12,"shadow","","Wheter views in a StackView should have shadows.",31,null],[12,"borders","","How view borders should be drawn.",31,null],[12,"colors","","What colors should be used through the application?",31,null],[3,"Palette","","Color configuration for the application.",null,null],[12,"background","","Color used for the application background.",32,null],[12,"shadow","","Color used for View shadows.",32,null],[12,"view","","Color used for View backgrounds.",32,null],[12,"primary","","Primary color used for the text.",32,null],[12,"secondary","","Secondary color used for the text.",32,null],[12,"tertiary","","Tertiary color used for the text.",32,null],[12,"title_primary","","Primary color used for title text.",32,null],[12,"title_secondary","","Secondary color used for title text.",32,null],[12,"highlight","","Color used for highlighting text.",32,null],[12,"highlight_inactive","","Color used for highlighting inactive text.",32,null],[4,"Effect","","",null,null],[13,"Simple","","",33,null],[13,"Reverse","","",33,null],[4,"ColorStyle","","Possible color style for a cell.",null,null],[13,"Background","","Application background, where no view is present.",34,null],[13,"Shadow","","Color used by view shadows. Only background matters.",34,null],[13,"Primary","","Main text with default background.",34,null],[13,"Secondary","","Secondary text color, with default background.",34,null],[13,"Tertiary","","Tertiary text color, with default background.",34,null],[13,"TitlePrimary","","Title text color with default background.",34,null],[13,"TitleSecondary","","Alternative color for a title.",34,null],[13,"Highlight","","Alternate text with highlight background.",34,null],[13,"HighlightInactive","","Highlight color for inactive views (not in focus).",34,null],[4,"BorderStyle","","Specifies how some borders should be drawn.",null,null],[13,"NoBorder","","Don't draw any border.",35,null],[13,"Simple","","Simple borders.",35,null],[13,"Outset","","Outset borders with a simple 3d effect.",35,null],[4,"Color","","Represents a color used by the theme.",null,null],[13,"Black","","Color ID used by ncurses.",36,null],[13,"Red","","",36,null],[13,"Green","","",36,null],[13,"Yellow","","",36,null],[13,"Blue","","",36,null],[13,"Magenta","","",36,null],[13,"Cyan","","",36,null],[13,"White","","",36,null],[13,"Rgb","","",36,null],[13,"RgbLowRes","","",36,null],[4,"Error","","Possible error returned when loading a theme.",null,null],[13,"Io","","An error occured when reading the file.",37,null],[13,"Parse","","An error occured when parsing the toml content.",37,null],[5,"load_theme","","Loads a theme file, and returns its representation if everything worked well.",null,{"inputs":[{"name":"p"}],"output":{"name":"result"}}],[5,"load_default","","Loads the default theme, and returns its representation.",null,{"inputs":[],"output":{"name":"theme"}}],[11,"clone","","",34,null],[11,"id","","Returns the ncurses pair ID associated with this color pair.",34,null],[11,"fmt","","",31,null],[11,"clone","","",31,null],[11,"default","","",31,{"inputs":[],"output":{"name":"self"}}],[11,"fmt","","",35,null],[11,"clone","","",35,null],[11,"fmt","","",32,null],[11,"clone","","",32,null],[11,"fmt","","",36,null],[11,"clone","","",36,null],[11,"fmt","","",37,null],[11,"from","","",37,{"inputs":[{"name":"error"}],"output":{"name":"self"}}],[0,"align","cursive","Tools to control view alignment",null,null],[3,"Align","cursive::align","Specifies the alignment along both horizontal and vertical directions.",null,null],[12,"h","","",38,null],[12,"v","","",38,null],[4,"HAlign","","Horizontal alignment",null,null],[13,"Left","","",39,null],[13,"Center","","",39,null],[13,"Right","","",39,null],[4,"VAlign","","Vertical alignment",null,null],[13,"Top","","",40,null],[13,"Center","","",40,null],[13,"Bottom","","",40,null],[11,"new","","Creates a new Align object from the given horizontal and vertical alignments.",38,{"inputs":[{"name":"halign"},{"name":"valign"}],"output":{"name":"self"}}],[11,"top_left","","Creates a top-left alignment.",38,{"inputs":[],"output":{"name":"self"}}],[11,"top_right","","Creates a top-right alignment.",38,{"inputs":[],"output":{"name":"self"}}],[11,"bot_left","","Creates a bottom-left alignment.",38,{"inputs":[],"output":{"name":"self"}}],[11,"bot_right","","Creates a bottom-right alignment.",38,{"inputs":[],"output":{"name":"self"}}],[11,"center","","Creates an alignment centered both horizontally and vertically.",38,{"inputs":[],"output":{"name":"self"}}],[11,"get_offset","","To draw a view with size `content` in a printer with size `container`, this returns the\noffset to start printing the view at.",39,null],[11,"get_offset","","To draw a view with size `content` in a printer with size `container`, this returns the\noffset to start printing the view at.",40,null],[0,"orientation","cursive","Define an Orientation and associated methods.",null,null],[4,"Orientation","cursive::orientation","Describes a vertical or horizontal orientation for a view.",null,null],[13,"Horizontal","","Horizontal orientation",41,null],[13,"Vertical","","Vertical orientation",41,null],[11,"eq","","",41,null],[11,"fmt","","",41,null],[11,"clone","","",41,null],[11,"get","","Returns the component of the given vector corresponding to this orientation.\n(Horizontal will return the x value, and Vertical will return the y value.)",41,null],[11,"swap","","Returns the other orientation.",41,null],[11,"get_ref","","Returns a mutable reference to the component of the given vector\ncorresponding to this orientation.",41,null],[11,"stack","","Takes an iterator on sizes, and stack them in the current orientation,\nreturning the size of the required bounding box.",41,null],[0,"menu","cursive","",null,null],[3,"MenuTree","cursive::menu","",null,null],[12,"children","","",42,null],[4,"MenuItem","","",null,null],[13,"Leaf","","",43,null],[13,"Subtree","","",43,null],[13,"Delimiter","","",43,null],[11,"default","","",42,{"inputs":[],"output":{"name":"menutree"}}],[11,"label","","",43,null],[11,"is_delimiter","","",43,null],[11,"is_subtree","","",43,null],[11,"new","","",42,{"inputs":[],"output":{"name":"self"}}],[11,"len","","",42,null],[11,"clear","","",42,null],[11,"is_empty","","",42,null],[11,"add_delimiter","","",42,null],[11,"delimiter","","",42,null],[11,"add_leaf","","",42,null],[11,"leaf","","",42,null],[11,"add_subtree","","",42,null],[11,"subtree","","",42,null],[11,"with","","",42,null],[6,"ScreenId","cursive","Identifies a screen in the cursive ROOT.",null,null],[11,"default","","",44,{"inputs":[],"output":{"name":"self"}}],[11,"new","","Creates a new Cursive root, and initialize ncurses.",44,{"inputs":[],"output":{"name":"self"}}],[11,"select_menubar","","Selects the menubar",44,null],[11,"set_autohide_menu","","Sets the menubar autohide_menubar feature.",44,null],[11,"menubar","","Retrieve the menu tree used by the menubar.",44,null],[11,"current_theme","","Returns the currently used theme",44,null],[11,"load_theme","","Loads a theme from the given file.",44,null],[11,"set_fps","","Sets the refresh rate, in frames per second.",44,null],[11,"screen_mut","","Returns a mutable reference to the currently active screen.",44,null],[11,"add_screen","","Adds a new screen, and returns its ID.",44,null],[11,"add_active_screen","","Convenient method to create a new screen, and set it as active.",44,null],[11,"set_screen","","Sets the active screen. Panics if no such screen exist.",44,null],[11,"find","","Tries to find the view pointed to by the given path.\nIf the view is not found, or if it is not of the asked type,\nit returns None.",44,null],[11,"find_id","","Convenient method to use `find` with a `Selector::Id`.",44,null],[11,"add_global_callback","","Adds a global callback.",44,null],[11,"add_layer","","Convenient method to add a layer to the current screen.",44,null],[11,"pop_layer","","Convenient method to remove a layer from the current screen.",44,null],[11,"screen_size","","Returns the size of the screen, in characters.",44,null],[11,"run","","Runs the event loop.",44,null],[11,"quit","","Stops the event loop.",44,null],[11,"drop","","",44,null],[14,"wrap_impl!","","Convenient macro to implement to two methods required for the ViewWrapper trait.",null,null],[11,"wrap_draw","cursive::view","Wraps the draw method.",24,null],[11,"wrap_get_min_size","","Wraps the get_min_size method.",24,null],[11,"wrap_on_event","","Wraps the on_event method.",24,null],[11,"wrap_layout","","Wraps the layout method",24,null],[11,"wrap_take_focus","","Wraps the take_focus method",24,null],[11,"wrap_find","","",24,null]],"paths":[[4,"EventResult"],[4,"Key"],[4,"Event"],[8,"ToEvent"],[3,"Position"],[3,"ScrollBase"],[3,"ViewPath"],[3,"TrackedView"],[3,"SizedView"],[4,"Offset"],[4,"Selector"],[3,"BoxView"],[3,"Button"],[3,"Dialog"],[3,"EditView"],[3,"FullView"],[3,"IdView"],[3,"KeyEventView"],[3,"LinearLayout"],[3,"MenuPopup"],[3,"ShadowView"],[3,"SelectView"],[3,"StackView"],[3,"TextView"],[8,"ViewWrapper"],[8,"View"],[3,"Printer"],[3,"Vec2"],[3,"Vec4"],[8,"ToVec2"],[8,"ToVec4"],[3,"Theme"],[3,"Palette"],[4,"Effect"],[4,"ColorStyle"],[4,"BorderStyle"],[4,"Color"],[4,"Error"],[3,"Align"],[4,"HAlign"],[4,"VAlign"],[4,"Orientation"],[3,"MenuTree"],[4,"MenuItem"],[3,"Cursive"]]}; initSearch(searchIndex);