Commit Graph

3693 Commits

Author SHA1 Message Date
nick black
dd8423dff3 embiggen notcurses_metric(3), add unit test #1107 2020-11-28 20:45:16 -05:00
Marek Habersack
9135663529 [CMake] Restore old way of importing Notcurses into a cmake project
Partially reverts: c5c9432ac0
Context: https://github.com/dankamongmen/notcurses/pull/1146

The above commit implemented the much more convenient way of finding and
using a package from CMake, however it broke compatibility with the way
id had been before, which defined various `Notcurses_*` variables.

Revert the `Notcurses` component to the old way and add support for
`Notcurses++` in the same fashion.

Perhaps one day we should think of implementing `find_package` support
by way of a module, which should make it possible to have the cake and
eat the cake. One day.
2020-11-28 19:54:21 -05:00
Marek Habersack
c5c9432ac0 [Misc] A hodgepodge of tiny changes
CMake:
  Simplify cmake target+version config generation and make it actually
  work.  With the changes it is now possible to detect and use
  `Notcurses` in the following way:

     find_package(Notcurses REQUIRED)
     ...
     target_link_libraries(myapp PRIVATE notcurses::notcurses)

  Also, added the same CMake configuration for `Notcurses++`, to be used
  in the following way:

     find_package(Notcurses REQUIRED
     find_package(Notcurses++ REQUIRED)
     ...
     target_link_libraries(myapp PRIVATE notcurses++::notcurses++)

Docs:
  `notcurses_cell(3)`: `cell_styles_{on,off} -> cell_{on,off}_styles`
  and `cell_load_simple` -> `cell_load_char`

C++ API:
  * Plane: added constructors taking `ncplane_options const&` instead of
    the multitude of individual parameters
  * Plane: drop `struct` when `ncplane_options` is used.
  * Plane: added `strdup` (`cell_strdup`)
  * Plane: added `extract` (`cell_extract`)
2020-11-28 17:46:23 -05:00
joseLuís
059007bd50 rust: more improvements
- fix bindings module, by not making public the wrapped bindgen types
- add notcurses_stddim_yx_const()
- fix return types of TODO
- add plane constructor new() wrapping ncpile_create()
- add plane constructor new_bound() wrapping ncplane_create()
- add plane constructor new_termsize() wrapping ncpile_create() with the terminal size
- add plane doc comment
2020-11-28 23:25:06 +01:00
nick black
47d5347f01
run mojibake after normal; it looks cool 2020-11-27 21:07:23 -05:00
nick black
2e78ae1c5e
update logo to notcurses II xray #1144 2020-11-27 20:55:38 -05:00
nick black
4655c9dd13
we want builddef.h from visual-details.h 2020-11-27 20:55:38 -05:00
Marek Habersack
c063ce4e36 [C++] API sync
Added:

  * Pile: new class derived from Plane, which implements all the
    `ncpile_*` calls
  * Plane: `get_parent` (`ncplane_parent`)
  * Plane: protected constructor for use by `Pile` (or other derived
    classes which cannot provide a valid `ncplane*` when invoking parent
    constructor.
  * Plane: `set_plane` for use by the derived classes above.

Changed:

  * Plane: `to_ncplane` is a `const` method now.
2020-11-27 19:35:22 -05:00
nick black
2a45620cd6
v2.0.8 2020-11-27 16:49:56 -05:00
nick black
e3b2c91999
add NOTCURSES_VERSION_COMPARABLE #1131 2020-11-27 16:13:44 -05:00
nick black
6a9029b60c
ncdirect_styles_set: restore italics/struck after sgr #1138 2020-11-27 15:42:14 -05:00
nick black
b7ea4e2359
run sgr-full and sgr-direct in test suite #1138 2020-11-27 15:38:36 -05:00
nick black
f82ad10667
Properly set italics/struck following sgr #1138 2020-11-27 15:29:38 -05:00
nick black
0ed8c0d234
rasterize: set up NCSTYLE_STRUCK with italics #1138 2020-11-27 15:23:21 -05:00
nick black
fd804be520
beef up sgr-full a bit #1138 2020-11-27 15:18:59 -05:00
nick black
fbe383415f
drop confusing sgr PoC 2020-11-27 15:12:52 -05:00
nick black
725ecc9267
32-bit fixes for various diagnostics 2020-11-27 14:50:18 -05:00
nick black
be6362d74f
drone: use new builder 2020-11-26b 2020-11-26 22:11:03 -05:00
joseLuís
b64a257ecf rust: replace cell macros with constructors
- add NcCell constructors: new(), new_blank(), with_char()
- remove cell initializer macros
- update full-basics example
- add more doc comments
2020-11-26 19:17:08 +01:00
joseLuís
58c3d66c15 rust: add ncpile funcs & upd function-summary
- add functions ncpile_create, ncpile_render, ncpile_rasterize
- add new script tools/blame-nick.sh
- upd script tools/function-summary.sh and the generated data
- upd bindgen version
2020-11-26 13:31:04 +01:00
joseLuís
657da94887 rust: add MSRV
- make a little change to ensure MSRV 1.40.0
- show MSRV (Minimum Supported Rust Version) in README
- show up-to-date state of crate dependencies in README
- update comments
2020-11-26 11:36:44 +01:00
nick black
d4959eab13
fd unit tests: kill deadlock #1100 2020-11-25 20:53:07 -05:00
nick black
e1e6c6a272
fd tests: use lock guards #1100 2020-11-25 20:44:46 -05:00
nick black
ebc80915a3 c++/rust struck #1138 2020-11-25 20:04:14 -05:00
nick black
f89ca15640 sgr-full PoC: add NCSTYLE_STRUCK #1138 2020-11-25 20:04:14 -05:00
nick black
202e3535d5 document new NCSTYLE_STRUCK #1138 2020-11-25 20:04:14 -05:00
nick black
fe164b6210 add NCSTYLE_STRUCK #1138 2020-11-25 20:04:14 -05:00
nick black
b33c780c88 document ncpile_render(), ncpile_rasterize() 2020-11-25 19:19:31 -05:00
nick black
fd97aa844c implement ncpile_{render, rasterize}() 🦀🦀 #1135 2020-11-25 19:19:31 -05:00
nick black
7a21574798 implement notcurses_render() using ncpile_render() #1135 2020-11-25 19:19:31 -05:00
nick black
8f7fa9da44 move postpaint() out of render step #1135 2020-11-25 19:19:31 -05:00
nick black
b2516d8534 Declare ncpile_render() and ncpile_rasterize() #1135 2020-11-25 19:19:31 -05:00
nick black
aa5b881e84 NEWS: purge empty sections 2020-11-25 19:19:31 -05:00
nick black
a2c35735d1 finish out NEWS for multipiles #1078 2020-11-25 19:19:31 -05:00
Érico Nogueira Rolim
067b35fe9d README: fix dpkg command. 2020-11-25 11:14:53 -05:00
joseLuís
433068a5ae rust: further types cleanup
- made sigset_t private.
- made FILE_LIBC & FILE_NC private.
- add NCMETRIC_ prefix to the related constants.
- Improve more comments.
2020-11-25 14:01:25 +01:00
joseLuís
8b6495a894 rust: rename type aliases for consistency
Rename all bound types so that they start by Nc (and constants by NC),
except Notcurses:

- rename Cell to NcCell.
- rename CELL_* constants to NCCELL_*.
- rename Channel to NcChannel & Channels to NcChannels.
- rename CHANNEL_* constants to NCCHANNEL_*.
- rename Egc to NcChar & EgcBackstop to NcCharBackstop.
- rename Palette to NcPalette & PaletteIndex to NcPaletteIndex.
- rename IntResult to NcResult.
- rename Color to NcColor.
- rename Rgb to NcRgb.
- rename AlphaBits to NcAlphaBits.
- rename StyleMask to NcStyleMask.
- rename LIBC_FILE to FILE_LIBC & NC_FILE to FILE_NC.

Also:
- new type NcTime for timespec.
- rustfmt.
2020-11-25 13:27:45 +01:00
joseLuís
1dda2d7d58 rust: add new functions
- ncpile_create
- ncplane_reparent_family
- ncplane_resizecb
2020-11-25 10:50:31 +01:00
nick black
8c9f8d193a notcurses_version_components(): drop atoi()s #1131 2020-11-24 04:19:47 -05:00
nick black
740dc2497d NEWS: mention integer version defines 2020-11-24 04:19:47 -05:00
nick black
7b3c391643 Add more version-related defines (#1131)
Add NOTCURSES_VERNUM_* as integer preprocessor definitions of
the four version components. Add NOTCURSES_VERNUM_ORDERED as
a 32-bit totally comparable integer. Preserve the definitions
of NOTCURSES_VERSION_*, defining them in terms of VERNUMs.
Don't use TWEAK in version, since it usually isn't defined.
2020-11-24 04:19:47 -05:00
nick black
7c249bf9b9
menu PoC: implement quit item 2020-11-24 03:23:32 -05:00
nick black
a7c7b8ff0b
ncplane_reparent_family: fix up z-axes #1078 2020-11-24 03:15:55 -05:00
nick black
3ce7d36eed
eagle demo: explicitly request NCBLIT_2x2 2020-11-24 02:53:54 -05:00
nick black
a6101d4fa2 ncplane_reparent: extract from z-axis #1078 2020-11-24 02:46:30 -05:00
nick black
43ddfd11c6 notcurses_debug(): warn on mismatched pile #1078 2020-11-24 02:46:30 -05:00
nick black
2f48c08fc4 recursive pilelock #1078 2020-11-24 02:46:30 -05:00
nick black
58e4cf626d ncplane_reparent(): excise children #1078 2020-11-24 02:46:30 -05:00
nick black
2c57ab0aff notcurses_debug: distinguish piles #1078 2020-11-24 02:46:30 -05:00
nick black
9e460ca1c2 ncplane_reparent: promote child planes #1078 2020-11-24 02:46:30 -05:00