Commit Graph

264 Commits (f14444cfca2594784bbc16926bfb9f202ad2d760)

Author SHA1 Message Date
nick black fcd7e19e4c Add ncplane_set_scrolling() #323 4 years ago
nick black 3d75f67465
changelog: fix up formatting 4 years ago
nick black df3dc6b5bc
prep for 1.2.5 4 years ago
nick black 4917603478
ncplot: swap NCPLOT_2x1 and NCPLOT_1x1x4 4 years ago
nick black 2a7ccffec6 ncplot: add labelaxisd, use it in keyplot #438 4 years ago
nick black c0f8d9b444
eliminate detectdomain, infer it from maxy==miny #439 4 years ago
nick black 68b4ba1706 plots: implement remaining vertical grid types #136 4 years ago
nick black 5bccf6b446 ncplot: implement x windowing #430 4 years ago
nick black 89a3c32615 add man page for notcurses-keyplot #430 4 years ago
nick black 4926186b5a ncplot: check input parameters for validity #430 4 years ago
nick black a2170a4291 ncplot: add_sample(), set_sample() #430 4 years ago
nick black 5aedb3491d ncplot_plane(), ncplot_destroy() 4 years ago
nick black 69d6240741 ncplot_destroy, ncplot(3) man page 4 years ago
nick black a77774f4dc
notcurses_at_yx(): value-result u32+u64, not cell
Resolves #410. notcurses_at_yx() accepted a cell*, but the
gcluster of this cell was always set to 0. The EGC is instead
a heap-allocated copy, returned as the primary return value.
This is due to the absence of an egcpool to bind against.
Existing callers can be converted thus:

* instead of passing cell 'c', pass &(c)->attrword, &(c)->channels
* either initialize 'c' with CELL_TRIVIAL_INITIALIZER, or set its
   gcluster field to 0 following the call

I've updated all calls from tests/demos, updated the docs, and
updated the C++ and Python wrappers.
4 years ago
nick black 73b61f6a69 Add bound planes (#71) plus docs/tests
Add ncplane_bound(3). This allows a new plane N to be created in the
*bound* state relative to another ncplane B. If B moves, N moves the
same amount. If N is moved, the coordinates are taken relative to B
as opposed to the standard plane. If B is destroyed, N is destroyed.
Each plane can have many planes bound to it, but can only be bound to
a single plane. Add ncplane_reparent(3). This allows a plane to be
detached from any plane to which it is bound, and optionally rebound
to a new plane. The standard plane cannot be reparented.
Documentation and unit tests have been added for both.
4 years ago
nick black 013e445209
add notcurses_multiselector(3) to notcurses(3) 4 years ago
Nick Black f9c54761f5
Basic mandelbrot for `n`ormal demo #145 (#424)
normal: working mandelbrot, very basic #145
4 years ago
nick black ae1421db15
ncvisual_render() API change/documentation #422
ncvisual_render() now returns the number of cells emitted
rather than just 0/-1. -1 is still returned on failure.
Rather than 0 for length meaning "all possible length", it
now means 0, and -1 means "all possible length". All demos,
tests, and PoCs have been updated. #422
4 years ago
nick black 7c6b655483 v1.2.4 4 years ago
nick black 3fff41ffa2 Doxygen: update INPUT for include hierarchy 4 years ago
Nick Black 52bdbc6724
ncplane_translate() accept NULL dest as standard plane #408 (#411)
* tetris man page
* tetris basic skeleton
* tetris: Ticker()
* README: fix up some obsolete terminology
* tetris: draw the game board
* tetris: add NewPiece()
* tetris: draw tetriminos
* tetris: check for stuck piece, move it down
* Accept NULL dst in ncplane_translate() #408
4 years ago
nick black 38f4255dc0 Define ncplane_mergedown() #361
ncplane_mergedown() is similar to the "Merge down" operation
in the GIMP. It writes to the destination plane the result
of rendering the source and destination frames per se.
4 years ago
nick black ba90c70a47
ncplane_cursor_yx() takes const first argument 4 years ago
nick black db30bcf0d2
document new ncdirect functions for cursor #402 4 years ago
Nick Black c056a0a026
Subregion renders #293 (#404)
Add four new fields to notcurses_options: margin_{tblr}, which requests margins to the top, right, bottom, and left. Render only within those margins, leaving the screen otherwise untouched (well, cleared if using the alternate screen). #293
4 years ago
nick black be089747a7 ncmultiselector_selected() #322 4 years ago
nick black 2dd97de4e4 multiselector man page 4 years ago
nick black a9c64a8c8b yummy covid-19 4 years ago
nick black eead4c1414
notcurses_highgradient() added #398 4 years ago
nick black ac683e21d2
v1.2.3 4 years ago
nick black 333f7c1192
define ncplane_rotate_cw/ccw() 4 years ago
nick black afe724ee1d
docs: update for ncplane_translate_abs() 4 years ago
nick black bb579d0d05
notcurses_directmode()->ncdirect_init() 4 years ago
nick black 0dc5456035
Emit JSON on -J arg to demo #387
Accept -J as a parameter requiring an option to notcurses-demo(1).
Update the man page and usage message to reflect this. Open the
specified file for binary writing with truncation at option parsing
time; fail out if we can't open it. At the end of the demo, write
the results out as JSON, using full precision for all values #387.
4 years ago
nick black a09bdc4ade
Add seqnum field to ncinput #374 4 years ago
nick black ddd33fea31
ncdirect_move() doc, readme, python, c++ #382 4 years ago
nick black e72111ac8b
v1.2.2 4 years ago
nick black 773b85e81e poc/menu: kill brown-bagger, add backgrounds #383 4 years ago
nick black 9b0603bb32
Implement + test ncplane_mouseevent_p() #305 4 years ago
nick black 5e38da9ea3
implement ncplane_stain() #347 4 years ago
nick black 002e8be574
implement ncplane_format() #347 4 years ago
nick black 2780734efd
add ncplane_translate() 4 years ago
nick black dc4271ca23
dumbass 4 years ago
nick black f9d98dd05c
notcurses_stdplane_dimyx() #365 4 years ago
nick black 88c49df1b1
v1.2.1
DSFG demo can't have luigi
s/1.2.0/1.2.1/g
4 years ago
nick black 35d850f008
Implement + test ncplane_putegc_stainable() #352 4 years ago
nick black 7b27953c17
notcurses_reel(3): fix up some references 4 years ago
nick black 902766feaf
index.html: add Doxygen link 4 years ago
nick black 69e2e8ec26
add notcurses-pydemo(1) man page #359 4 years ago
nick black 5bf66563d3
notcurses-demo(1): note that jungle doesn't run without ccc 4 years ago
Nick Black e5d6685c92
No locks, more lox #290 (#358)
* README/CMake: only require doctest 2.3.5

* man pages: remove talk of locking #290

* Remove locking from notcurses core #290

* Purge locking from notcurses core #290
4 years ago
Nick Black e6637e81cc
Prep for serious rusting #101 (#354)
* CMake: add USE_PANDOC, USE_DOXYGEN options #101
* README: mention rust
* start integrating rust into build #101
* CMake: add USE_NETWORK option for cargo
* Debian: build-dep on doxygen
* rust: colloquy checks in Cargo.lock
* extract NCKEY defines into their own include
* colloquy: use clap to parse CLI args
* CMake: unify option namespace
* Python: update include path
* Rust: fix up --frozen workings for -DUSE_NETWORK=off
* CMake: abstract out colloquy a little
* Sync direct.hh to the New Way
4 years ago
Jakub Wilk f08d51c5e7 fix typos 4 years ago
nick black d8dce42f94
Add a Doxyfile #297 4 years ago
nick black 2dc103f447 update primary versions to 1.2.1 for new cycle 4 years ago
nick black 2b08c53075 prep for 1.2.0 4 years ago
nick black 438ee1257b
remove doctest, rely on system 4 years ago
nick black 5f9e6fa706
release-checklist: purge src/demo/jungle.c 4 years ago
nick black c6520ab84c add notcurses_drop_planes, use from demo #346 4 years ago
nick black 643c1f4ed4 drop 0.4.0-sheet.png from README.md 4 years ago
nick black 8ecb4ba6a8 declare gradient functions #340 4 years ago
nick black 124004c87c add nplane_polyfill_yx() #340 4 years ago
nick black ce3e5d112e add ncdirect_clear() #343 4 years ago
nick black 6d629025e3 add ncdirect_fg_default() and ncdirect_bg_default() 4 years ago
nick black 9923b69296
demo: remove H option, no longer necessary 4 years ago
nick black 8beb5d66fd
demo: hook up Ctrl+'u' for about screen #338 4 years ago
nick black 9fc53e811f
ncplane_perimeter() plus unit test 4 years ago
nick black d8c42d4d1e
ncmenu_selected() fills in an ncinput #333 4 years ago
nick black 048b17952e
notcurses_ncinput(3): add NOTE about shift key 4 years ago
nick black e71c9284ef
man pages: address some syntax issues 4 years ago
nick black 155650afa4
notcurses_ncplane(3): update blitter signatures 4 years ago
nick black 78ff79fb34 sign our tags 4 years ago
nick black 887726b0d9 Debian: move all symbols/history to 1.1.8 4 years ago
nick black cda600a4aa :/ 4 years ago
nick black b0c72607c4
ncmenu_offer_input(), use it in demo/pocmenu #333 4 years ago
nick black aacec297b2
ncmenu: declare ncmenu_offer_input() 4 years ago
nick black 74b9690cf3
ncmenu: remove dumb restrictions/special casing 4 years ago
nick black 1b6727404a
notcurses_output: spelling 4 years ago
nick black b7a92e0321
notcurses-tester(1) man page #326 4 years ago
nick black 889e29731b
add back doc/0.4.0-sheet.png 4 years ago
nick black 2d685616a7 Debian: dep on python3-all-dbg for python dbgsyms generation 4 years ago
nick black 1ed6000193 ncstats: add plane count, fix fbbytes accounting 4 years ago
nick black 8e29b5ba0f add highcon demo #181 4 years ago
nick black 05997f9988
notcurses-demo: accept -i to continue on demo failure 4 years ago
nick black 0daf7503d5
expand DFSG removals 4 years ago
nick black 74775b97ec
enmetric->ncmetric #324 4 years ago
nick black 89f516dcaa
tablet->nctablet, add ncreel to python #324 4 years ago
nick black c519c95fff
panelreel -> ncreel #324 4 years ago
nick black 01bc543399
tag demos requiring ffmpeg 4 years ago
nick black 959b2b8d70
notcurses-demo(1): markdown syntax 4 years ago
nick black b284901d18
prep for 1.1.6 4 years ago
nick black bb7b92ea4a
ncdirect_styles_*() declarations #321 4 years ago
nick black 429e00d612 v1.1.5 4 years ago
nick black d13e7fced4 DFSG: add release notes, remove unused media #316 4 years ago
nick black 116453bfec notcurses-demo(1): add note about DFSG build #316 4 years ago
nick black 5cd3a4c41d
ncdirect_dim_y()/x() 4 years ago
nick black 2a9f3c5ab3
ncmenu_selected(), update docs #179 4 years ago
nick black 4d613217b3
ncmenu: only allow one at a time 4 years ago
nick black 10a269c963
ncmenu: reject double menu 4 years ago
nick black 49013433ea
demo: spruce up table a bit more 4 years ago