Commit Graph

1556 Commits

Author SHA1 Message Date
nick black
db30bcf0d2
document new ncdirect functions for cursor #402 2020-03-13 09:56:46 -04:00
nick black
1b4333861a
add ncdirect_{en,dis}able_cursor() #402 2020-03-13 09:52:00 -04:00
nick black
d5d827f38e
adjust ncplane_yx() for margins 2020-03-13 06:53:52 -04:00
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
2020-03-13 05:07:33 -04:00
nick black
982d729c69 switch to CLOCK_MONOTONIC from _RAW 2020-03-11 06:32:06 -04:00
nick black
d77aa78a0e s/CLOCK_MONOTONIC_RAW/CLOCK_MONOTONIC/g 2020-03-11 05:46:33 -04:00
nick black
de520f3aa0
python avoid double def 2020-03-10 03:58:10 -04:00
nick black
be089747a7 ncmultiselector_selected() #322 2020-03-09 15:31:16 -04:00
nick black
638be8feb7 multiselector options/items #322 2020-03-09 15:31:16 -04:00
nick black
2dd97de4e4 multiselector man page 2020-03-09 15:31:16 -04:00
nick black
a46393b035 ncmultiselect: get space rigged up #322 2020-03-09 15:31:16 -04:00
nick black
4abe078eae ncmultiselector #322 2020-03-09 15:31:16 -04:00
nick black
667ac14549 ncmultiselector: draw properly 2020-03-09 15:31:16 -04:00
nick black
a9c64a8c8b yummy covid-19 2020-03-09 15:31:16 -04:00
nick black
078feca8e6 ncmultiselector links up 2020-03-09 15:31:16 -04:00
nick black
635d6e5751 ncmultiselect demo 2020-03-09 15:31:16 -04:00
nick black
6060248968 ncmultiselector_options structure #322 2020-03-09 15:31:16 -04:00
nick black
583906368c
add internal safe home_cursor() 2020-03-08 23:32:51 -04:00
nick black
eead4c1414
notcurses_highgradient() added #398 2020-03-08 04:05:55 -04:00
nick black
d7ea87e129 notcurses_refresh(): properly initialize rvec #380 2020-03-08 00:53:29 -05:00
nick black
83b325de05 notcurses_refresh(): drop double write #380 2020-03-08 00:53:29 -05:00
nick black
e1b729c6a3
Kill warn_unused_result warning in reel demo 2020-03-07 20:44:27 -05:00
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