PATH:
usr
/
include
// * this is for making emacs happy: -*-Mode: C++;-*- // vile:cppmode /**************************************************************************** * Copyright 2019-2020,2021 Thomas E. Dickey * * Copyright 1998-2003,2005 Free Software Foundation, Inc. * * * * Permission is hereby granted, free of charge, to any person obtaining a * * copy of this software and associated documentation files (the * * "Software"), to deal in the Software without restriction, including * * without limitation the rights to use, copy, modify, merge, publish, * * distribute, distribute with modifications, sublicense, and/or sell * * copies of the Software, and to permit persons to whom the Software is * * furnished to do so, subject to the following conditions: * * * * The above copyright notice and this permission notice shall be included * * in all copies or substantial portions of the Software. * * * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, * * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * * THE USE OR OTHER DEALINGS IN THE SOFTWARE. * * * * Except as contained in this notice, the name(s) of the above copyright * * holders shall not be used in advertising or otherwise to promote the * * sale, use or other dealings in this Software without prior written * * authorization. * ****************************************************************************/ /**************************************************************************** * Author: Juergen Pfeifer, 1997 * ****************************************************************************/ // $Id: cursslk.h,v 1.19 2021/04/17 18:11:08 tom Exp $ #ifndef NCURSES_CURSSLK_H_incl #define NCURSES_CURSSLK_H_incl #include <cursesw.h> class NCURSES_CXX_IMPEXP Soft_Label_Key_Set { public: // This inner class represents the attributes of a Soft Label Key (SLK) class NCURSES_CXX_IMPEXP Soft_Label_Key { friend class Soft_Label_Key_Set; public: typedef enum { Left=0, Center=1, Right=2 } Justification; private: char *label; // The Text of the Label Justification format; // The Justification int num; // The number of the Label Soft_Label_Key() : label(NULL), format(Left), num(-1) { } virtual ~Soft_Label_Key() { delete[] label; }; public: // Set the text of the Label Soft_Label_Key& operator=(char *text); // Set the Justification of the Label Soft_Label_Key& operator=(Justification just) { format = just; return *this; } // Retrieve the text of the label inline char* operator()(void) const { return label; } Soft_Label_Key& operator=(const Soft_Label_Key& rhs) { if (this != &rhs) { *this = rhs; } return *this; } Soft_Label_Key(const Soft_Label_Key& rhs) : label(NULL), format(rhs.format), num(rhs.num) { *this = rhs.label; } }; public: typedef enum { None = -1, Three_Two_Three = 0, Four_Four = 1, PC_Style = 2, PC_Style_With_Index = 3 } Label_Layout; private: static long count; // Number of Key Sets static Label_Layout format; // Layout of the Key Sets static int num_labels; // Number Of Labels in Key Sets bool b_attrInit; // Are attributes initialized Soft_Label_Key *slk_array; // The array of SLK's // Init the Key Set void init(); // Activate or Deactivate Label# i, Label counting starts with 1! void activate_label(int i, bool bf=TRUE); // Activate of Deactivate all Labels void activate_labels(bool bf); protected: inline void Error (const char* msg) const THROWS(NCursesException) { THROW(new NCursesException (msg)); } // Remove SLK's from screen void clear() { if (ERR==::slk_clear()) Error("slk_clear"); } // Restore them void restore() { if (ERR==::slk_restore()) Error("slk_restore"); } public: // Construct a Key Set, use the most comfortable layout as default. // You must create a Soft_Label_Key_Set before you create any object of // the NCursesWindow, NCursesPanel or derived classes. (Actually before // ::initscr() is called). explicit Soft_Label_Key_Set(Label_Layout fmt); // This constructor assumes, that you already constructed a Key Set // with a layout by the constructor above. This layout will be reused. Soft_Label_Key_Set(); Soft_Label_Key_Set& operator=(const Soft_Label_Key_Set& rhs) { if (this != &rhs) { *this = rhs; init(); // allocate a new slk_array[] } return *this; } Soft_Label_Key_Set(const Soft_Label_Key_Set& rhs) : b_attrInit(rhs.b_attrInit), slk_array(NULL) { init(); // allocate a new slk_array[] } virtual ~Soft_Label_Key_Set() THROWS(NCursesException); // Get Label# i. Label counting starts with 1! Soft_Label_Key& operator[](int i); // Retrieve number of Labels int labels() const; // Refresh the SLK portion of the screen inline void refresh() { if (ERR==::slk_refresh()) Error("slk_refresh"); } // Mark the SLK portion of the screen for refresh, defer actual refresh // until next update call. inline void noutrefresh() { if (ERR==::slk_noutrefresh()) Error("slk_noutrefresh"); } // Mark the whole SLK portion of the screen as modified inline void touch() { if (ERR==::slk_touch()) Error("slk_touch"); } // Activate Label# i inline void show(int i) { activate_label(i,FALSE); activate_label(i,TRUE); } // Hide Label# i inline void hide(int i) { activate_label(i,FALSE); } // Show all Labels inline void show() { activate_labels(FALSE); activate_labels(TRUE); } // Hide all Labels inline void hide() { activate_labels(FALSE); } inline void attron(attr_t attrs) { if (ERR==::slk_attron(attrs)) Error("slk_attron"); } inline void attroff(attr_t attrs) { if (ERR==::slk_attroff(attrs)) Error("slk_attroff"); } inline void attrset(attr_t attrs) { if (ERR==::slk_attrset(attrs)) Error("slk_attrset"); } inline void color(short color_pair_number) { if (ERR==::slk_color(color_pair_number)) Error("slk_color"); } inline attr_t attr() const { return ::slk_attr(); } }; #endif /* NCURSES_CURSSLK_H_incl */
[+]
..
[-] iconv.h
[edit]
[-] evrpc.h
[edit]
[+]
gnu
[-] expat_config.h
[edit]
[-] ctype.h
[edit]
[-] limits.h
[edit]
[-] tar.h
[edit]
[-] evdns.h
[edit]
[-] mcheck.h
[edit]
[+]
libxslt
[-] utmp.h
[edit]
[-] printf.h
[edit]
[-] term.h
[edit]
[+]
gssrpc
[-] time.h
[edit]
[-] nl_types.h
[edit]
[-] gdfontl.h
[edit]
[+]
netipx
[+]
asm-generic
[-] termios.h
[edit]
[-] gd.h
[edit]
[-] pcre2.h
[edit]
[+]
fontconfig
[-] gpg-error.h
[edit]
[-] ftw.h
[edit]
[+]
c++
[-] maxminddb_config-64.h
[edit]
[-] features-time64.h
[edit]
[-] cpuidle.h
[edit]
[-] event.h
[edit]
[-] gnu-versions.h
[edit]
[+]
asm
[-] png.h
[edit]
[-] krb5.h
[edit]
[-] pcre_scanner.h
[edit]
[-] fts.h
[edit]
[-] threads.h
[edit]
[+]
gssapi
[-] jpeglib.h
[edit]
[-] utmpx.h
[edit]
[+]
sound
[-] complex.h
[edit]
[-] err.h
[edit]
[-] strings.h
[edit]
[-] pcrecpparg.h
[edit]
[-] spawn.h
[edit]
[+]
finclude
[-] panel.h
[edit]
[-] fmtmsg.h
[edit]
[+]
xcb
[+]
brotli
[-] tiffio.hxx
[edit]
[-] verto-module.h
[edit]
[-] idna.h
[edit]
[-] jconfig.h
[edit]
[-] tld.h
[edit]
[+]
rpc
[+]
netinet
[-] maxminddb.h
[edit]
[+]
drm
[-] thread_db.h
[edit]
[+]
neteconet
[-] autosprintf.h
[edit]
[+]
google
[-] dlfcn.h
[edit]
[-] ncurses_dll.h
[edit]
[-] tiff.h
[edit]
[+]
ext2fs
[-] monetary.h
[edit]
[-] gdfontt.h
[edit]
[-] wait.h
[edit]
[-] keyutils.h
[edit]
[+]
sepol
[-] sgtty.h
[edit]
[-] jerror.h
[edit]
[-] form.h
[edit]
[-] assert.h
[edit]
[-] tic.h
[edit]
[-] mntent.h
[edit]
[-] cursesm.h
[edit]
[-] stdio.h
[edit]
[-] error.h
[edit]
[-] execinfo.h
[edit]
[-] ieee754.h
[edit]
[-] menu.h
[edit]
[-] cursesp.h
[edit]
[+]
libmount
[-] ltdl.h
[edit]
[-] cursesw.h
[edit]
[-] jpegint.h
[edit]
[-] entities.h
[edit]
[+]
rdma
[-] lzma.h
[edit]
[-] zlib.h
[edit]
[-] pwd.h
[edit]
[+]
nfs
[+]
python3.9
[-] nc_tparm.h
[edit]
[-] gdfontg.h
[edit]
[-] gconv.h
[edit]
[-] termcap.h
[edit]
[-] etip.h
[edit]
[+]
libltdl
[+]
et
[+]
protobuf-c
[+]
bits
[+]
net
[-] ttyent.h
[edit]
[-] inttypes.h
[edit]
[-] nss.h
[edit]
[-] semaphore.h
[edit]
[-] kdb.h
[edit]
[+]
arpa
[-] alloca.h
[edit]
[-] ucontext.h
[edit]
[-] tgmath.h
[edit]
[-] tiffvers.h
[edit]
[-] fenv.h
[edit]
[-] gdfonts.h
[edit]
[-] string.h
[edit]
[-] ffitarget.h
[edit]
[-] lmdb.h
[edit]
[-] fpu_control.h
[edit]
[+]
unicode
[-] byteswap.h
[edit]
[-] setjmp.h
[edit]
[+]
sys
[-] pr29.h
[edit]
[-] zconf.h
[edit]
[-] stdint.h
[edit]
[-] errno.h
[edit]
[-] mqueue.h
[edit]
[-] evutil.h
[edit]
[+]
harfbuzz
[-] ffi-x86_64.h
[edit]
[-] grp.h
[edit]
[-] gdfontmb.h
[edit]
[-] stdc-predef.h
[edit]
[-] malloc.h
[edit]
[-] tiffconf.h
[edit]
[-] pnglibconf.h
[edit]
[-] tiffconf-64.h
[edit]
[-] resolv.h
[edit]
[-] FlexLexer.h
[edit]
[-] punycode.h
[edit]
[+]
blkid
[-] glob.h
[edit]
[-] unctrl.h
[edit]
[-] regex.h
[edit]
[+]
xen
[-] signal.h
[edit]
[+]
netrose
[+]
openssl
[-] ifaddrs.h
[edit]
[-] unistd.h
[edit]
[-] gssapi.h
[edit]
[+]
misc
[-] ffi.h
[edit]
[+]
kadm5
[+]
freetype2
[+]
video
[-] tiffio.h
[edit]
[-] wchar.h
[edit]
[-] elf.h
[edit]
[-] ncurses.h
[edit]
[-] proc_service.h
[edit]
[-] uchar.h
[edit]
[-] gdbm.h
[edit]
[-] langinfo.h
[edit]
[-] pcre.h
[edit]
[+]
webp
[-] values.h
[edit]
[+]
libexslt
[-] jconfig-64.h
[edit]
[-] netdb.h
[edit]
[-] cpio.h
[edit]
[-] libaio.h
[edit]
[-] powercap.h
[edit]
[-] dbm.h
[edit]
[-] pngconf.h
[edit]
[+]
netpacket
[-] cursslk.h
[edit]
[-] link.h
[edit]
[+]
security
[-] lastlog.h
[edit]
[-] wordexp.h
[edit]
[-] gd_io.h
[edit]
[+]
X11
[-] verto.h
[edit]
[-] curses.h
[edit]
[-] wctype.h
[edit]
[+]
netax25
[-] libintl.h
[edit]
[-] gettext-po.h
[edit]
[+]
netrom
[-] stringprep.h
[edit]
[-] argp.h
[edit]
[+]
lzma
[-] ulimit.h
[edit]
[+]
fwctl
[-] gnumake.h
[edit]
[-] krad.h
[edit]
[-] pcre_stringpiece.h
[edit]
[-] expat_external.h
[edit]
[-] shadow.h
[edit]
[-] expat.h
[edit]
[+]
pcp
[-] ar.h
[edit]
[-] endian.h
[edit]
[+]
gdbm
[-] fstab.h
[edit]
[-] envz.h
[edit]
[-] pty.h
[edit]
[-] eti.h
[edit]
[-] paths.h
[edit]
[-] argz.h
[edit]
[-] math.h
[edit]
[-] getopt.h
[edit]
[-] gpgrt.h
[edit]
[+]
ncurses
[-] gdcache.h
[edit]
[-] fstrm.h
[edit]
[-] obstack.h
[edit]
[-] maxminddb_config.h
[edit]
[+]
fstrm
[-] term_entry.h
[edit]
[-] sched.h
[edit]
[-] memory.h
[edit]
[-] gd_color_map.h
[edit]
[-] gdfx.h
[edit]
[+]
mysql
[+]
json-c
[+]
graphite2
[-] locale.h
[edit]
[+]
libxml2
[+]
e2p
[-] com_err.h
[edit]
[-] pcre2posix.h
[edit]
[+]
scsi
[+]
ncursesw
[+]
krb5
[-] gd_errors.h
[edit]
[+]
event2
[-] search.h
[edit]
[-] re_comp.h
[edit]
[-] fnmatch.h
[edit]
[+]
libpng16
[-] ndbm.h
[edit]
[-] syslog.h
[edit]
[-] sysexits.h
[edit]
[+]
netash
[-] cursesf.h
[edit]
[-] pthread.h
[edit]
[+]
linux
[-] pcrecpp.h
[edit]
[-] fcntl.h
[edit]
[-] syscall.h
[edit]
[-] libgen.h
[edit]
[-] ffitarget-x86_64.h
[edit]
[-] features.h
[edit]
[-] a.out.h
[edit]
[+]
glib-2.0
[-] evhttp.h
[edit]
[+]
gio-unix-2.0
[-] idn-free.h
[edit]
[-] gshadow.h
[edit]
[-] stdlib.h
[edit]
[-] dirent.h
[edit]
[-] pcreposix.h
[edit]
[-] crypt.h
[edit]
[+]
selinux
[-] regexp.h
[edit]
[-] aliases.h
[edit]
[-] stdio_ext.h
[edit]
[+]
netatalk
[-] utime.h
[edit]
[-] termio.h
[edit]
[-] poll.h
[edit]
[+]
GL
[+]
sysprof-4
[-] aio.h
[edit]
[-] gdpp.h
[edit]
[+]
mtd
[-] stab.h
[edit]
[-] idn-int.h
[edit]
[-] cursesapp.h
[edit]
[-] profile.h
[edit]
[-] jmorecfg.h
[edit]
[+]
bind9
[+]
protocols
[+]
netiucv
[-] bzlib.h
[edit]