Commit Graph

1457 Commits

Author SHA1 Message Date
nick black
6b74ea7718 plot: fix off-by-one on wide window shift, asdd unit test 2020-04-03 08:27:08 -04:00
nick black
8a23124c4a plots: implement basic redraw_plot() #136 2020-04-03 05:51:02 -04:00
nick black
f1f94deda8 keyplot: input loop #430 2020-04-03 05:51:02 -04:00
nick black
fc2dc68619 AugmentCycle2 Unit Test #430 2020-04-03 05:51:02 -04:00
nick black
a3f7dd486b plot: AugmentSample5 test case 2020-04-03 05:51:02 -04:00
nick black
e8a4badf8b plots: implement update_sample() 2020-04-03 05:51:02 -04:00
nick black
5bccf6b446 ncplot: implement x windowing #430 2020-04-03 05:51:02 -04:00
nick black
6c02012cbf debian: pull comments from dep list 2020-04-03 05:51:02 -04:00
nick black
74bbe73daf drone: argh 2020-04-03 05:51:02 -04:00
nick black
f565c0472c rust: dep on clang-dev 2020-04-03 05:51:02 -04:00
nick black
4430d9c068 drone: use new builders 2020-04-03 05:51:02 -04:00
nick black
24ac23e405 rust: don't use --locked 2020-04-03 05:51:02 -04:00
nick black
716260831e drone: try building rust 2020-04-03 05:51:02 -04:00
nick black
41f1f8bb49 python needs ncgridgeom_e 2020-04-03 05:51:02 -04:00
nick black
459b1029af README: add notcurses-keyplot to app list 2020-04-03 05:51:02 -04:00
nick black
89a3c32615 add man page for notcurses-keyplot #430 2020-04-03 05:51:02 -04:00
nick black
b3cda0d09f notcurses-keyplot: throw a perimeter around base plane 2020-04-03 05:51:02 -04:00
nick black
d2fe768c30 plot unit tests #430 2020-04-03 05:51:02 -04:00
nick black
359303ed83 notcurses-keyplot: read input 2020-04-03 05:51:02 -04:00
nick black
4926186b5a ncplot: check input parameters for validity #430 2020-04-03 05:51:02 -04:00
nick black
a2170a4291 ncplot: add_sample(), set_sample() #430 2020-04-03 05:51:02 -04:00
nick black
b3e874a179 ncplot: fold minx, maxx into rangex 2020-04-03 05:51:02 -04:00
nick black
09d8912d4e notcurses-keyplot #430 2020-04-03 05:51:02 -04:00
nick black
5239900ac8 notcurses-input: upgrade shared_ptr to unique_ptr 2020-04-03 05:51:02 -04:00
nick black
5e27499194 add notcurses-keyplot #430 2020-04-03 05:51:02 -04:00
nick black
d541cda306 independent variable 2020-04-03 05:51:02 -04:00
nick black
4afda7a625 float some geometry concepts 2020-04-03 05:51:02 -04:00
nick black
e87fbb3003 Throw up an ncplot unit test 2020-04-03 05:51:02 -04:00
nick black
5aedb3491d ncplot_plane(), ncplot_destroy() 2020-04-03 05:51:02 -04:00
nick black
69d6240741 ncplot_destroy, ncplot(3) man page 2020-04-03 05:51:02 -04:00
nick black
f29a5a7bd9 declare ncplot_create() 2020-04-03 05:51:02 -04:00
nick black
af478ccf95
README: book has been published, link it =] 2020-04-02 14:01:57 -04:00
nick black
d1724d6183
tetris: kill unnecessary return in MoveRight() 2020-04-02 12:40:38 -04:00
nick black
ac31bf3a12
awww fuck me in the ass #429 2020-03-29 06:52:13 -04:00
nick black
a45d888601
All fill-type functions return cells changed
Fill-type functions used to return 0 for success, and -1
on failure. They now return the number of cells written
on success, similarly to ncvisual_render(). Resolves #427.
2020-03-29 05:26:56 -04:00
nick black
a3323fb22c
Enforce UTF8 where necessary in unit tests #428
Certain unit tests required UTF8 encoding on the output
terminal to work (#428). This includes anything which does
any kind of fill. Add enforce_utf8() checks to all such
tests that were missing them. Unit tests once again pass in
a pure ASCII environment.
2020-03-29 04:46:30 -04:00
nick black
bd7bf65c62
colloquy: spin up a rust notcurses instance 2020-03-28 00:11:00 -04:00
nick black
8651486ad7
Don't say DirectColor when TrueColor is meant 2020-03-27 12:58:30 -04:00
nick black
6c81cb3b45
rust: use libnotcurses-sys, add test 2020-03-27 06:27:26 -04:00
nick black
cbacf006e5
libnotcurses-sys: update tests for new notcurses_options 2020-03-27 05:57:10 -04:00
nick black
ddf206462b
colloquy: branch on widget type 2020-03-27 05:51:52 -04:00
nick black
a64119931a
colloquy: flesh out options parser 2020-03-27 05:27:59 -04:00
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.
2020-03-27 03:49:13 -04:00
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.
2020-03-27 03:13:30 -04:00
nick black
5bcd643a68
tetris: increase gravity with level #421 2020-03-27 00:17:16 -04:00
nick black
4a02d7ed80
tetris: rewrite moveleft()/moveright() with invalidmove() #421 2020-03-27 00:04:12 -04:00
nick black
cb85e120e0
tetris: replace PieceStuck() with InvalidMove() #421 2020-03-26 23:59:13 -04:00
nick black
1665bbad8b
tetris: InvalidMove() for detecting bad rotations #421 2020-03-26 23:52:56 -04:00
nick black
ff71eda6a1
reels are a cylinder, not a torus 2020-03-26 23:31:28 -04:00
nick black
5955125921
Tetris: remove dead code #421 2020-03-26 20:40:03 -04:00