Commit Graph

249 Commits

Author SHA1 Message Date
Alexandre Bury
778c1f1d71 Better doc 2018-01-03 15:36:08 +01:00
Alexandre Bury
e4cd68a4eb Rustfmt 2017-12-30 23:03:42 +01:00
Alexandre Bury
9b9619aa53 Add View: Any 2017-12-11 18:54:40 -08:00
Alexandre Bury
bbee77f1b7 Add ViewWrapper::into_inner
And add some derive(Debug)
2017-12-11 17:31:55 -08:00
Alexandre Bury
f90621811c More rustfmt 2017-10-14 21:18:50 -07:00
Alexandre Bury
294a4102b4 Fix mouse support for ListView 2017-10-14 21:01:07 -07:00
Alexandre Bury
a5952d0741 Fix some mouse/scroll issues with SelectView and TextView 2017-10-13 17:53:39 -07:00
Alexandre Bury
67a6640142 Add mouse support to TextArea 2017-10-12 20:41:34 -07:00
Alexandre Bury
75d5868162 Fix shadowview event relativization 2017-10-12 16:44:03 -07:00
Alexandre Bury
a4ca7bbf1e Rustfmt 2017-10-12 16:43:59 -07:00
Alexandre Bury
2fed1f3ff4 Add mouse support for regular SelectView 2017-10-12 14:32:48 -07:00
Alexandre Bury
f5492da4e4 More natural thumb drag 2017-10-12 12:35:57 -07:00
Alexandre Bury
e7da474769 Remove debug lines 2017-10-12 12:30:59 -07:00
Alexandre Bury
3a836aaa92 Fixes drag scroll position 2017-10-12 12:30:00 -07:00
Alexandre Bury
5931ab17c8 Add mouse scroll support to TextView 2017-10-11 18:06:58 -07:00
Alexandre Bury
d815afdf78 Fix ViewWrapper doc comment 2017-09-24 18:50:45 -07:00
Alexandre Bury
607e6f1bdc Implement ViewWrapper for DerefMut<T: View>
This means View is implemented for Box<T: View>, Box<View>, ...
2017-09-24 12:24:23 -07:00
Alexandre Bury
1a4e1c104e Implement View for Box<View> 2017-09-23 13:53:26 -07:00
Alexandre Bury
05bac7a192 More safe subtractions all around. 2017-08-14 16:32:39 -07:00
Alexandre Bury
66af7fab7c IdView: skip view if borrowing fails.
Fixes #144
2017-07-03 01:29:30 -07:00
Alexandre Bury
9f5ce65e34 Fix doc comment 2017-06-12 18:03:52 -07:00
Alexandre Bury
c300e0628d Rename find -> call_on
And update tutorials
2017-03-26 20:50:50 -07:00
Alexandre Bury
c3c69e7892 Merge IdView and RefCellView
And remove `with_id_mut`
2017-03-25 21:56:31 -07:00
Alexandre Bury
cdb3df7fc8 Merge branch 'master' into refview 2017-03-25 15:01:57 -07:00
Alexandre Bury
017bb21710 Add View::focus_view 2017-03-25 14:50:52 -07:00
Alexandre Bury
cb3adc5baf feat: find_id can now find views declared with with_id_mut 2017-02-26 15:52:42 -08:00
Alexandre Bury
34c7462877 fix: protect scroll operations when non-scrollable
Fixes #109
2017-02-26 14:53:50 -08:00
Alexandre Bury
b50d2f077f Make RefCellView re-entrant safe
Don't crash if the view is already borrowed.
2017-02-08 15:33:43 -08:00
Alexandre Bury
1b8d109e94 Add with_id_mut and find_id_mut convenient methods. 2017-02-08 15:20:41 -08:00
Alexandre Bury
b63762d441 View::find_any now takes a closure instead of returning reference
Also updated Finder::find and find_id.
2017-02-07 15:49:06 -08:00
Alexandre Bury
d7eaa5a086 Rename View::get_min_size -> required_size 2017-01-23 22:53:03 -08:00
Alexandre Bury
924c74afbe Add ScrollStrategy to TextView 2017-01-21 11:44:40 -08:00
Alexandre Bury
14f971e2bc Allow negative relative offset in Position
Was causing crashes when popup-SelectViews were larger than their
parent.
Made some methods on Vec2 more generic to XY<T: ...>
2017-01-10 17:47:31 -08:00
nabijaczleweli
c81579a20a
Disable failing doctests 2016-10-11 19:11:40 +02:00
nabijaczleweli
c69db62844
Fix backend tests 2016-10-10 23:08:07 +02:00
nabijaczleweli
af0c97749d
Fix doctests using ::B 2016-10-10 20:23:00 +02:00
Alexandre Bury
3b3f403f7a Apply rustfmt 2016-10-02 15:22:29 -07:00
Alexandre Bury
0401b3ab53 Use better type for wrap_impl! macro
`ty` is better than `path`
2016-09-24 16:56:42 -07:00
Alexandre Bury
2e06dd70cb Apply rustfmt 2016-09-22 22:11:13 -07:00
Alexandre Bury
829dd77deb Add &Backend to Printer struct
Makes `::B` public but undocumented.
Backend is currently an immutable ref, may need to become
mutable to be more useful (will need to change the View trait)
2016-09-22 22:00:58 -07:00
Alexandre Bury
05a862d98b Remove unused import in test module 2016-09-22 17:12:53 -07:00
Alexandre Bury
a5135a7aff Better documentation for view::Finder
Also adds `Finder::find_id`
2016-09-21 14:57:03 -07:00
Alexandre Bury
93980a7d0c Rename View::find -> View::find_any
And add the `Finder` trait on Views to provide a true `find`.
2016-09-21 11:33:44 -07:00
Alexandre Bury
7d16f70d67 Add some tests to view::position 2016-09-20 18:32:31 -07:00
Alexandre Bury
08d1c1e5b0 Use an associated type in ViewWrapper
This removes the need for dynamic dispatching
2016-09-19 17:20:20 -07:00
Alexandre Bury
53402a0063 Add link wrap_impl! doc 2016-09-01 11:56:11 -07:00
Alexandre Bury
b38995b906 Refactor BoxView
Add `Boxable` trait.
2016-08-03 21:55:41 -07:00
Alexandre Bury
bd78418083 Add scrollbar_padding to ScrollBase
And use it in TextArea
2016-08-02 00:49:59 -07:00
Alexandre Bury
93ceb17c21 Rename scrollbar_padding -> scrollbar_offset in ScrollBase 2016-08-02 00:36:27 -07:00
Alexandre Bury
24e4e41a85 Move DummyView to views module 2016-07-29 23:36:40 -07:00
Alexandre Bury
fb10e58188 Move LinesIterator to utils module 2016-07-28 23:05:33 -07:00
Alexandre Bury
f87d0e7c5b Move views to new views module 2016-07-28 16:36:01 -07:00
Alexandre Bury
51a1a19f92 Fix progressbar doc 2016-07-28 00:29:11 -07:00
Alexandre Bury
2597c9a566 Add a center() convenient method to TextView
Avoids having to import HAlign
2016-07-27 23:58:57 -07:00
Alexandre Bury
261d2aac48 Remove Ticker alias
The `Counter` NewType can fill this role.
2016-07-27 23:55:34 -07:00
Alexandre Bury
c689a3ba7e Add non-chainable add_child to LinearLayout 2016-07-27 23:52:21 -07:00
Alexandre Bury
bea7240271 Wrap Arc<AtomicUsize> around NewType Counter
And offers a simpler API
2016-07-26 23:29:13 -07:00
Alexandre Bury
8290c3f62a Make progressbar more robust to invalid min/max values 2016-07-26 23:05:18 -07:00
Alexandre Bury
2cedc8ae76 Add comments to progress bar 2016-07-26 21:48:26 -07:00
Alexandre Bury
8eb61e0239 Add start and with_task to ProgressBar 2016-07-26 12:25:06 -07:00
Alexandre Bury
eb6b5d5728 Fix LinearLayout children width
Now properly gives the full width to every children.
2016-07-26 10:49:37 -07:00
Alexandre Bury
0643c50bd5 Add async-callback channel to Cursive
And remove it from ProgressBar
2016-07-26 10:13:36 -07:00
Alexandre Bury
04f961657f ProgressBar takes all given width 2016-07-26 09:55:22 -07:00
Alexandre Bury
6e021867ab ProgressBar now shows a percentage status
The label can be customized though `ProgressBar::with_label`.
2016-07-25 23:54:33 -07:00
Alexandre Bury
5dd20db676 Add Dialog::empty and Dialog::content
Allows to set the content after the title, for when it's more
readable.
2016-07-25 20:43:01 -07:00
Alexandre Bury
7283e7f3af Rustfmt 2016-07-25 13:39:10 -07:00
Alexandre Bury
5e6222bf23 Use intermediate type for the callback promise
Using actual promises would still be better
2016-07-25 13:38:13 -07:00
Alexandre Bury
c1c9322319 Add panel view 2016-07-25 13:35:46 -07:00
Alexandre Bury
6c71ac14b0 More linear progress bar progression
Each cell should receive the same number of ticks
2016-07-25 12:18:05 -07:00
Alexandre Bury
47acf1667d Remove brackets from progress bar
It was ugly, really.
Put a Panel (doesn't exist yet) around it if you want.
2016-07-24 23:03:59 -07:00
Alexandre Bury
e29511e757 Add ProgressBar
Also make Callback its own NewType to add comversion methods.
2016-07-24 23:01:09 -07:00
Alexandre Bury
0a8228d073 Add examples to documentation 2016-07-20 22:08:06 -07:00
Alexandre Bury
f28ac264f1 Add prelude import module
Update examples to use it.
2016-07-20 21:25:14 -07:00
Alexandre Bury
64d176ffa5 Add proper select popup placement
Added a popup select to the `list_view` example
2016-07-20 00:30:00 -07:00
Alexandre Bury
8b6022a398 Add popup mode to SelectView
Single-line, opens a popup on selection.
2016-07-19 23:47:27 -07:00
Alexandre Bury
783fa0f1e2 Fix typo in docs 2016-07-19 20:50:21 -07:00
Alexandre Bury
a1d0231e2c Make Menubar a proper View 2016-07-19 20:44:50 -07:00
Alexandre Bury
4120203844 More fixes for insufficient space. 2016-07-17 01:20:41 -07:00
Alexandre Bury
8750185f8c Don't crash on insufficient space 2016-07-16 22:06:28 -07:00
Alexandre Bury
ab3a55abaf Add enabled state to Button 2016-07-16 18:49:17 -07:00
Alexandre Bury
58a04bbb13 Add enabled state to SelectView 2016-07-16 18:46:18 -07:00
Alexandre Bury
02b6b6601f Add enabled state to Checkbox 2016-07-16 18:36:54 -07:00
Alexandre Bury
77a623674a Add on_change callback to CheckBox 2016-07-16 18:18:33 -07:00
Alexandre Bury
05f66b8e1b Add macro'd Default implementations 2016-07-16 17:28:42 -07:00
Alexandre Bury
d4afdf024f Add checkbox view 2016-07-16 17:22:24 -07:00
Alexandre Bury
5ee8706582 Add scrollable flag to TextViews 2016-07-16 17:08:17 -07:00
Alexandre Bury
5b25893496 Rustfmt 2016-07-16 13:52:28 -07:00
Alexandre Bury
a22c92a1a1 Add ListView
Also added `examples/list_view.rs`.
2016-07-16 13:25:21 -07:00
Alexandre Bury
2b54d6df28 Make View::draw take a &self (instead of a &mut self)
TrackedView, the only user of the mutability, now uses internal
mutability with a Cell.
2016-07-15 23:44:38 -07:00
Alexandre Bury
bd5c45ac0e Fix clippy warnings 2016-07-14 22:32:43 -07:00
Alexandre Bury
91fdf96066 Add Direction enum
And add a Direction argument to take_focus
2016-07-14 22:23:06 -07:00
Alexandre Bury
1b34934df7 Fix printer::Printer imports 2016-07-13 23:25:54 -07:00
Alexandre Bury
d9e4512752 Fix linear layout focus switch 2016-07-13 22:16:55 -07:00
Alexandre Bury
5059e21cb1 Fix focus in LinearLayout
Focus now at least works. #42 is still open though.
2016-07-13 22:11:03 -07:00
Alexandre Bury
9390504290 Add documentation to BoxView 2016-07-13 21:30:30 -07:00
Alexandre Bury
e166869c51 Add some documentation to view module 2016-07-13 20:52:24 -07:00
Alexandre Bury
03c400ad44 Fix linear layout in constrained space 2016-07-13 01:19:05 -07:00
Alexandre Bury
7f530e34b7 Add XY generic struct 2016-07-12 21:03:17 -07:00
Alexandre Bury
309c471a63 Add #![deny(missing_docs)]
And fill the appropriate missing ones
2016-07-11 20:26:33 -07:00
Alexandre Bury
c597c262fe Add single-orientation FullView
full_width and full_height
2016-07-11 19:35:18 -07:00