Commit Graph

27 Commits

Author SHA1 Message Date
nick black
5982707f9e
add mbswidth() function, unit tests, docs 2020-01-31 19:00:51 -05:00
Nick Black
da0283ac25
Selector widget #166, subtitles #95 (#301)
Get rid of annoying empty line in notcurses-view (and ncvisuals at offsets in general)
Implement most of the Selector widget. Need to add styling and scrolling still. #166
Reenable ubuntu focal build
Subtitles! We decode them, and display them in notcurses-view. If ncvisual_simple_streamer() is provided an extra ncplane, it will use it to display subtitles. #95
We now build Python by default, as things are working much better.
ncplane_set_base() now takes channel, attrword, and EGC, so you can usually avoid having to set up and release a cell. ncplane_set_base_cell() takes over duty from ncplane_set_base() for ease of conversion.
notcurses-demo and notcurses-view now both accept a 0 for delay multiplier, meaning 'go as fast as you possibly can'. Very small multipliers (e.g. 0.00001) no longer cause floating point exceptions.
fading routines no longer cause floating point exceptions on very small timescales.
2020-01-30 08:55:01 -05:00
nick black
ed980f1059 pull _get from all accessors 2019-12-30 01:10:10 -05:00
nick black
014afa348b rename ncplane default -> base #236 2019-12-30 01:10:10 -05:00
nick black
21c3861804
s/bannner/banner/g, heh 2019-12-28 18:37:44 -05:00
Nick Black
ce2a390b52
Out with googletest, in with doctest #202 (#231)
* introduce doctest over googletest #202
* call dtester in in targets
* doctest conversion #202
* channel.cpp -> doctest #202
* egcpool tests -> doctest #202
* input tests to doctester
* zaxis -> doctest
* drone: always define LANG
* libav to doctest #202
* panelreel tests to doctest #202
* spec that a C++17 compiler is now required for doctest #202
* enmetric tests -> doctest #202
* fade tests -> doctest #202
* notcurses test case -> doctest #202
* last conversion to doctest #202
* finish move to doctest #202
* drone: set up make test
2019-12-27 17:20:20 -05:00
nick black
a3923142f6
fix up bgalpha unit tests 2019-12-21 16:08:24 -05:00
Nick Black
0e0925a84e
Planereel exploration app, panelreel logic fixes (#188)
* planereels tester #180
* suppress_banner in all tests
* tabletcb: start passing back tablet
* properly initialize fbbytes stat
* panelreel: logic fixes #178
* install all testing data
2019-12-20 20:38:13 -05:00
nick black
91f74901c2
verify cell_load() of ascii results in simple #140 2019-12-14 18:02:58 -05:00
Nick Black
8bd8055f72
Distinct fg/bg alpha channels #139 (#141)
* improved alpha macros
* demo: use new alpha macros
* add ncplane_set_*_alpha()
* explicitly set fg for uniblock
* outro: background is a space #139
* distinct alpha channels for fg/bg #139
* rename 'background' cell to 'default' #142
* doc palette fades
2019-12-14 17:34:10 -05:00
Nick Black
ff463d464e
Channels API sanity #119 (#138)
* orthogonalize channel/channels/cells APIs #119
* sync README.md with new ncplane channels api #119
2019-12-14 05:33:34 -05:00
nick black
23f8a070b3
unit tests: don't try to close a NULL outfp_ 2019-12-12 09:08:06 -05:00
nick black
ca2f0471c3
setlocale(LC_ALL, "") everywhere 2019-12-12 08:59:16 -05:00
nick black
1821867e35
move outfp out of notcurses_options #130 2019-12-12 07:59:48 -05:00
nick black
206db6dedd
sgr unit tests 2019-12-10 08:50:32 -05:00
nick black
7eafdd6772
fix up unit testing sanity 2019-12-10 06:59:35 -05:00
Nick Black
38a10d9065
Transparency via alpha channels (#122)
* outro: bevel message window's corners
* egcspool: use full 25 bits available for 32MB pools
* render: remove unused inheritance mask
* interfaces + unit tests for 2-bit alpha
* notcurses_*g_alpha() acccessors
* cell alpha + unit tests
* panelreel: support a background channel
* notcurses: transparency via alpha channel
* remove unused CELL_ALPHA_MASK
2019-12-08 13:00:19 -05:00
nick black
7566af57e3
introduce ncplane_set_[fb]g 2019-12-07 17:55:23 -05:00
nick black
8afcd04446
sync cell/ncplane fg/bg API naming 2019-12-06 22:45:08 -05:00
nick black
9fe6c152a9 enhance SetStyles unit test 2019-11-29 05:55:41 -05:00
nick black
4cc0ce037d read terminfo entries for keypad #78 2019-11-29 05:55:41 -05:00
nick black
e391bfbb81
input: add pass_through_esc option, otherwise run smkx #78 2019-11-29 03:26:37 -05:00
nick black
f65d168d83 notcurses_render(): call term_setstyles() for sgr stuff #11 2019-11-28 15:58:53 -05:00
Nick Black
ba648dbd74
What a miserable evening tracking #57 (#60)
* widecolor-demo: don't emit spaces
* notcurses_init: newline before splash
* boxdemo: ncplane_erase() on entry #58
* uniblock-demo: print even wide chars #49
2019-11-27 10:43:03 -05:00
nick black
6f92ae92ab egcpool: unit tests for utf8 conversion #20 2019-11-25 13:40:43 -05:00
nick black
879009ff9a adapt test to new ncplane_putc() api 2019-11-24 16:11:35 -05:00
Nick Black
b93bcebf0b
Extended grapheme clusters (#15)
Introduce egcpool for attached storage
Hook up style support
Switch entirely to UTF-8 char from wchar_t (#14)
Pull out next EGC in cell_load (#14)
2019-11-24 12:36:46 -05:00