Commit Graph

1434 Commits

Author SHA1 Message Date
nick black
a5bdb88ca9
update libnotcurses symbols 2020-03-07 19:21:57 -05:00
nick black
d44759fd25
kill compiler warning on write(2) 2020-03-07 19:20:23 -05:00
nick black
ac683e21d2
v1.2.3 2020-03-07 18:53:36 -05:00
nick black
e2459ac1a4
purge old rotate implementation #351 2020-03-07 18:41:26 -05:00
Nick Black
4e58747709
ncplane_rotate_cw() and ncplane_rotate_ccw() (#396)
Introduce limited plane rotation capability. We currently support clockwise and counterclockwise rotation of planes. Square and rectangular geometries are both supported, but there must be an even number of columns. The atomic unit of rotation is a 2x1 "square" (this assumes .5 cell aspect ratio). We can only rotate those glyphs which have rotated equivalents, and not even all of those. We currently handle only:

* null glyph
* space
* upper half block
* lower half block
* full block

I've added unit tests as well. This functionality is used by our Tetris example in the book
2020-03-07 18:36:49 -05:00
nick black
333f7c1192
define ncplane_rotate_cw/ccw() 2020-03-05 18:07:20 -05:00
nick black
b8608c15c9
ncdirect_init(): reset style #393 2020-03-04 23:39:39 -05:00
nick black
c355e26d0f
add zalgo poc 2020-03-03 01:41:42 -05:00
nick black
696873894e
ncmenu_offer_input: return true on match 2020-03-03 01:16:58 -05:00
nick black
163565dddd
handle_mouse(): drop unused variables 2020-03-03 01:05:23 -05:00
nick black
afe724ee1d
docs: update for ncplane_translate_abs() 2020-03-03 01:04:28 -05:00
nick black
3498956370
ncplane_mouseevent_p()->ncplane_translate_abs()
ncplane_mouseevent_p() is retired--it was poorly named, and
ncplane_translate_abs() does what it does, plus more, plus
more generally (it works on any y, x, not necessarily an
ncinput). update c++ wrappers #394.
2020-03-03 00:59:44 -05:00
nick black
6966632821
demo: hook up menu mouse support #309 2020-03-03 00:02:18 -05:00
nick black
6690bc6bb9
Unroll/roll up menus based on mouse #306 2020-03-02 23:56:30 -05:00
nick black
c6a3f93691
ncmenu: check mouse clicks for presence #306 2020-03-02 23:28:10 -05:00
nick black
a325a6d4b0
remove unnecessary c++ Visual() error check #378 2020-03-02 20:53:49 -05:00
nick black
e7d0ce72dd
view: catch exception on Visual constructor #378 2020-03-02 20:52:03 -05:00
nick black
5a8107b788
ncdirect: preserve colors on sgr #391 2020-03-02 20:43:30 -05:00
nick black
bb579d0d05
notcurses_directmode()->ncdirect_init() 2020-03-02 20:19:16 -05:00
nick black
314eba5530
reel: don't quit on NCKEY_RESIZE #390 2020-02-29 23:52:33 -05:00
nick black
c0f25b2ba0
Fix up reel-demo input issues #390 2020-02-29 23:29:51 -05:00
nick black
3db9397df4 Merge branch 'master' of github.com:dankamongmen/notcurses 2020-02-29 23:16:40 -05:00
nick black
43a8fcf195 augh! fix hidden alignment problem 2020-02-29 23:16:36 -05:00
nick black
c6f27f1bee
notcurses_resize() update docs #367 2020-02-29 23:05:51 -05:00
nick black
e679816731 demo: set up input eventfd #390
When we process input in the demo, write a packet to an
eventfd we set up in input_dispatcher(). This way,
demo components can poll() on that. #390
2020-02-29 22:58:52 -05:00
nick black
e6bbcd2e70
Selector: properly place scroll arrows #388
When the selector body was being sized by the header
or footer (as opposed to option+desc length), our scroll
arrows are misplaced. They now land properly. Mouse
clicks are properly placed now, and screenshots have been
updated in the guide.
2020-02-29 18:16:19 -05:00
nick black
c87a9ed5dd
Gradients: set alpha, better prechecks #389
Gradients can't use palette-indexed color, so don't allow it
in either the foreground or background of any channels. All
channels must have the same alpha setting, which will be matched
in the gradient. #389
2020-02-29 16:35:57 -05:00
nick black
1030409096
move fill/stain routines into fill.c 2020-02-29 15:50:29 -05:00
nick black
a39efb1d6d
move selector, menu documentation to book 2020-02-28 03:24:09 -05:00
nick black
fce0d9d88d
README: send multimedia to book 2020-02-27 12:09:01 -05:00
nick black
13beb9703f
move some README content to the book 2020-02-27 11:56:14 -05:00
Marek Habersack
3467a0adef [C++] API sync
Added:

  * NCKey: `ScrollUp`, `ScrollDown` and `Return`
  * Plane: is_mouse_event (`ncplane_mouseevent_p`)
2020-02-27 11:48:36 -05:00
nick black
5d8da395b9
demo: Fix JSON output for multiple runs #387 2020-02-27 08:40:00 -05:00
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.
2020-02-27 05:17:07 -05:00
nick black
87cac84db2
remove obsolete FIXME 2020-02-25 02:36:51 -05:00
nick black
b7a028569c
gradient: support default/palette #376 2020-02-24 23:17:28 -05:00
nick black
5b4c6c14e3
gradient: implement + test 1d fills 2020-02-24 22:54:21 -05:00
nick black
5f971a6baa
ignore Cargo.lock for libraries 2020-02-24 22:01:46 -05:00
nick black
b6438e415d
poc/geom: three new stupid unicode tricks 2020-02-24 22:01:16 -05:00
nick black
4fb8500631
README: add link to mailing list 2020-02-24 19:42:18 -05:00
nick black
2c98013150
python: fix up seqnum reference 2020-02-24 19:40:01 -05:00
nick black
519f77dd7f
notcurses_refresh: resynthesize unoptimized stream #380 2020-02-24 19:35:39 -05:00
nick black
fddff356a4
ncdirect_clear(): don't deref null clear 2020-02-24 18:56:09 -05:00
nick black
0a1f36cbfa
debian: add ncdirect_ new to symbols 2020-02-24 18:31:24 -05:00
nick black
a09bdc4ade
Add seqnum field to ncinput #374 2020-02-24 18:11:39 -05:00
nick black
ddd33fea31
ncdirect_move() doc, readme, python, c++ #382 2020-02-24 16:56:51 -05:00
nick black
a626178b16
ncdirect: cursor movement / geom detection #382 2020-02-24 16:30:51 -05:00
nick black
508da16b77
debian: drop graphviz build dep 2020-02-24 05:54:35 -05:00
nick black
91f59b763d
don't deadlock in demo when cancelled 2020-02-24 00:58:49 -05:00
nick black
e72111ac8b
v1.2.2 2020-02-24 00:03:00 -05:00