nick black
32ff214be2
update demos for ncplane_aligned #237
5 years ago
nick black
2ea4f77875
introduce ncplane_aligned() #237
5 years ago
nick black
8926fc5879
cursor: always get cnorm/civis defs #240
5 years ago
nick black
7d4f9b5231
witherworm: message
5 years ago
nick black
bcd12279c0
ncvisual: handle plane resize #169
5 years ago
nick black
ed980f1059
pull _get from all accessors
5 years ago
nick black
014afa348b
rename ncplane default -> base #236
5 years ago
nick black
d5748c634d
ncvisual: keep duration sum for better sync #113
5 years ago
nick black
707862507d
use video pts when available #113
5 years ago
nick black
c21a04137c
curry a void* through ncvisual_stream #113
5 years ago
nick black
41153e3c7e
notcurses-view: rewrite using ncvisual_stream #113
5 years ago
nick black
db8b99d594
notcurses_render: simplify using new alpha rules
5 years ago
nick black
c0126b3389
maxcolor: add a legend for transparencies
5 years ago
nick black
924d80f0d5
don't blend default colors #235
5 years ago
nick black
46b1b8e622
notcurses_stats man page #213
5 years ago
nick black
21c3861804
s/bannner/banner/g, heh
5 years ago
nick black
e9890eefc0
general foreground elision #131
5 years ago
nick black
5b322add56
glyph-based background spec elision #131
...
When we emit a glyph that has no background pixels (i.e.
the U+2588 FULL BLOCK glyph), there's no need to emit a
background color change.
Eagle demo currently has hand-coded elision. Results from
80x70 runs using the `-c` parameter:
No optimization: 12.63MiB
Hand-optimized: 12.48MiB
New scheme, no hand-coded optimization: 12.45MiB
w00t!
5 years ago
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
5 years ago
nick black
d4caefc55d
fade: throw a 10ms cap in, improves visual and lessens load
5 years ago
nick black
148114c6ca
rewrite term_esc_rgb for ~8% more FPS
5 years ago
nick black
38ace7677f
build man pages properly #213
5 years ago
nick black
132793211c
capabilities testing for fade/ffmpeg
5 years ago
nick black
3544bd86e2
witherworm: don't hide chars below message
5 years ago
nick black
fe0c18d5e4
disable eventfd in panelreel demo for now #196
5 years ago
nick black
bf49db1ae4
FreeBSD: guard all uses of _unlocked #196
5 years ago
nick black
90f750dec8
eagle: remove direct libav calls
5 years ago
nick black
af7cf118a9
HUD: properly initialize backchannel
5 years ago
nick black
09aa606281
FreeBSD: no CLOCK_MONOTONIC_RAW #196
5 years ago
nick black
caf7e41737
need struct AVFrame for sans-libav build
5 years ago
nick black
430a321557
don't import av headers in non-ffmpeg build
5 years ago
nick black
bd034c983a
input: handle modifiers+mouse (alt, shift, ctrl) #226
5 years ago
nick black
1cc100cd2d
UMOK: get endgame working once more
5 years ago
nick black
fb0e03fe89
UMOK: fadecb for faders #162
5 years ago
nick black
a218851acb
sweet-ass stats in HUD #162
5 years ago
nick black
91a00b3400
ULTRAMEGAOK: feed the HUD #162
5 years ago
nick black
9402d7e927
HUD: click on X to close HUD
5 years ago
nick black
ee99eb53c3
HUD: throw a close-X on the hud
5 years ago
nick black
b13da606f6
whiten and shrink HUD
5 years ago
nick black
7f82ac6f16
ULTRAMEGAOK: mouse-moveable HUD #162
5 years ago
nick black
13b376f94f
panelreels: fix logic error at bottom #222
5 years ago
nick black
7906989582
kill obsolete FIXME
5 years ago
nick black
4e841865b3
panelreel-tester: accept offset arguments #180
5 years ago
nick black
770cdf4773
panelreel: plug up hole at the bottom #220
5 years ago
Nick Black
4571b57ece
Rust/FreeBSD ( #221 )
...
* rust bindings
* update release documentation with Rust info
* panelreel tester: accept command-line options#180
* input: char32_t not wchar_t in output
* freebsd compilation issues #196
5 years ago
nick black
4d877603c3
maxcolor: fix direction switch
5 years ago
Nick Black
63ada9289c
Implement CELL_ALPHA_BLEND, improve transparency semantics #191 ( #219 )
...
* channels_blend() introduced
* implement CELL_ALPHA_BLEND #191
* maxcolor demo: slidingpanel
* much improved transparency semantics #191
* maxcolor: show all transparencies #191
5 years ago
nick black
4b6063e1ce
sliders: fix timing
5 years ago
nick black
cb2bf16a73
support building sans ffmpeg #153
5 years ago
nick black
99fb662f59
eagle: speed up eagles on small screens
5 years ago
nick black
8d26803ed8
fix linear interpolation on large geometries #216
5 years ago
nick black
7424b3b78c
grid: fix boundary conditions on large displays
5 years ago
nick black
4ba9845143
grid: better background on last scene
5 years ago
nick black
1554685165
boxdemo: default background cell explicitly #211
5 years ago
nick black
4b953e33f2
render: carry state across renders #203
5 years ago
nick black
e8064f717b
xray: kill subplane when done
5 years ago
nick black
43e0cb3d30
xray: prep for CELL_ALPHA_BLEND #191
5 years ago
nick black
ca5e14cdad
xraydemo: isolate avi/text
5 years ago
nick black
53efe2bd1f
demo-view: don't exit on spurious wakeup
5 years ago
nick black
2601fe9191
demo-input: pass 'q' through in addition to interrupt
5 years ago
nick black
a14ec34d78
intro: blink warning if screen is small
5 years ago
nick black
4e0ebde876
intro: advertise 'q' demo: print full matrix
5 years ago
nick black
9e9e5ef648
demoinput: process 'q' at all times
5 years ago
nick black
1017bf42e0
panelreeldemo: stop advertising 'q'
5 years ago
nick black
17a55261dc
witherworms: allow them more space
5 years ago
nick black
86efad6f67
griddemo: clip rgb values, kill white line on side
5 years ago
nick black
efcfa372ae
ULTRAMEGAOK: toplevel event handler #207
...
enable mouse events in the demo. spawn a thread from main() which
brokers all input events. it will consume mouse events, and
publish keyboard events to a queue. rewrite all demo notcurses_getc()
calls to demo_getc() equivalents.
5 years ago
nick black
452e1d302e
output API enhancements #210 #209
...
Allow -1 in move specification to remain where we are on that
axis (#210 ), necessary for context-sensitive aligned output.
Add _aligned forms to printf and vprintf. Invert various output
functions so that simpler form is static inline wrapper around
more complicated form, rather than complicated form being a
static inline composition, facilitating atomic move+output. All
output forms now have a simple form (no alignment, placement at
cursor), an _aligned() form, and a _yx() form.
5 years ago
nick black
f742676aee
Mouse support using button event tracking #165
...
Request and parse up mouse messages. We handle up to 11 mouse
buttons, 3 modifiers (currently thrown away), motion while
holding down a button, and loss/gain of focus. I've added twelve
new NCKEYs: one for each button, and one for release. In addition,
I've introduced the 'ncinput' struct, which encodes the nckey plus
extra data. The only extra data thus far is coordinates for mouse
events. It is not necessary to provide a ncinput to all input
functions; NULL can be provided if the caller doesn't care about
details. All demos are updated. notcurses-input has been updated
to decode full information of returned ncinputs.
The primary resource for this work was Dickey at al's "XTerm Control
Sequences", https://invisible-island.net/xterm/ctlseqs/ctlseqs.html .
5 years ago
nick black
aceda89261
input: add NCKEY_MOUSEEVENT, match against CSI prefix #165
5 years ago
nick black
b4b4b3684a
yaml
5 years ago
nick black
1555edfa6c
notcurses: disable mouse events on startup/shutdown
5 years ago
nick black
78633de427
mouse: use SGR extended coordinates
5 years ago
nick black
ae52d04435
notcurses-input: dim previous lines
5 years ago
nick black
ab47ab8976
notcurses_mouse_on()/_off() #165
5 years ago
nick black
046d0314b9
add links to useful man pages
5 years ago
nick black
fe7b6bbf89
Samoa, tula'i ma sisi ia lau fu'a, lou pale lea!
5 years ago
nick black
f9e18fa1ee
witherworms breed, paint xray banner
5 years ago
nick black
2a256192ad
input: allow duplications of escapes #199
5 years ago
nick black
6b6a00c013
luigi: jump off the right side of the screen
5 years ago
nick black
605293c103
deretardize the witherworms
5 years ago
nick black
708159c686
x-ray demo
5 years ago
Nick Black
4278a53523
Dankamongmen/no prisoners damage ( #198 )
...
* notcurses: set up lastframe #189
* render: o(1) take no prisoners damage detection
* EAAAAAAAAAAGLES
* slight background on intro
* 0.9.2
5 years ago
Nick Black
9b81de3789
O(1) passive damage detection #189 ( #197 )
...
* notcurses: set up lastframe #189
* render: o(1) take no prisoners damage detection #189
5 years ago
nick black
8b1b2ebdf0
term_esc_rgb: add note about ITU T.416 syntax
5 years ago
nick black
d50ee9ec50
ncplane_erase() at the beginning of viewdemo #194
5 years ago
nick black
c3fa7ea664
bleachworm replaces widechomper #177
5 years ago
nick black
a710222df1
enmetric(): support localized decimal separator #192
5 years ago
Nick Black
3ad2124246
Partial visual renders #170 ( #193 )
...
* ncvisual_render() accept four bounding dims #175
* ncvisual_render(): partial renders #175
5 years ago
nick black
7f01dfc241
planereel-tester: delete support
5 years ago
nick black
eaf510676d
planereel-tester: randomly-sized tablets #180
5 years ago
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
5 years ago
nick black
b0b1679de6
ncvisual_render(): use true transparency #186
5 years ago
nick black
5403642764
notcurses-input: throw up a banner
5 years ago
nick black
1ebe02cf93
libav: disable stderr logging #174
5 years ago
nick black
0e6c921b28
we break 1k fps in kitty :)
5 years ago
nick black
898806fec1
demo: minimum field width on FPS
5 years ago
nick black
3f326ee0a8
fix up ncplane_set_{bf}g
5 years ago
nick black
21a8e661be
convert all demos to find_data()
5 years ago
nick black
660949a461
griddemo: fix wonky right line
5 years ago