Crate cursive_extras

source ·
Expand description

Crates.io

Cursive Extras

Extra views for the Cursive TUI library as well some helper functions and macros

Features

  • image_view: Enables the ImageView view
  • tabs: Tabbed views similar to cursive-tabs
  • buffered_backend: Enables a termion based buffered backend
  • advanced: Advanced views

Macros

Convenience macro that makes AdvancedSelectViews easier to create
Convenience macro that wraps a view in a CircularFocus that wraps the arrow keys
Convenience macro that creates a horizontal layout of views
Convenience macro that updates the specified StatusView reference with an error message and returns from the current callback if an error happens, returns the Ok value otherwise
Convenience macro that makes SelectViews easier to create
Convenience macro that generates a settings view using sub-views wrapped in a Dialog view
Same as the settings! macro, but allows for a custom confirmation text to be defined as well
Convenience macro to generate a TabLayer view
Convenience macro to generate a TabDialog view
Convenience macro that creates a vertical layout of views

Structs

A special button view that can be multiple lines, have data attached to it, and also accepts StyledStrings
A view that is a lot like a SelectView but allows mutable access to the selection and allows multiline items
Horizontal divider view
View that can render a low res image as text
Loading animation view that runs a task in a background thread and shows a loading animation and message while it completes and allows for retrieval of a return value. It is recommended to use load_resource() instead of this directly since it has a simpler interface
View that can be used to report an application’s status. It is meant to be placed at the bottom of the main Cursive layer
The internal view used by the tabbed views
A dialog-like view with tabs. This is very similar to the TabPanel view in cursive_tabs
A view similar to TabDialog but it fills up all the available space
Vertical divider view

Traits

Extension trait for SpannedString and SpannedStr

Functions

Convenience function that generates a better looking Cursive theme
Creates a termion-based buffered backend cursive root using the cursive_buffered_backend crate
Convenience function that creates a dialog that runs a callback if the user selects “Yes”
Horizontal spacer fills all the available width
Vertical spacer fills all the available height
Horizontal spacer with fixed width
Vertical spacer with fixed height
Convenience function that return the state of a named check box
Convenience function that shows a user a dialog box with a message that includes a back button
Convenience function that returns a horizontal LinearLayout that is a named check box with a label
Same as labeled_checkbox() but also accepts a closure to execute when the check box’s state changes
Convenience function that shows a loading pop up
Convenience function that creates a named EditView that has a better looking style and can optionally act as a password entry box
Same as styled_editview() but allows for a color to be chosen instead of using the highlight color

Type Definitions

A spacer between 2 views
Iterator over the views and their IDs in a tabbed view
Mutable iterator over the views and their IDs in a tabbed view