Jakub Sobon
8968704de2
Fixing racy behavior between Options and Draw.
...
This applies to widgets whose Options depend on user data.
Documenting this in the docs and on API and protecting against this
condition in the affected widgets.
2019-01-26 23:58:38 -05:00
Jakub Sobon
9a7e7b5af8
Support variable size container splits.
2019-01-14 01:11:55 -05:00
Jakub Sobon
964d676e31
Allowing container.Option to report an error.
2019-01-14 00:08:20 -05:00
Jakub Sobon
79218c9233
Fixing lint errors.
...
- Missing comments.
- Invalid comments.
- Stuttering public name.
2018-05-11 16:32:37 +01:00
Jakub Sobon
ea375744a7
Adding travis-ci and coveralls configuration.
2018-05-08 18:53:14 +01:00
Jakub Sobon
039a028ff9
Fixing issues reported by go vet.
2018-05-08 01:20:48 +01:00
Jakub Sobon
72df12349c
Exposing alignment directly instead wrapping in options.
...
And removing experimental code in favor of individual widget demos.
2018-05-07 21:48:22 +01:00
Jakub Sobon
5aed5ecf24
Changing the default alignment of widget canvases to center and middle.
...
Fixes #25 .
2018-05-07 18:53:29 +01:00
Jakub Sobon
f128e8508c
Container's border now supports a title.
...
Fixes #22 .
Fixes #19 .
2018-05-07 18:48:52 +01:00
Jakub Sobon
74bdcd649f
Moving alignment code from container into its own package.
2018-05-07 17:44:32 +01:00
Jakub Sobon
88fc5b2782
Unifying the last API in the draw package.
...
Fixes #23 .
2018-05-07 16:50:27 +01:00
Jakub Sobon
b62c9406ab
Renaming draw.Box to draw.Border and improving its API.
...
Also adding tests for draw.Rectangle.
Updates #23 and #22 .
2018-05-07 13:33:18 +01:00
Jakub Sobon
48fb6a5e29
Widgets can now specify the maximum size of their canvas.
...
Also moving align types out of container so they can be reused.
2018-05-07 12:40:40 +01:00
Jakub Sobon
6fe129c940
Implementing the infrastructure layer.
2018-04-23 01:05:54 +01:00
Jakub Sobon
2d4d903f87
Container handles resize correctly.
...
And making container thread unsafe, thread safety will be implemented at
the top.
2018-04-23 00:45:17 +01:00
Jakub Sobon
2cd3343c81
Adding licences and a script to automate the same.
2018-04-14 23:06:57 +01:00
Jakub Sobon
5ce9e90d68
Test coverage for processing of Keyboard and Mouse events.
2018-04-14 22:00:25 +01:00
Jakub Sobon
3a058b407f
Renaming widget to widgetapi for consistency with terminalapi.
2018-04-09 03:33:24 +01:00
Jakub Sobon
5c32ca7f7f
Support for keyboard, mouse, widget options and alignment.
2018-04-09 03:17:40 +01:00
Jakub Sobon
0bbb28d13d
Adding a fake widget.
2018-04-07 14:24:55 +02:00
Jakub Sobon
c896b5160f
Containers now track focus.
2018-04-06 04:56:36 +02:00
Jakub Sobon
28f6bfdb3e
Adding option to draw container borders in color.
...
And updating the faketerm diff function to also display differences in
options.
2018-04-05 19:57:46 +02:00
Jakub Sobon
19fb73bc55
Adding an "Error" event type.
2018-04-02 00:43:55 +02:00
Jakub Sobon
1911e2190a
Making the container API easier to use.
2018-04-01 16:00:20 +02:00
Jakub Sobon
af6c5e9c81
Propagate the error when drawing the containers.
2018-04-01 01:02:37 +02:00
Jakub Sobon
3a3531d7e1
Implementation of container and its tests.
...
Including a diff utility for unit tests.
2018-04-01 00:57:33 +02:00
Jakub Sobon
6b592b7d34
Adding the draw library.
...
And a function that draws boxes.
2018-03-30 01:41:22 +03:00
Jakub Sobon
59e1bd6472
Implementing cell, buffer, container options and fake terminal.
...
Push after a partial commit to prevent data loss.
This isn't complete and doesn't have complete test coverage.
2018-03-28 21:34:20 +03:00
Jakub Sobon
bc42865277
Defining the APIs.
2018-03-27 19:01:35 +01:00