3c684070c5
Add test script to launch a single room app
2019-06-12 16:53:37 +00:00
d62d64a4a4
Add test script to display room layout
2019-06-12 16:53:21 +00:00
1423533378
Add room widget
...
It's still incomplete, but it works - at least a bit.
2019-06-12 16:51:22 +00:00
6942777c1e
Fix crashes when connecting to room fails
2019-06-12 16:13:39 +00:00
50e5b594ad
Filter out control characters
2019-06-12 16:12:53 +00:00
8b0740778c
Set an edit widget's text
...
Also make the width calculation take into account the Edit's cursor.
2019-06-12 16:12:04 +00:00
1307a9d06b
Change how the cursor looks
...
Now uses <> instead of [] so that distinguishing the cursor and messages
is easier.
2019-06-12 08:50:55 +00:00
6030c96586
Add single room application
...
This application lets the user pick a single room and join it. It also
displays error messages when a room could not be joined.
2019-06-12 08:50:55 +00:00
187a69fd5f
Add editing widgets for popups etc.
2019-06-12 08:50:55 +00:00
8336794342
Clean up a bit
2019-06-09 14:44:35 +00:00
5e7089f320
Find oldest message in supply
2019-06-09 14:43:49 +00:00
45bf3ecdb0
Move cursor to bottom of supply
2019-06-09 14:43:09 +00:00
943a8915e6
Fix cursor and messages being rendered too wide
2019-06-09 14:25:35 +00:00
0775d17357
Calculate length of unicode string
2019-06-09 14:22:28 +00:00
17e49d529c
Add custom message renderer for euphoria
2019-06-09 14:20:16 +00:00
204411726e
Remove testing code and clean up (somewhat)
2019-06-08 18:49:04 +00:00
148f2d2667
Remove unused function
...
As far as I know, the function produced incorrect results. I don't need
it anways, so I'm just throwing it out.
2019-06-08 09:10:59 +00:00
37b84adab5
Add some tests
2019-06-08 09:10:59 +00:00
ab4e54b543
Fix test structure and add rendering tests
2019-06-08 09:10:59 +00:00
d8ee20c402
Add ShouldNeverHappen exception
2019-06-08 09:10:59 +00:00
a9ddf27525
Remove old files
2019-06-08 09:10:59 +00:00
b71541c847
Add scrolloff option (similar to vim)
2019-06-08 09:10:59 +00:00
bb6d7830ea
Implement cursor movement
2019-06-08 09:10:59 +00:00
05809b0723
Test interactions for scrolling
2019-06-08 09:10:59 +00:00
dd6ad51077
Implement scrolling for cursor tree
2019-06-08 09:10:59 +00:00
a4d33847e9
Add basic cursor tree widget
2019-06-08 09:10:59 +00:00
ba2f64762f
Clean up and re-add attributed text widgets
2019-06-08 09:10:59 +00:00
5e10fcecac
Fix various small things
...
A commit that fixes all of the little things I forgot about, but that
are necessary for rendering to function properly.
- (attr. lines) reverse lines before extending above
- (attr. lines) clamp the AttributedLine offset so that there is always
a line with offset 0
- (tree renderer) use meta spaces for the cursor too
- (tree renderer) use correct indent text for cursor
- (tree renderer) fix mypy error by safely ignoring it
- (supply) sort by root id instead of value
- (supply) return id, not list of ids
2019-06-08 09:10:59 +00:00
5a606a9191
Implement missing cursor tree rendering methods
2019-06-08 09:10:59 +00:00
9c389b64e4
Clean up package imports
2019-06-08 09:10:59 +00:00
dec73f183f
Implement tree rendering with cursor
2019-06-08 09:10:59 +00:00
2407377cf1
Implement cache for rendered elements
2019-06-08 09:10:59 +00:00
75a5ae5758
Restructure element classes yet again
2019-06-08 09:10:59 +00:00
c035817ba8
Unit test markup and fix all issues found
2019-06-08 09:10:59 +00:00
052bbfb6d2
Make classes more generic
2019-06-08 09:10:59 +00:00
f4c0416398
Add in-memory message supply
2019-06-08 09:10:59 +00:00
267f419603
Render basic messages
2019-06-08 09:10:59 +00:00
8979d80062
Accommodate scrolling
...
Change the rendering code to accommodate for scrolling, and clean it up.
2019-06-08 09:10:59 +00:00
1fe8a87d7f
Implement parts of the message tree widget
2019-06-08 09:10:59 +00:00
8eaacf1558
Add documentation
2019-06-08 09:10:59 +00:00
f02b8a7791
Test scrolling with the mouse
2019-06-08 09:10:59 +00:00
0a104afd4a
Test line-wide attributes
2019-06-08 09:10:59 +00:00
ce73a7d3bf
Update mypy config
...
It now ignores unused imports, because I don't want to write types for
all the libraries I use.
2019-06-08 09:10:59 +00:00
1803a6676e
Add small interactive test scripts
2019-06-08 09:10:59 +00:00
32bc9af2d8
Implement basic AttributedLinesWidget
2019-06-08 09:10:59 +00:00
66a67f3f28
Create very basic message tree widget structure
...
Also, fix some cheuph structuring problems
2019-06-08 09:10:59 +00:00
7e2c802364
Increase spacing in modules
2019-06-08 09:10:59 +00:00
7da4bf36d5
Lay out new client structure
2019-06-08 09:10:59 +00:00
6c4bfe2752
Use new config system
2019-06-08 09:10:59 +00:00
bc203aaff1
Create palette from config and add default config
2019-06-08 09:10:59 +00:00