All Versions
15
Latest Version
Avg Release Cycle
65 days
Latest Release
1764 days ago
Changelog History
Page 1
Changelog History
Page 1
-
v0.15.0 Changes
May 26, 2020๐ฅ Breaking changes
- Split library into a backend-agnostic
cursive-core
and a user-facingcursive
. - 0๏ธโฃ
Cursive::default
now needs thecursive::CursiveExt
trait to be in scope. - โก๏ธ Update dependencies:
- crossterm to 0.17.
- enumset to 1.0
- ahash to 0.3
- pulldown-cmark to 0.7
- โ Add
PaletteColor::HighlightText
AnyCb
now takes a&mut dyn View
rather than a&mut dyn Any
.
โก๏ธ API updates
- โ Added
cursive::{default,ncurses,pancurses,termion,crossterm,blt,dummy}
functions. - โ Add
Cursive::debug_name
- โ Add
ScreensView
to move some code away from theCursive
root- Reworked global callbacks configuration
- Ctrl-C can be rewired to no longer exit the application
- Add
SelectView::(try_)iter_mut()
- ๐
Dialog::{test, info}
now acceptStyledString
as input - โ Add missing functions to Checkbox re: enabled state
๐ Bugfixes
- ๐ Fix Ctrl-Z binding for ncurses
- ๐ Fix potential crash with empty
SelectView
- โ Add
toml
andmarkdown
features to docs.rs
- Split library into a backend-agnostic
-
v0.14.0 Changes
January 14, 2020๐ฅ Breaking changes
cursive::event::AnyCb
changed fromBox<...>
to&mut ...
, so users ofView::call_on_any
no longer need to box their closures.- โ Remove
BoxView::squishable
. - โก๏ธ Update crossterm to 0.14.
- โ Removed
From
implementations forMargins
. UseMargins::lrtb
and the like instead.- Or
Dialog::padding_lrtb
.
- Or
- ๐ Renamed multiple types (old names are still re-exported, but deprecated):
BoxView
->ResizedView
ViewBox
->BoxedView
SizedView
->LastSizeView
Identifiable
->Nameable
Boxable
->Resizable
IdView
->NamedView
Selector::Id
->Selector::Name
with_id
->with_name
call_on_id
->call_on_name
find_id
->find_name
focus_id
->focus_name
โก๏ธ API updates
- ๐
SelectView::{item, with_all}
now acceptS: Into<StyledString>
for colored labels. - Add
ScrollView::scroll_to_important_area
. - Add
LinearLayout::set_focus_index
. - โ Add
XY::{sum, product}
. view::scroll
is now a public module.- Add
Cursive::process_events
andCursive::post_events
.- This gives users finer control than
Cursive::step
.
- This gives users finer control than
Layer
now has acolor
option.LinearLayout
can now directly add boxed views without re-boxing.- โ Add inner getters to
EnableableView
. - Add
PaddedView::get_inner(_mut)
. - โ Add a bunch of constructors for
Margins
. - โ Add
Dialog::padding_lrtb
- Add
Dialog::set_padding*
- โ Add
PaddedView::lrtb
๐ Improvements
- ๐ Changed the default color for
TitleSecondary
from yellow to light blue. - ๐ Changed the default color for
Tertiary
from grey to white. - โฌ๏ธ Reduced dependencies (
toml
is now optional, removedhashbrown
). - 0๏ธโฃ
Cursive::default()
now fallbacks do dummy backend if no other is available.
๐ Bugfixes
- ๐ Fixed
ScrollView::show_scrollbars()
. - โก๏ธ Correctly update the offset for
ScrollView
after focus change. - ๐ Fixed layout for
BoxView
with some size constraints. - ๐ On Windows, do not print unix-specific character during initialization.
- ๐ Fix out-of-bounds access for some mouse events in
MenuPopup
-
v0.13.0 Changes
January 14, 2020๐ฅ Breaking changes
- โก๏ธ Update
enum-map
fron 0.5 to 0.6
โก๏ธ API updates
- โ Add
Effect::Strikethrough
(not supported on ncurses) - โ Add
ListView::remove_child
- Replace
xursive::CbFunc
withBox<FnOnce>
- Add
ScrollView::{inner_size, is_as_{bottom, top, left, right} }
- โ Add getters for current value in
SliderView
- More fields made public in
cursive::logger
- โ Add a "puppet" backend for testing and instrumentation
๐ Improvements
- ๐ Performance improvements for the crossterm backend
๐ Bugfixes
- ๐ Fix a possible panic when a TextView is updated asynchronously while it's being layed out.
- ๐ Fixed weird behaviour of
SizeConstraint::Full
withScrollView
.
- โก๏ธ Update
-
v0.12.0 Changes
May 09, 2019๐ฅ Breaking changes
- โก๏ธ Updated
enumset
from 0.3 to 0.4
โก๏ธ API updates
- ๐ Add
Cursive::take_user_data
, replaces the current user data with()
. - Add
SliderView::{get_value, get_max_value}
.
๐ Improvements
DebugConsole
now has horizontal scrolling enabled.pancurses
backend now correctly recognizes the "Enter" key from the numpad as "Enter".
- โก๏ธ Updated
-
v0.11.2 Changes
April 18, 2019โก๏ธ API updates
- Bring back
Cursive::set_fps
for <30Hz refresh rates. - โ Add
Cursive::backend_name
to get the name of the current backend. - โ Add a new backend based on the crossterm library.
- โ Add direct downcast methods to
dyn AnyView
- โ Add sort methods to
SelectView
๐ Improvements
- ๐ Improved printer performance with styled spans.
- Bring back
-
v0.11.1 Changes
March 16, 2019โก๏ธ API updates
- โ Added manual scrolling methods to
view::scroll::Core
:keep_in_view
,scroll_to
,scroll_to_x
,scroll_to_y
Note: theview::scroll
module is hidden behind an experimental
๐ featureunstable_scroll
.
๐ Improvements
- ๐ Improved printer performance (thanks to @chrisvest).
๐ Bugfixes
- ๐ Fixed
MenuPopup
borders near delimiters.
- โ Added manual scrolling methods to
-
v0.11.0 Changes
March 16, 2019๐ฅ Breaking changes
Cursive::{ncurses, pancurses, termion}
now returnio::Result<Self>
instead of panicking.Cursive::default()
still unwraps.- Also added
Cursive::try_new
for failible backends.
- Also added
- Replaced
set_fps(i32)
withset_autorefresh(bool)
Finder::find_id()
is renamed tocall_on_id()
, and a properfind_id()
was added instead.- โก๏ธ Updated the Backend trait for a simpler input system
- โก๏ธ Updated to Rust 2018 edition (now requires rustc > 1.31)
Cursive::clear()
now takes&mut self
โก๏ธ API updates
- โ Add a logging implementation (
logger::init()
) and aDebugConsole
(cursive::toggle_debug_console()
) - โ Add user-data to Cursive.
Cursive::set_user_data()
can store some user-defined data structure.Cursive::user_data()
andCursive::with_user_data()
can be used to access the data.
- โ Add
StackView::remove_layer()
- โ Add
CircularFocus
view (and bring proper circular focus to dialogs) - โ Add
HideableView::is_visible()
- โ Add
type CbSink = Sender<Box<CbFunc>>
as an alias for the return type ofCursive::cb_sink()
- Add
LinearLayout::{insert_child, swap_children, set_weight}
for more in-place modifications. - Add
Printer::{cropped_centered,shrinked_centered}
๐ Improvements
- ๐ Updated termion backend to use direct /dev/tty access for improved performance.
- Enabled raw mode for ncurses and pancurses. Among other improvements, this lets applications receive Ctrl+S and Ctrl+Q events.
๐ Bugfixes
- ๐ Fixed overflow check for titles in
Dialog
andPanel
-
v0.10.0 Changes
December 01, 2018๐ New features
- โ Add
EventTrigger
and updateOnEventView
to use it.- Breaking change: "inner" callbacks for OnEventView now take the event as extra argument.
- โ Add
Printer::enabled
andEnableableView
to disable whole subtrees. - โ Add
RadioGroup::on_change
to set a callback on selection change. - ๐
SelectView
now usesStyledString
to display colored text. - โ Add
PaddedView
to add padding to any view. - โก๏ธ Update dependencies
- Breaking change: crossbeam-channel was updated, and using
send()
now returns aResult
.
- Breaking change: crossbeam-channel was updated, and using
๐ Bugfixes
- ๐ Fix mouse events on Ubuntu
Doc
- โ Added examples to most utility types (
XY
,Vec2
, ...)
- โ Add
-
v0.9.2 Changes
November 05, 2018๐ New features
- โ Add an optional title to
Panel
- โ Add
immut1!
,immut2!
andimmut3!
macros to wrap aFnMut
inFn
- SelectView: autojump is now opt-in (jump to an element after a letter is pressed)
๐ Bugfixes
- ๐ Fix possible crash with
ListView
andSelectView
in very small spaces - ๐ Fix termion backend compilation on non-unix platforms
- โ Add an optional title to
-
v0.9.1 Changes
September 17, 2018๐ New features
- โ Add
Cursive::on_event
to send simulated events. - โ Add
EventResult::and
to combine callbacks. - ๐ Allow custom color in
ProgressBar
.
๐ Bugfixes
- LinearLayout:
- Better geometry computation with constrained size
- Fixed cache invalidation
- Fix possible panic when removing children
- ScrollView:
- Fix possible panic with full-height scrollbar
- Fix possible panic with empty content
- Fix cache
- ๐ Fix menubar focus after action
- ๐ Pin
enumset
version (fix compilation error)
- โ Add