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
f31887b63c
A widget option to specify the maximum canvas size.
2018-05-07 12:42:19 +01:00
Jakub Sobon
e249f6ffc4
Adding a test helper for draw.Rectangle.
2018-05-07 12:41:45 +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
d7cad7b9e4
Replacing project status with list of implemented widgets.
2018-05-07 12:39:45 +01:00
Jakub Sobon
a265a12bd6
Function that draws a Rectangle.
...
This time for real.
2018-05-06 19:30:20 +01:00
Jakub Sobon
2473cd46d6
A function that draws a rectangle.
...
Also:
- implementing text trimming and wrapping.
- Switching log.Fatalf to panic() for more understandable test errors.
2018-05-06 19:28:52 +01:00
Jakub Sobon
b42236a117
Adding missing licences.
2018-04-23 14:26:26 +01:00
Jakub Sobon
ffe665a306
Removing redundant word.
2018-04-23 01:36:27 +01:00
Jakub Sobon
8032b94f08
Updating project task list.
2018-04-23 01:11:59 +01:00
Jakub Sobon
6fe129c940
Implementing the infrastructure layer.
2018-04-23 01:05:54 +01:00
Jakub Sobon
0199ffbb9a
Supporting resize and events on the fake terminal.
2018-04-23 00:49:38 +01:00
Jakub Sobon
bf1fc73140
Adding an informative MinimumSize for the Fake widget.
2018-04-23 00:47:49 +01:00
Jakub Sobon
e18b9ba79b
Improving comment about thread un-safety.
2018-04-23 00:47:12 +01:00
Jakub Sobon
9b5caa35f5
Don't pop from the queue after context expiry.
2018-04-23 00:46:36 +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
abdbd82b29
Notes about design guidelines in the docs.
2018-04-23 00:44:32 +01:00
Jakub Sobon
2e219dde67
Removing note about the licence.
2018-04-14 23:16:57 +01:00
Jakub Sobon
6823abe349
Licence for the autogen script.
2018-04-14 23:08:34 +01:00
Jakub Sobon
2cd3343c81
Adding licences and a script to automate the same.
2018-04-14 23:06:57 +01:00
Jakub Sobon
8cd11ab6de
Adding a CONTRIBUTING.md file.
2018-04-14 23:02:18 +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
cec3153dc6
Hooking up events from termbox.
2018-04-05 19:35:02 +02:00
Jakub Sobon
fe222a489e
Converting keyboard and mouse events from termbox to termdash.
2018-04-05 05:02:43 +02:00
Jakub Sobon
86e7b2f425
Wake up all waiting goroutines.
2018-04-02 02:07:17 +02:00
Jakub Sobon
4608c44534
Grammar fixes.
2018-04-02 02:04:02 +02:00
Jakub Sobon
d76e7e254a
Updating the project status.
2018-04-02 02:03:15 +02:00
Jakub Sobon
3ebc253453
Implementing an unbound FIFO queue of terminal events.
2018-04-02 01:59:04 +02:00
Jakub Sobon
16de0d2b87
Fixing build and test errors.
2018-04-02 00:47:08 +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
dc1f2c5a29
Implementing canvas functionality.
...
Done here:
- adding helper library which determines area from size and vice versa.
- fixing an off-by-one bug related to area sizes.
- allowing overwrite of cell options by passing an existing cell.Options
instance.
- implementing canvas and its tests.
2018-03-29 03:28:36 +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
53fe40fcec
Naive implementation of the terminalapi using the termbox library.
...
This just wraps termbox, getting Events isn't supported yet.
Also adding an experimental.
2018-03-27 20:20:05 +01:00
Jakub Sobon
bc42865277
Defining the APIs.
2018-03-27 19:01:35 +01:00
Jakub Sobon
0617fd5ecf
High level task list to track project status.
2018-03-26 18:22:07 +01:00
Jakub Sobon
85893fd411
Complete draft of the HLD.
2018-03-26 18:16:58 +01:00
Jakub Sobon
a725c1f73a
Details on widgets and the Widget API.
2018-03-26 18:04:09 +01:00
Jakub Sobon
1bd0b2f0fd
Writeup on the role of the infrastructure.
2018-03-26 17:28:14 +01:00
Jakub Sobon
ab6673540a
Renaming display to terminal.
...
Also adding a .gitignore.
2018-03-26 16:31:20 +01:00
mumak
9d21af6c8a
Style related changes.
...
Image size and alignment.
Go syntax highlighting.
2018-03-26 15:45:29 +01:00