Commit graph

285 commits

Author SHA1 Message Date
Michael Sippel 6aef446134
impl View traits for Option<V> 2021-01-19 23:12:31 +01:00
Michael Sippel c2b4683a1a
GridView: add range() function
add GridWindowIterator from RangeInclusive
2021-01-18 22:05:57 +01:00
Michael Sippel afaa9d220b
refactor string editor 2021-01-18 17:00:53 +01:00
Michael Sippel d1c523335b
MapIndexItem: pass key and item to function 2021-01-18 16:59:35 +01:00
Michael Sippel fffb23cd12
add to_sequence() in ViewPort<Vec> 2021-01-17 11:29:48 +01:00
Michael Sippel 4fceafcac4
index/sequence: get() always return Option 2021-01-16 20:19:52 +01:00
Michael Sippel b62bfa54a0
terminal compositor: move area calculation into impl IndexView 2021-01-16 18:00:56 +01:00
Michael Sippel 0a1b4c2c23
fix warnings 2021-01-16 16:09:16 +01:00
Michael Sippel 981ec3438f
disable code causing deadlock 2021-01-16 15:31:37 +01:00
Michael Sippel 28970658c0
first VecBuffer 2021-01-16 14:03:49 +01:00
Michael Sippel 589052977c
make SequenceView a separate trait which can be converted into an IndexView with a projection 2021-01-16 13:59:48 +01:00
Michael Sippel 9d6b1aee74
add MapIndexKey 2021-01-16 13:58:31 +01:00
Michael Sippel 6fe50416b5
index view: replace range() with area() 2021-01-16 13:57:53 +01:00
Michael Sippel f3fa8a7af1
map_item() projection for index views 2021-01-12 23:13:27 +01:00
Michael Sippel 9c21ddbda1
separate modules for index, sequence & singleton 2021-01-12 23:09:46 +01:00
Michael Sippel c574bf6ad2
move GridView & GridOffset into separate grid module 2021-01-12 22:40:15 +01:00
Michael Sippel f76a56f7b9
add GridOffset 2021-01-12 22:33:47 +01:00
Michael Sippel ceb0a8a5a9
port: add_[observer|reset]_fn return the observer object instead of view
now because we use Weak in ObserverBroadcast, we need at least one Arc somewhere else
2021-01-12 22:31:19 +01:00
Michael Sippel 5007fdea3c
make Observer::reset() mutable
use RwLock in ObserverBroadcast
2021-01-11 01:18:32 +01:00
Michael Sippel 86562614cc
refactoring 2021-01-09 01:45:17 +01:00
Michael Sippel cdd06eb9b8
add first StringEditor 2020-12-14 19:37:59 +01:00
Michael Sippel c776a1a08e
terminal resizing events 2020-12-14 19:35:35 +01:00
Michael Sippel eebabdda2d
add ObserverExt with notify_each() 2020-12-14 19:21:03 +01:00
Michael Sippel 49f189f3db
terminal: fix write loop 2020-12-14 19:17:51 +01:00
Michael Sippel 2a79b2753c
fix warnings 2020-12-09 17:56:33 +01:00
Michael Sippel 4a29d7a5cf
add TerminalCompositor
and some nice utilities for ports
2020-12-09 17:31:08 +01:00
Michael Sippel 62f3a85736
add terminal 2020-12-09 12:56:38 +01:00
Michael Sippel bf56185ca1
add some operations to VecBuffer 2020-12-09 12:56:16 +01:00
Michael Sippel 9faaf8e38e
ChannelReceiver: add recv() function to receive the complete chunk instead of iterating 2020-12-09 12:51:43 +01:00
Michael Sippel 4988db36e8
move VecBuffer & SingletonBuffer into separate files 2020-12-08 15:58:23 +01:00
Michael Sippel 852e1807db
OuterViewPort: map_value() & map_key() 2020-12-08 15:51:24 +01:00
Michael Sippel 2da96c5482
add impls for Arc<dyn View> and Arc<dyn Observer> 2020-12-07 18:28:28 +01:00
Michael Sippel ebd11796ad
improve ports
add Send+Sync as supertraits for View and Observer and notify() immutable
2020-12-07 18:09:48 +01:00
Michael Sippel 9d9f21405b
simplify singleton channel
we can directly use Option<T> without wrapping it
2020-12-05 11:31:03 +01:00
Michael Sippel 166e75a5c7
initial commit 2020-12-04 20:38:51 +01:00