1
0
mirror of https://github.com/mum4k/termdash.git synced 2025-04-25 13:48:50 +08:00

47 Commits

Author SHA1 Message Date
Jakub Sobon
06eb7623bd
Modifying imports 'internal' -> 'private'. 2020-04-10 15:26:45 -04:00
nijynot
c80b59da13 Fix pointer and SplitFixed test
* Add DefaultSplitFixed const
* Add comments to SplitFixed
2019-05-10 13:21:55 +02:00
nijynot
b6986c9b4c Add test and refactor validateOptions() 2019-05-09 11:44:13 +02:00
nijynot
70a5255d5e Refactor SplitFixed() to use SplitCells
* Add basic tests to `SplitFixed()`
* Panic when both `SplitFixed()` and `SplitPercent()` are used
* Refactor `validateOptions()` into two smaller functions
2019-05-08 21:58:48 +02:00
Jakub Sobon
10d4a55348
Provide metadata to widgets when drawing. 2019-04-03 23:13:18 -04:00
Jakub Sobon
f3ff03c1ed
Discover widgets dynamically.
Events now discover widgets when they are sent. Previously widgets
subscribed directly to events which is incompatible with dynamic
layouts. Only widgets currently placed into containers should be getting
events.
2019-03-30 00:30:13 -04:00
Jakub Sobon
782d7c3117
Container now supports dynamic layout changes. 2019-03-29 00:24:22 -04:00
Jakub Sobon
c755affe43
Ability to set IDs on containers. 2019-03-28 22:46:33 -04:00
Jakub Sobon
96d136019e
Calculating container areas upon Draw only. 2019-03-28 22:30:09 -04:00
Jakub Sobon
4203d0e794
Correctly track container focus when the terminal size increases.
Fixes #169.
2019-03-11 01:04:03 -04:00
Jakub Sobon
74769824a4
Support margin around containers. 2019-03-03 02:38:35 -05:00
Jakub Sobon
9a021b52b1
Containers now support padding of their content. 2019-03-03 01:16:36 -05:00
Jakub Sobon
b020770733
Moving widgetapi out of internal.
This will allow external users to develop their own widgets.
2019-03-02 22:00:07 -05:00
Jakub Sobon
50c00a2c8f
Moving fakewidget to the internal subdirectory. 2019-02-24 22:36:09 -05:00
Jakub Sobon
b25d20c8ae
Mouse and keyboard are also public. 2019-02-24 02:08:48 -05:00
Jakub Sobon
98394c921a
Moving draw back to internal.
Adding test for linestyle.
2019-02-24 01:54:37 -05:00
Jakub Sobon
e4726e4240
Changing all call sites to linestyle. 2019-02-24 01:51:50 -05:00
Jakub Sobon
b74f46509b
Moving runewidth, segdisp and testdraw to internal. 2019-02-24 01:27:17 -05:00
Jakub Sobon
bf61ca1479
Moving draw out of internal. 2019-02-24 01:20:03 -05:00
Jakub Sobon
97ec73069f
Moving align, cell and terminalapi back from internal. 2019-02-24 01:13:26 -05:00
Jakub Sobon
8df9e3307c
Moving faketerm to internal. 2019-02-24 01:09:23 -05:00
Jakub Sobon
bf38f10d25
Moving terminal back to public. 2019-02-24 01:04:57 -05:00
Jakub Sobon
5ac468c10a
Moving terminal, terminalapi and widgetapi to internal subdirectory.
And adding a README under internal.
2019-02-23 21:19:16 -05:00
Jakub Sobon
2ff1818c0e
Moving keyboard and mouse to internal. 2019-02-23 21:11:50 -05:00
Jakub Sobon
6c03991fb9
Moving draw and event to internal. 2019-02-23 21:10:51 -05:00
Jakub Sobon
7ee222ac58
Moving private libraries into internal subdirectory. 2019-02-23 21:09:38 -05:00
Jakub Sobon
22946f2f65
Allowing widgets to select the scope for mouse events too. 2019-02-23 00:41:58 -05:00
Jakub Sobon
0df7387862
Widgets can now register for global keyboard events. 2019-02-22 00:33:55 -05:00
Jakub Sobon
8780433b62
Moving container to EDS. 2019-02-20 23:36:58 -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
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
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
6fe129c940 Implementing the infrastructure layer. 2018-04-23 01:05:54 +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
bc42865277
Defining the APIs. 2018-03-27 19:01:35 +01:00