Alexandre Bury
2760e92ce6
Use spans::LinesIterator from simple::LinesIterator
2018-02-16 17:04:39 -08:00
Alexandre Bury
0ff08f3a9f
Add Row::overall_indices
2018-02-16 16:56:25 -08:00
Alexandre Bury
7772cd146d
Add AsSpannedStr trait
...
For nicer calls to resolve
2018-02-16 16:32:54 -08:00
Alexandre Bury
25e65a87e8
Remove attribute type from spans::LinesIterator
2018-02-16 16:05:15 -08:00
Alexandre Bury
c220cc679a
Remove attribute type from SpannedText
2018-02-16 15:35:51 -08:00
Alexandre Bury
7218b6c879
Add SpannedStr and SpannedText
2018-02-16 14:11:33 -08:00
Gergely Nagy
f478d57e51
FnOnce callbacks can be sent to cb_sink
2018-02-12 22:44:50 +01:00
Gergely Nagy
0ceb4ff4e2
Run multiple callbacks per step as the documentation suggests
2018-02-12 22:44:50 +01:00
Alexandre Bury
847fd7d800
Add SelectView::selected
2018-02-11 19:26:44 -08:00
Alexandre Bury
8f3441bc3c
ListView: use checked subtraction between focus and scroll index
2018-02-11 19:07:38 -08:00
Alexandre Bury
bbc3d3d5b7
Merge pull request #204 from xliiv/focus_index_for_linear_layout
...
Add LinearLayout.get_focus_index
2018-02-08 10:05:43 -08:00
Tymoteusz Jankowski
56fe7ab0df
Add LinearLayout.get_focus_index
2018-02-08 18:33:20 +01:00
Alexandre Bury
daac2d67b4
Add Vec2::saturating_add(XY<isize>)
...
And uses it to fix crash in position example
2018-02-07 16:44:22 -08:00
SEGFAULT
9e591ef635
Moving Windows in StackView ( #200 )
...
* Inital draft of reposition code.
* throwing it all in git so I can show @gycos the mess I made
* Cleaning up the example and removing that garbage getter function from StackView. More thought needs to be applied to that API.
* modified stackview to locally draw background, currently every frame. Adjusted surrounding elements to mirror this change.
* fixed dirty flag on stackView to use a cell. Also added dirty events on window resize.
* Final code cleanup.
* Fixed all highlighted issues in PR #200
2018-02-07 16:25:00 -08:00
Alexandre Bury
22e2360aa1
Merge separate TrackedView impl blocks
2018-01-29 17:34:06 -08:00
Alexandre Bury
f091cec861
Add BoxView::set_size
2018-01-27 22:12:29 -08:00
Alexandre Bury
b14a2ff5e7
Remove debug lines
2018-01-27 18:15:27 -08:00
Alexandre Bury
fbd4dd97f1
Add grayscale color matching for ncurses backend
2018-01-27 18:14:37 -08:00
Alexandre Bury
800470e22c
Add Color::from_256colors test
2018-01-27 17:31:43 -08:00
Alexandre Bury
6f072ac894
Fix assert for 256 colors
2018-01-27 17:26:03 -08:00
Tymoteusz Jankowski
579b8fddd3
Fix getting view in inner_getters
2018-01-27 19:51:03 +01:00
Tymoteusz Jankowski
5bfe9548e8
Replace inner_getters!(T); with inner_getters!(self.view: T);
2018-01-27 10:37:08 +01:00
Tymoteusz Jankowski
b21280c106
Use inner_getters! in OnEventView
2018-01-26 23:28:20 +01:00
Tymoteusz Jankowski
4e2b8adf3d
Merge branch 'master' into get-child
2018-01-26 23:15:14 +01:00
Tymoteusz Jankowski
4daf40e271
Change OnEventView.inner to OnEventView.view
...
This breaks compatibility!
2018-01-26 22:32:07 +01:00
Tymoteusz Jankowski
4545ed0bf3
fmt
2018-01-26 17:26:21 +01:00
Tymoteusz Jankowski
d3fadc7c3c
Add SelectView.get_item_mut
2018-01-26 17:24:44 +01:00
Tymoteusz Jankowski
4dc403df78
Add SelectView.get_item
2018-01-26 13:25:19 +01:00
Tymoteusz Jankowski
9510d92736
Use inner_getters for rest of ViewWrappers (except on_event_view)
2018-01-26 12:08:28 +01:00
Tymoteusz Jankowski
84ea73617f
Add & use inner_getter! in BoxView
2018-01-26 11:39:10 +01:00
Tymoteusz Jankowski
d0956b40b0
Add get_view for ViewWrapper (needs fix)
2018-01-25 14:08:01 +01:00
Alexandre Bury
057321abac
Doc: add wikipedia link to TUI
2018-01-24 18:21:39 -08:00
Alexandre Bury
fac6312227
Fix more clippy warnings
2018-01-22 16:42:51 -08:00
Alexandre Bury
5dfdeab6ae
Fix clippy warnings
2018-01-22 14:47:56 -08:00
Alexandre Bury
da8310b076
Rustfmt
2018-01-22 14:37:27 -08:00
Alexandre Bury
06086fdeb0
Dialog::get_content now returns &AnyView
2018-01-22 13:45:00 -08:00
Alexandre Bury
8aa901afb4
Merge pull request #190 from xliiv/dialog-content-get
...
Add get_content on Dialog
2018-01-22 13:18:08 -08:00
Tymoteusz Jankowski
c119f957eb
Add Dialog.get_content
2018-01-22 21:01:23 +01:00
Alexandre Bury
3674c118cb
Rustfmt
2018-01-22 11:55:56 -08:00
Alexandre Bury
98aff39904
Move View::as_any
to separate trait AnyView
2018-01-22 11:50:25 -08:00
Alexandre Bury
1551fbb543
Add View::as_any and View::as_any_mut
2018-01-22 09:20:45 -08:00
Alexandre Bury
208b812976
Fix doc link
2018-01-21 11:20:08 -08:00
Alexandre Bury
431285135f
Make Palette directly an EnumMap
...
Removes the "colors" intermediate member.
2018-01-21 11:17:22 -08:00
Alexandre Bury
b0f4dfbc17
Fix missing link
2018-01-20 21:18:29 -08:00
Alexandre Bury
c84bbbdf45
Update doc for theme module
2018-01-20 21:17:32 -08:00
Alexandre Bury
c3f2e9ad9c
Add LinearLayout::get_child and get_child_mut
2018-01-17 11:07:04 -08:00
Alexandre Bury
5ac0fce363
Refactor ColorStyle
...
Add the notion of PaletteColor to use a color from the palette.
Breaking change: most color styles are now methods rather than enum
variants.
2018-01-17 10:22:06 -08:00
Alexandre Bury
d9215a2b39
Add Style::add
2018-01-16 22:41:22 -08:00
Alexandre Bury
6bb0812a39
TextArea: invalidate cache on set_content
2018-01-16 10:30:26 -08:00
Alexandre Bury
51eb6bf34c
Have TextView::content take Into<StyledString>
2018-01-15 14:13:30 -08:00
Alexandre Bury
5003095171
Update ncurses and owning-ref dependencies
2018-01-15 13:58:26 -08:00
Alexandre Bury
39405ba1ec
Refactor spans and markup
...
We now use mostly indexed spans into a source string.
Indexed Spans can still be resolved to a string slice when needed.
2018-01-15 13:53:27 -08:00
Alexandre Bury
a9d9239fac
Correctly parse colors 232-255
...
Those are grayscale
2018-01-14 16:59:03 -08:00
Alexandre Bury
3058816f1a
Add Dialog::buttons to iterate on buttons
2018-01-12 09:33:54 +01:00
Alexandre Bury
56f81eee7c
Add Button::set_label
2018-01-12 09:33:47 +01:00
Alexandre Bury
0666a8b585
Button: add a way to get its label
2018-01-12 09:30:49 +01:00
Alexandre Bury
14f2bf636c
OnEventView: add note regarding single callback per event
2018-01-11 18:49:48 +01:00
Alexandre Bury
0c24ed369b
Allow multiple callbacks to be registered per event.
2018-01-11 18:47:44 +01:00
Alexandre Bury
2d62d2c91f
Add Cursive::active_screen
2018-01-11 18:20:23 +01:00
Alexandre Bury
4879d8cc71
Fix ending newline problem
2018-01-11 00:16:13 +01:00
Alexandre Bury
afb224b860
Protect against empty spans
2018-01-11 00:12:21 +01:00
Alexandre Bury
890b3f13e1
TextView: print styled spans of text
2018-01-10 23:58:29 +01:00
Alexandre Bury
6f468658e1
Add Plain markup implementation
2018-01-10 14:44:27 +01:00
Alexandre Bury
59d67e891c
Keep StyledString markup-agnostic, push trait to methods
2018-01-10 14:02:54 +01:00
Alexandre Bury
7ecf5f540b
Add markup::{Markup, StyledString}
2018-01-10 13:54:32 +01:00
Alexander Gavrilov
f8f23a5dda
Call resize_item on Windows only
2018-01-09 08:24:17 -08:00
Alexander Gavrilov
7469bd36be
Call resize_term on KeySize
2018-01-09 08:01:22 -08:00
Alexandre Bury
4383526ec0
Fix some clippy warnings
2018-01-09 15:20:07 +01:00
Alexandre Bury
f8588e74c1
Rustfmt
2018-01-09 15:17:49 +01:00
Alexandre Bury
d41f1e937d
Menubar: trigger leaf nodes on mouse release
...
Feels more natural
2018-01-09 14:53:55 +01:00
Alexandre Bury
d384cbdaf1
Allow menu leaves and delimiter in menubar
2018-01-09 14:37:40 +01:00
Alexandre Bury
ed94078218
Add span tests from markdown
2018-01-09 10:32:52 +01:00
Alexandre Bury
fc8d428028
Fix doc test
2018-01-09 10:10:05 +01:00
Alexandre Bury
c486d96810
Don't run doc example
2018-01-09 09:50:22 +01:00
Alexandre Bury
203ec4ac76
Improve doc for Cursive::find_id
2018-01-09 09:26:05 +01:00
Alexandre Bury
df97279442
TextView: add manual scroll methods
2018-01-08 19:02:35 +01:00
Alexandre Bury
a2244f0ac1
Add markdown parser
2018-01-08 17:18:35 +01:00
Alexandre Bury
15c3e77fc4
Split theme.rs into multiple files
2018-01-08 16:11:12 +01:00
Alexandre Bury
c2d2fa0527
Update Style to include a set of effects
2018-01-08 15:44:27 +01:00
Alexandre Bury
b59e480f60
Add missing imports
2018-01-08 13:15:28 +01:00
Alexandre Bury
c4670e5262
More utils re-organization
2018-01-08 12:33:43 +01:00
Alexandre Bury
7ac003c4de
Re-organize utils module
2018-01-08 12:07:07 +01:00
Alexandre Bury
943da46e82
Add SpanListIterator
2018-01-08 01:25:30 +01:00
Alexandre Bury
1acde148be
Implement From<Effect> and From<ColorStyle> for Style
2018-01-07 15:08:25 +01:00
Alexandre Bury
aa9db30a51
Add TextView::set_effect
2018-01-05 14:20:09 +01:00
Alexandre Bury
895557e91d
Fix TextView deadlock
2018-01-05 14:20:08 +01:00
Alexandre Bury
2d7f8295cf
Add Effect::{Bold,Italic,Underline}
2018-01-05 13:57:39 +01:00
Alexandre Bury
5af367fa18
Add missing use
statements to doc example
2018-01-03 16:51:07 +01:00
Alexandre Bury
778c1f1d71
Better doc
2018-01-03 15:36:08 +01:00
Alexandre Bury
08a935d561
Don't run test examples when we call Cursive::new
...
It fails with some backends.
2017-12-31 20:29:05 +01:00
Alexandre Bury
8a05bd5421
TextView: improve documentation
2017-12-31 19:49:13 +01:00
Alexandre Bury
65ea8eeec8
No need to clone the Arc
2017-12-31 14:14:19 +01:00
Alexandre Bury
e4cd68a4eb
Rustfmt
2017-12-30 23:03:42 +01:00
Alexandre Bury
799ec812e4
Add TextContent and TextContentRef
...
To manage the model separately from the view.
2017-12-30 23:00:48 +01:00
Alexandre Bury
8da659367d
Add StackView::move_layer
2017-12-18 18:18:23 +01:00
Alexandre Bury
bd9b6a695b
Return view on pop_layer
...
Callbacks now often allow (and ignore) a return type.
2017-12-16 14:41:15 +01:00
Alexandre Bury
1b7170e308
StackView: store Layer<Box<V>> rather than Box<Layer<V>>
...
Rather than storing a Layer<V> as a Box<View>,
stores a Layer<Box<View>>, so we can unwrap it when
popping layers.
2017-12-16 14:41:15 +01:00
Marcel Hellwig
9ce8896bba
updated dialog doc to reflect the default position
2017-12-12 09:19:05 +01:00
Marcel Hellwig
f8e7427f75
simplified offset calculation in dialogboxtitle
2017-12-12 09:07:13 +01:00
Marcel Hellwig
592ecf4c09
added option to position the header in a dialog
2017-12-12 08:38:14 +01:00