Commit Graph

114 Commits (99abcb5f0754fd946f3ed97beb08d4b26693d8e2)

Author SHA1 Message Date
nick black 35cb5d9511
GrowPlanes tests: use valid arguments #1215 4 years ago
nick black bcbf7a490f
add ReparentDeep unit test #1214 4 years ago
nick black fd2acde1b1 rename cell->nccell, keep alias #1200 4 years ago
nick black f3b86230e6
NCPlane tests: reenable GrowPlane #1198 4 years ago
nick black 4a7353c1ec
PlaneAtCursorAttrs: home cursor #1197 4 years ago
nick black 448251e3f2 NCPlane: endianness fixes for unit tests #1130 4 years ago
nick black 47c4931906
EmitEmojiStr: purge a few not yet valid on ubuntu #1189 4 years ago
nick black 03bcd1e01b kill enforce_utf8(), forcing notcurses_canutf8() 4 years ago
nick black a6101d4fa2 ncplane_reparent: extract from z-axis #1078 4 years ago
nick black 58e4cf626d ncplane_reparent(): excise children #1078 4 years ago
nick black b6e5b60374 ncpile_create() not NCPLANE_OPTION_NEWPILE #1078 4 years ago
nick black 3ad9a40426 hook up piles #1078 4 years ago
nick black de082c7ba2 ncpile creation/destruction #1078 4 years ago
nick black eef6df8c0a death to horiz #1115 4 years ago
nick black dc8e52c3de ncplane/resize/scroll/selector unit tests: ncplane_create #1115 4 years ago
nick black 683217ef07 normalize style setters #1034 4 years ago
nick black a4367fcfb5 rip out ncplane_ creation functions #985 4 years ago
nick black e42dbdfd60 _stainable() -> _stained() #985 4 years ago
nick black b7a57eaab7 convert all channel rgb calls #985 4 years ago
nick black 4bb1f3fc85 mbswidth -> ncstrwidth() #985 4 years ago
nick black 2f28420034 rename ncplane_putsimple() -> ncplane_putchar() #912 4 years ago
nick black 16ff667325 blissful endianness-opacity
not caring about endianness is the opiate of the masses.
happy, happy masses. remove endianness.h and all its baleful
influence by explicitly breaking up the cell structure. #892
4 years ago
nick black 7f8631b35c wide tests: death to cowardly copying 4 years ago
nick black 3bc15c2824 inlined egcs: straightline cell_duplicate() 4 years ago
nick black 1605416585 more egc-inline test fixes 4 years ago
nick black 604747c8f2 notcurses_puttext: use libunistring for wordbreaking #772 4 years ago
Nick Black d5dca33e00 ncneofetch: don't print (null) for distro_pretty 4 years ago
nick black b49d1ad838
rewrite all unit tests to use testing_notcurses() #718 4 years ago
nick black b2dcc50606
notcurses_options: fold bools into flags 4 years ago
nick black 75f458d69a
ncplane_yx: results are relative to bound plane 4 years ago
nick black 0766007a77
tester: kill off inhibit_alternate_screen #651 4 years ago
nick black 6edc6f098f
streamline unit test common initialization 4 years ago
nick black d9bb9b03af notcurses-tester: run passing tests in C locale #325 4 years ago
nick black ed548ab590
tests: apply clang modernizations 4 years ago
nick black 9e28e14001
move enforce_utf8() into main 5 years ago
nick black 0a6f5d1a9f
enforce_utf8() for wide tests, duh 5 years ago
Nick Black c6a9997554
Normalize ncplane_at_* / ncplane_set_base() (#479)
* ncplane_at_* and ncplane_at_cursor_*

We had notcurses_at_yx() expanding into three distinct parts of
the cell structure, and ncplane_at_yx() / ncplane_at_cursor()
writing directly to a cell. It was annoying to remember which
was which. The latter two now have a signature matching
notcurses_at_yx(), while the old functionality has been moved
to ncplane_at_yx_cell() and ncplane_at_cursor_yx(). #476
5 years ago
nick black 295ae0a8d0
extract wide glyph unit tests into their own file #475 5 years ago
nick black e6a80ab98d Strip down OverWide unit test 5 years ago
nick black d26b111f35 new unit test Ncplane::OverWide #362 5 years ago
nick black a7f17040ce another scrolling unit test 5 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.
5 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.
5 years ago
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.
5 years ago
nick black 9b0603bb32
Implement + test ncplane_mouseevent_p() #305 5 years ago
Nick Black 745e742a12
Fix gradient engine #368 (#372)
Simplify and correct the gradient engine, resolving all test breakage.
5 years ago
nick black 002e8be574
implement ncplane_format() #347 5 years ago
nick black 35d850f008
Implement + test ncplane_putegc_stainable() #352 5 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
5 years ago
nick black 9fc53e811f
ncplane_perimeter() plus unit test 5 years ago