OpenGrok
Cross Reference: slk.c
xref
: /
src
/
lib
/
libcurses
/
slk.c
Home
|
History
|
Annotate
|
Download
|
only in
libcurses
History log of
/src/lib/libcurses/slk.c
Revision
Date
Author
Comments
1.21
20-Dec-2022
blymn
Backout change to addnstr that broke other applications as n should be
the number of bytes to add - for multibyte characters n will be > 1.
Fix __slk_draw to pass in the actual length of the label instead of
the default label length because wide characters may make the
actual string length longer than the slk display length.
1.20
12-Apr-2022
blymn
branches: 1.20.2;
Make the default colour pair be pair 0 which appears to match other
curses implementations.
1.19
25-Jan-2022
blymn
Correct (hopefully) the handling of wide characters.
* Remove the WCOL family of macros, these were "stealing" the upper bits
of a character attribute to store the column width of a character. No
warning was given about this in curses.h which meant it was easy to
accidentally reuse the bits in use by the WCOL macros (we already did).
Add couple of 16bit ints to the character structure iff HAVE_WCHAR is
true to hold the display width and wide char related flags (just
continuation at the moment)
* Convert all instances of WCOL macros to just reference the column width
in the char structure so it is not obfuscated.
* Fix cursor positioning so placing a cursor in the middle of a wide char
actually does just that.
* Fix plod so it understands that if the cursor is going to be positioned
in the middle of a wide char it cannot just reprint the char to get there.
* Fix plodput so it correctly counts the number of output characters for
wide characters.
* Fix slk routines to properly size the wctomb() buffer.
1.18
06-Jan-2022
blymn
Revert change for array definition, it was incorrect, thanks Uwe.
1.17
06-Jan-2022
blymn
Properly size and array to hold the larget return from wctomb.
1.16
06-Sep-2021
rin
Style fixes most for __CTRACE().
1.15
06-Sep-2021
rin
Expand __CTRACE() to __nothing #ifndef DEBUG.
Remove most of #ifdef DEBUG around __CTRACE() calls.
No binary changes, except for line numbers for assert().
1.14
15-Aug-2021
christos
This is a mess; always define MB_LEN_MAX so both the regular and libhack
version of curses compiles. Really we should not be defining MB_LEN_MAX here,
and include <limits.h> in curses_private.h to get it.
1.13
15-Aug-2021
christos
need limits.h
1.12
15-Aug-2021
christos
Use MBL_LEN_MAX (constant) so that SSP works
1.11
24-Jun-2021
martin
Fix printf format for size_t
1.10
24-Jun-2021
blymn
Make sure we don't use wide char routines when DISABLE_WCHAR is in
effect.
1.9
22-Jun-2021
blymn
Fix how the slk are drawn by making sure we use ins_wchar in the
bottom left of the screen to avoid a scroll because this may cause
an ERR if scrollok is false.
1.8
28-Jul-2019
uwe
__slk_set_finalise - fix length vs. width confusion
1.7
28-Jul-2019
uwe
__slk_set - fix calculating "len" for HAVE_WCHAR
1.6
27-Jul-2019
uwe
Put slk_color() undef #ifdef HAVE_WCHAR too.
1.5
27-Jul-2019
uwe
Put wide character functions under #ifdef HAVE_WCHAR
1.4
04-Oct-2018
roy
curses: once __slk_init is called, reset slk_fmt
This allows soft label keys to be used on more than one terminal.
1.3
04-Oct-2018
roy
curses: declare SLK format as invalid until slk_init(3) called
If we don't, then when __slk_init with a valid format of 0 it sets
up labels to be drawn without a window.
1.2
30-Jan-2017
roy
branches: 1.2.2; 1.2.4; 1.2.8; 1.2.14; 1.2.16;
Just return ERR instead of asserting if someone calls the slk routines
to affect the ripped off window before the window is actually ripped off.
1.1
24-Jan-2017
roy
Implement POSIX Curses Soft Label Key functions.
1.2.16.2
13-Apr-2020
martin
Mostly merge changes from HEAD upto 20200411
1.2.16.1
10-Jun-2019
christos
Sync with HEAD
1.2.14.1
20-Oct-2018
pgoyette
Sync with head
1.2.8.1
08-Oct-2018
martin
Pull up following revision(s) (requested by roy in ticket #1048):
lib/libcurses/curses_private.h: revision 1.66
lib/libcurses/slk.c: revision 1.3
lib/libcurses/slk.c: revision 1.4
curses: declare SLK format as invalid until slk_init(3) called
If we don't, then when __slk_init with a valid format of 0 it sets
up labels to be drawn without a window.
-
curses: once __slk_init is called, reset slk_fmt
This allows soft label keys to be used on more than one terminal.
1.2.4.2
21-Apr-2017
bouyer
Sync with HEAD
1.2.4.1
30-Jan-2017
bouyer
file slk.c was added on branch bouyer-socketcan on 2017-04-21 16:53:10 +0000
1.2.2.2
20-Mar-2017
pgoyette
Sync with HEAD
1.2.2.1
30-Jan-2017
pgoyette
file slk.c was added on branch pgoyette-localcount on 2017-03-20 06:56:59 +0000
1.20.2.1
21-Dec-2022
martin
Pull up following revision(s) (requested by blymn in ticket #15):
lib/libcurses/slk.c: revision 1.21
lib/libcurses/addbytes.c: revision 1.68
Backout change to addnstr that broke other applications as n should be
the number of bytes to add - for multibyte characters n will be > 1.
Fix __slk_draw to pass in the actual length of the label instead of
the default label length because wide characters may make the
actual string length longer than the slk display length.
Indexes created Wed Oct 01 12:09:54 GMT 2025