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

29 Commits

Author SHA1 Message Date
Jakub Sobon
94d07aea18
Format files with gofmt from Golang 1.20.
Signed-off-by: Jakub Sobon <jakub.sobon@elohim.sk>
2023-02-08 13:15:27 -05:00
Jakub Sobon
4238ac6f76
Implements a buffer limit for the Text widget. (#301)
See issue #293 where memory and performance can degrade with a high number of lines written to the Text widget. 

This is a very simplistic implementation to limit the possible length the text buffer can grow to with the `maxContent` option. 

Default value of -1 means there's no limit and therefore behaviour should remain standard.

It has been working in our test app and allows the use of the Text widget to monitor logs (ie tail) and therefore doesn't bloat over time, but happy to adjust as required.
2021-04-03 17:04:53 -04:00
Jakub Sobon
dd6acb15e1
Give metadata about events to widgets. 2020-11-24 22:03:58 -05:00
dank
c3220f04f1
added the ability to change the scrolling runes 2020-10-13 00:42:25 -04:00
Jakub Sobon
06eb7623bd
Modifying imports 'internal' -> 'private'. 2020-04-10 15:26:45 -04:00
Jakub Sobon
10d4a55348
Provide metadata to widgets when drawing. 2019-04-03 23:13:18 -04: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
2742487fc0
The text widget now wraps at words. 2019-03-02 17:56:37 -05:00
Jakub Sobon
c43e453038
Text validation moved to the wrap package. 2019-03-02 17:46:03 -05:00
Jakub Sobon
87cab66617
Simplifying the text widget.
This results in a better line wrapping abstraction which now works on
cells. Cells contain both the rune and the cell options which were
awkward to track separately.
2019-02-28 00:50:16 -05:00
Jakub Sobon
61aca3fb62
Removing Text's dependency on wrap.Needed.
It was rune based and thus incompatible with word wrapping.
2019-02-25 00:33:27 -05:00
Jakub Sobon
54c5dff63e
Factoring the line wrapping logic out of the text widget.
It will be needed for the Table too.
2019-02-24 23:10:52 -05:00
Jakub Sobon
b74f46509b
Moving runewidth, segdisp and testdraw to internal. 2019-02-24 01:27:17 -05:00
Jakub Sobon
97ec73069f
Moving align, cell and terminalapi back from internal. 2019-02-24 01:13:26 -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
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
38a2a36234
Adding Text Write option that atomically replaces the text content. 2019-02-15 00:40:15 -05:00
Jakub Sobon
2784a1c7a0
Constructor of Text now returns an error. 2019-02-15 00:20:20 -05:00
Jakub Sobon
e44d70b568
Merge pull request #101 from mum4k/segment-display
Segment display
2019-02-06 23:46:50 -05:00
Jakub Sobon
38aae8e556
Switching text to attrrange. 2019-02-04 21:41:04 -05:00
Jakub Sobon
34a715fc1d
Fixing a comment. 2019-02-03 23:39:29 -05:00
Andrea Manzini
ceae209ba2 cleanup lint issues 2019-01-19 16:16:19 +01:00
Jakub Sobon
367af3f86d
Merge branch 'text-widget/5/widget' into text-widget/6/wide-runes 2018-05-27 16:21:14 +01:00
Jakub Sobon
126cb00247
Rename newText field to contentChanged. 2018-05-27 16:15:56 +01:00
Jakub Sobon
929bf2b8fc
The text widget now supports full-width runes.
Refactoring the draw() implementation to make it more readable:
- taking out the line trimming logic.
- taking out the drawing of the scroll up/down markers.
2018-05-20 22:51:38 +01:00
Jakub Sobon
ecb27cd1c5
Adding licence. 2018-05-14 22:45:40 +01:00
Jakub Sobon
d6c153fbaf
Implementing the text widget.
And adding a demo.
2018-05-14 22:16:14 +01:00