diff options
Diffstat (limited to 'menu')
39 files changed, 204 insertions, 146 deletions
diff --git a/menu/Makefile.in b/menu/Makefile.in index 9cc1dd6..495651c 100644 --- a/menu/Makefile.in +++ b/menu/Makefile.in @@ -1,6 +1,7 @@ -# $Id: Makefile.in,v 1.61 2014/12/20 20:28:09 tom Exp $ +# $Id: Makefile.in,v 1.66 2020/02/02 23:34:34 tom Exp $ ############################################################################## -# Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. # +# Copyright 2020 Thomas E. Dickey # +# Copyright 1998-2015,2018 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"), # @@ -42,7 +43,7 @@ # turn off _all_ suffix rules; we'll generate our own .SUFFIXES: -SHELL = /bin/sh +SHELL = @SHELL@ VPATH = @srcdir@ THIS = Makefile @@ -75,7 +76,7 @@ LT_UNDEF = @LT_UNDEF@ INSTALL = @INSTALL@ INSTALL_LIB = @INSTALL@ @INSTALL_LIB@ -INSTALL_PROG = @INSTALL_PROGRAM@ +INSTALL_PROG = @INSTALL_PROGRAM@ @INSTALL_OPT_S@ INSTALL_DATA = @INSTALL_DATA@ AR = @AR@ @@ -107,7 +108,7 @@ LINK = $(LIBTOOL_LINK) LDFLAGS = @LDFLAGS@ @LD_MODEL@ @LIBS@ SHLIB_DIRS = -L../lib -SHLIB_LIST = $(SHLIB_DIRS) -lncurses@LIB_SUFFIX@ @SHLIB_LIST@ +SHLIB_LIST = $(SHLIB_DIRS) -lncurses@USE_LIB_SUFFIX@ @SHLIB_LIST@ RPATH_LIST = @RPATH_LIST@ RESULTING_SYMS = @RESULTING_SYMS@ @@ -171,6 +172,7 @@ mostlyclean :: clean :: mostlyclean -rm -f $(AUTO_SRC) + -rm -rf .libs *.dSYM distclean :: clean -rm -f Makefile diff --git a/menu/READ.ME b/menu/READ.ME index 10ff5b0..e790f43 100644 --- a/menu/READ.ME +++ b/menu/READ.ME @@ -1,5 +1,6 @@ ------------------------------------------------------------------------------- --- Copyright (c) 1998-2003,2006 Free Software Foundation, Inc. -- +-- Copyright 2020 Thomas E. Dickey -- +-- Copyright 1998-2003,2006 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 -- @@ -25,7 +26,7 @@ -- sale, use or other dealings in this Software without prior written -- -- authorization. -- ------------------------------------------------------------------------------- --- $Id: READ.ME,v 1.9 2006/04/22 23:13:05 tom Exp $ +-- $Id: READ.ME,v 1.10 2020/02/02 23:34:34 tom Exp $ ------------------------------------------------------------------------------- This is a clone of the menu library that is available with typical @@ -1,5 +1,6 @@ /**************************************************************************** - * Copyright (c) 1998-2002,2003 Free Software Foundation, Inc. * + * Copyright 2020 Thomas E. Dickey * + * Copyright 1998-2002,2003 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 * @@ -30,7 +31,7 @@ * Author: Juergen Pfeifer, 1995,1997 * ****************************************************************************/ -/* $Id: eti.h,v 1.8 2003/10/25 15:24:29 tom Exp $ */ +/* $Id: eti.h,v 1.9 2020/02/02 23:34:34 tom Exp $ */ #ifndef NCURSES_ETI_H_incl #define NCURSES_ETI_H_incl 1 diff --git a/menu/headers b/menu/headers index 18c20af..2f058aa 100644 --- a/menu/headers +++ b/menu/headers @@ -1,5 +1,6 @@ ############################################################################## -# Copyright (c) 1998,2006 Free Software Foundation, Inc. # +# Copyright 2020 Thomas E. Dickey # +# Copyright 1998,2006 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"), # diff --git a/menu/llib-lmenu b/menu/llib-lmenu index 13ecaf8..7a5a41b 100644 --- a/menu/llib-lmenu +++ b/menu/llib-lmenu @@ -1,5 +1,6 @@ /**************************************************************************** - * Copyright (c) 1999-2005,2010 Free Software Foundation, Inc. * + * Copyright 2020 Thomas E. Dickey * + * Copyright 1998-2010,2015 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 * @@ -27,7 +28,7 @@ ****************************************************************************/ /**************************************************************************** - * Author: Thomas E. Dickey 1996-2005,2010 * + * Author: Thomas E. Dickey 1996-on * ****************************************************************************/ /* LINTLIBRARY */ diff --git a/menu/llib-lmenut b/menu/llib-lmenut index 951719f..1d348c0 100644 --- a/menu/llib-lmenut +++ b/menu/llib-lmenut @@ -1,5 +1,6 @@ /**************************************************************************** - * Copyright (c) 2010 Free Software Foundation, Inc. * + * Copyright 2020 Thomas E. Dickey * + * Copyright 2010,2015 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 * @@ -27,7 +28,7 @@ ****************************************************************************/ /**************************************************************************** - * Author: Thomas E. Dickey 2010 * + * Author: Thomas E. Dickey 2010-on * ****************************************************************************/ /* LINTLIBRARY */ diff --git a/menu/llib-lmenutw b/menu/llib-lmenutw index 0cd559e..1d348c0 100644 --- a/menu/llib-lmenutw +++ b/menu/llib-lmenutw @@ -1,5 +1,6 @@ /**************************************************************************** - * Copyright (c) 2010 Free Software Foundation, Inc. * + * Copyright 2020 Thomas E. Dickey * + * Copyright 2010,2015 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 * @@ -27,7 +28,7 @@ ****************************************************************************/ /**************************************************************************** - * Author: Thomas E. Dickey 2010 * + * Author: Thomas E. Dickey 2010-on * ****************************************************************************/ /* LINTLIBRARY */ @@ -237,8 +238,6 @@ const char *item_description( /* ./m_item_new.c */ -#include <wctype.h> - #undef new_item ITEM *new_item( const char *name, diff --git a/menu/llib-lmenuw b/menu/llib-lmenuw index 0998f9b..6ad9614 100644 --- a/menu/llib-lmenuw +++ b/menu/llib-lmenuw @@ -1,5 +1,6 @@ /**************************************************************************** - * Copyright (c) 2002-2005,2010 Free Software Foundation, Inc. * + * Copyright 2020 Thomas E. Dickey * + * Copyright 2002-2010,2015 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 * @@ -27,7 +28,7 @@ ****************************************************************************/ /**************************************************************************** - * Author: Thomas E. Dickey 2002-2005,2010 * + * Author: Thomas E. Dickey 2002-on * ****************************************************************************/ /* LINTLIBRARY */ @@ -237,8 +238,6 @@ const char *item_description( /* ./m_item_new.c */ -#include <wctype.h> - #undef new_item ITEM *new_item( const char *name, diff --git a/menu/m_attribs.c b/menu/m_attribs.c index eff90d6..e3c88ac 100644 --- a/menu/m_attribs.c +++ b/menu/m_attribs.c @@ -1,5 +1,6 @@ /**************************************************************************** - * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * + * Copyright 2020 Thomas E. Dickey * + * Copyright 1998-2010,2012 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 * @@ -37,7 +38,7 @@ #include "menu.priv.h" -MODULE_ID("$Id: m_attribs.c,v 1.17 2012/03/10 23:43:41 tom Exp $") +MODULE_ID("$Id: m_attribs.c,v 1.18 2020/02/02 23:34:34 tom Exp $") /* Macro to redraw menu if it is posted and changed */ #define Refresh_Menu(menu) \ diff --git a/menu/m_cursor.c b/menu/m_cursor.c index 9891de4..3f8e548 100644 --- a/menu/m_cursor.c +++ b/menu/m_cursor.c @@ -1,5 +1,6 @@ /**************************************************************************** - * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * + * Copyright 2020 Thomas E. Dickey * + * Copyright 1998-2009,2010 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 * @@ -37,7 +38,7 @@ #include "menu.priv.h" -MODULE_ID("$Id: m_cursor.c,v 1.22 2010/01/23 21:20:10 tom Exp $") +MODULE_ID("$Id: m_cursor.c,v 1.23 2020/02/02 23:34:34 tom Exp $") /*--------------------------------------------------------------------------- | Facility : libnmenu diff --git a/menu/m_driver.c b/menu/m_driver.c index 1a7a391..e592bab 100644 --- a/menu/m_driver.c +++ b/menu/m_driver.c @@ -1,5 +1,6 @@ /**************************************************************************** - * Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. * + * Copyright 2020 Thomas E. Dickey * + * Copyright 1998-2012,2016 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 * @@ -37,7 +38,7 @@ #include "menu.priv.h" -MODULE_ID("$Id: m_driver.c,v 1.31 2012/03/10 23:43:41 tom Exp $") +MODULE_ID("$Id: m_driver.c,v 1.34 2020/02/02 23:34:34 tom Exp $") /* Macros */ @@ -138,7 +139,7 @@ _nc_Match_Next_Character_In_Item_Name /* we artificially position one item back, because in the do...while loop we start with the next item. This means, that with a new pattern search we always start the scan with the actual item. If - we do a NEXT_PATTERN oder PREV_PATTERN search, we start with the + we do a NEXT_PATTERN or PREV_PATTERN search, we start with the one after or before the actual item. */ if (--idx < 0) idx = menu->nitems - 1; @@ -530,7 +531,11 @@ menu_driver(MENU * menu, int c) } } else - result = E_REQUEST_DENIED; + { + if (menu->opt & O_MOUSE_MENU) + ungetmouse(&event); /* let someone else handle this */ + result = E_REQUEST_DENIED; + } } #endif /* NCURSES_MOUSE_VERSION */ else diff --git a/menu/m_format.c b/menu/m_format.c index 2d681a6..9738dbf 100644 --- a/menu/m_format.c +++ b/menu/m_format.c @@ -1,5 +1,6 @@ /**************************************************************************** - * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * + * Copyright 2020 Thomas E. Dickey * + * Copyright 1998-2010,2012 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 * @@ -37,7 +38,7 @@ #include "menu.priv.h" -MODULE_ID("$Id: m_format.c,v 1.18 2012/06/09 23:54:02 tom Exp $") +MODULE_ID("$Id: m_format.c,v 1.19 2020/02/02 23:34:34 tom Exp $") #define minimum(a,b) ((a)<(b) ? (a): (b)) diff --git a/menu/m_global.c b/menu/m_global.c index fc4103c..489987f 100644 --- a/menu/m_global.c +++ b/menu/m_global.c @@ -1,5 +1,6 @@ /**************************************************************************** - * Copyright (c) 1998-2012,2014 Free Software Foundation, Inc. * + * Copyright 2020 Thomas E. Dickey * + * Copyright 1998-2012,2014 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 * @@ -37,7 +38,7 @@ #include "menu.priv.h" -MODULE_ID("$Id: m_global.c,v 1.28 2014/03/15 20:37:22 tom Exp $") +MODULE_ID("$Id: m_global.c,v 1.30 2020/02/02 23:34:34 tom Exp $") static char mark[] = "-"; /* *INDENT-OFF* */ @@ -53,7 +54,7 @@ NCURSES_EXPORT_VAR(MENU) _nc_Default_Menu = { 0, /* length of widest description */ 1, /* length of mark */ 1, /* length of one item */ - 1, /* Spacing for descriptor */ + 1, /* Spacing for descriptor */ 1, /* Spacing for columns */ 1, /* Spacing for rows */ (char *)0, /* buffer used to store match chars */ @@ -68,7 +69,7 @@ NCURSES_EXPORT_VAR(MENU) _nc_Default_Menu = { 0, /* Top row of menu */ (chtype)A_REVERSE, /* Attribute for selection */ (chtype)A_NORMAL, /* Attribute for nonselection */ - (chtype)A_UNDERLINE, /* Attribute for inactive */ + (chtype)A_UNDERLINE, /* Attribute for inactive */ ' ', /* Pad character */ (Menu_Hook)0, /* Menu init */ (Menu_Hook)0, /* Menu term */ @@ -77,7 +78,7 @@ NCURSES_EXPORT_VAR(MENU) _nc_Default_Menu = { (void *)0, /* userptr */ mark, /* mark */ ALL_MENU_OPTS, /* options */ - 0 /* status */ + 0 /* status */ }; NCURSES_EXPORT_VAR(ITEM) _nc_Default_Item = { @@ -98,9 +99,9 @@ NCURSES_EXPORT_VAR(ITEM) _nc_Default_Item = { /* *INDENT-ON* */ /*--------------------------------------------------------------------------- -| Facility : libnmenu +| Facility : libnmenu | Function : static void ComputeMaximum_NameDesc_Lenths(MENU *menu) -| +| | Description : Calculates the maximum name and description lengths | of the items connected to the menu | @@ -132,10 +133,10 @@ ComputeMaximum_NameDesc_Lengths(MENU * menu) } /*--------------------------------------------------------------------------- -| Facility : libnmenu +| Facility : libnmenu | Function : static void ResetConnectionInfo(MENU *, ITEM **) -| -| Description : Reset all informations in the menu and the items in +| +| Description : Reset all information in the menu and the items in | the item array that indicates a connection | | Return Values : - @@ -160,7 +161,7 @@ ResetConnectionInfo(MENU * menu, ITEM ** items) } /*--------------------------------------------------------------------------- -| Facility : libnmenu +| Facility : libnmenu | Function : bool _nc_Connect_Items(MENU *menu, ITEM **items) | | Description : Connect the items in the item array to the menu. @@ -218,16 +219,16 @@ _nc_Connect_Items(MENU * menu, ITEM ** items) } } - /* If we fall through to this point, we have to reset all items connection + /* If we fall through to this point, we have to reset all items connection and inform about a reject connection */ ResetConnectionInfo(menu, items); return (FALSE); } /*--------------------------------------------------------------------------- -| Facility : libnmenu +| Facility : libnmenu | Function : void _nc_Disconnect_Items(MENU *menu) -| +| | Description : Disconnect the menus item array from the menu | | Return Values : - @@ -240,9 +241,9 @@ _nc_Disconnect_Items(MENU * menu) } /*--------------------------------------------------------------------------- -| Facility : libnmenu +| Facility : libnmenu | Function : int _nc_Calculate_Text_Width(const TEXT * item) -| +| | Description : Calculate the number of columns for a TEXT. | | Return Values : the width @@ -328,9 +329,9 @@ calculate_actual_width(MENU * menu, bool name) #endif /*--------------------------------------------------------------------------- -| Facility : libnmenu +| Facility : libnmenu | Function : void _nc_Calculate_Item_Length_and_Width(MENU *menu) -| +| | Description : Calculate the length of an item and the width of the | whole menu. | @@ -366,9 +367,9 @@ _nc_Calculate_Item_Length_and_Width(MENU * menu) } /*--------------------------------------------------------------------------- -| Facility : libnmenu +| Facility : libnmenu | Function : void _nc_Link_Item(MENU *menu) -| +| | Description : Statically calculate for every item its four neighbors. | This depends on the orientation of the menu. This | static approach simplifies navigation in the menu a lot. @@ -495,9 +496,9 @@ _nc_Link_Items(MENU * menu) } /*--------------------------------------------------------------------------- -| Facility : libnmenu +| Facility : libnmenu | Function : void _nc_Show_Menu(const MENU* menu) -| +| | Description : Update the window that is associated with the menu | | Return Values : - @@ -530,12 +531,12 @@ _nc_Show_Menu(const MENU * menu) } /*--------------------------------------------------------------------------- -| Facility : libnmenu +| Facility : libnmenu | Function : void _nc_New_TopRow_and_CurrentItem( -| MENU *menu, -| int new_toprow, +| MENU *menu, +| int new_toprow, | ITEM *new_current_item) -| +| | Description : Redisplay the menu so that the given row becomes the | top row and the given item becomes the new current | item. diff --git a/menu/m_hook.c b/menu/m_hook.c index 671fab6..c98aede 100644 --- a/menu/m_hook.c +++ b/menu/m_hook.c @@ -1,5 +1,6 @@ /**************************************************************************** - * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * + * Copyright 2018,2020 Thomas E. Dickey * + * Copyright 1998-2012,2016 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 * @@ -37,13 +38,14 @@ #include "menu.priv.h" -MODULE_ID("$Id: m_hook.c,v 1.16 2012/03/10 23:43:41 tom Exp $") +MODULE_ID("$Id: m_hook.c,v 1.19 2020/02/02 23:34:34 tom Exp $") /* "Template" macro to generate function to set application specific hook */ #define GEN_HOOK_SET_FUNCTION( typ, name ) \ NCURSES_IMPEXP int NCURSES_API set_ ## typ ## _ ## name (MENU *menu, Menu_Hook func )\ {\ - T((T_CALLED("set_" #typ "_" #name "(%p,%p)"), (void *) menu, func));\ + TR_FUNC_BFR(1);\ + T((T_CALLED("set_" #typ "_" #name "(%p,%s)"), (void *) menu, TR_FUNC_ARG(0, func)));\ (Normalize_Menu(menu) -> typ ## name = func );\ RETURN(E_OK);\ } diff --git a/menu/m_item_cur.c b/menu/m_item_cur.c index 18b1a27..c09bf31 100644 --- a/menu/m_item_cur.c +++ b/menu/m_item_cur.c @@ -1,5 +1,6 @@ /**************************************************************************** - * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. * + * Copyright 2020 Thomas E. Dickey * + * Copyright 1998-2004,2010 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 * @@ -37,7 +38,7 @@ #include "menu.priv.h" -MODULE_ID("$Id: m_item_cur.c,v 1.18 2010/01/23 21:20:10 tom Exp $") +MODULE_ID("$Id: m_item_cur.c,v 1.19 2020/02/02 23:34:34 tom Exp $") /*--------------------------------------------------------------------------- | Facility : libnmenu diff --git a/menu/m_item_nam.c b/menu/m_item_nam.c index 3ed1d37..aaf54e0 100644 --- a/menu/m_item_nam.c +++ b/menu/m_item_nam.c @@ -1,5 +1,6 @@ /**************************************************************************** - * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. * + * Copyright 2020 Thomas E. Dickey * + * Copyright 1998-2004,2010 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 * @@ -37,7 +38,7 @@ #include "menu.priv.h" -MODULE_ID("$Id: m_item_nam.c,v 1.15 2010/01/23 21:20:10 tom Exp $") +MODULE_ID("$Id: m_item_nam.c,v 1.16 2020/02/02 23:34:34 tom Exp $") /*--------------------------------------------------------------------------- | Facility : libnmenu diff --git a/menu/m_item_new.c b/menu/m_item_new.c index 710ef09..1e7950d 100644 --- a/menu/m_item_new.c +++ b/menu/m_item_new.c @@ -1,5 +1,6 @@ /**************************************************************************** - * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * + * Copyright 2020 Thomas E. Dickey * + * Copyright 1998-2010,2012 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 * @@ -44,7 +45,7 @@ #endif #endif -MODULE_ID("$Id: m_item_new.c,v 1.33 2012/06/09 23:55:15 tom Exp $") +MODULE_ID("$Id: m_item_new.c,v 1.34 2020/02/02 23:34:34 tom Exp $") /*--------------------------------------------------------------------------- | Facility : libnmenu diff --git a/menu/m_item_opt.c b/menu/m_item_opt.c index 91385da..f8df220 100644 --- a/menu/m_item_opt.c +++ b/menu/m_item_opt.c @@ -1,5 +1,6 @@ /**************************************************************************** - * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. * + * Copyright 2020 Thomas E. Dickey * + * Copyright 1998-2004,2010 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 * @@ -37,7 +38,7 @@ #include "menu.priv.h" -MODULE_ID("$Id: m_item_opt.c,v 1.18 2010/01/23 21:20:10 tom Exp $") +MODULE_ID("$Id: m_item_opt.c,v 1.19 2020/02/02 23:34:34 tom Exp $") /*--------------------------------------------------------------------------- | Facility : libnmenu diff --git a/menu/m_item_top.c b/menu/m_item_top.c index 752e20d..9417e72 100644 --- a/menu/m_item_top.c +++ b/menu/m_item_top.c @@ -1,5 +1,6 @@ /**************************************************************************** - * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. * + * Copyright 2020 Thomas E. Dickey * + * Copyright 1998-2004,2010 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 * @@ -37,7 +38,7 @@ #include "menu.priv.h" -MODULE_ID("$Id: m_item_top.c,v 1.11 2010/01/23 21:20:10 tom Exp $") +MODULE_ID("$Id: m_item_top.c,v 1.12 2020/02/02 23:34:34 tom Exp $") /*--------------------------------------------------------------------------- | Facility : libnmenu diff --git a/menu/m_item_use.c b/menu/m_item_use.c index 8cf294b..3081432 100644 --- a/menu/m_item_use.c +++ b/menu/m_item_use.c @@ -1,5 +1,6 @@ /**************************************************************************** - * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. * + * Copyright 2020 Thomas E. Dickey * + * Copyright 1998-2004,2010 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 * @@ -37,14 +38,14 @@ #include "menu.priv.h" -MODULE_ID("$Id: m_item_use.c,v 1.17 2010/01/23 21:20:10 tom Exp $") +MODULE_ID("$Id: m_item_use.c,v 1.19 2020/02/02 23:34:34 tom Exp $") /*--------------------------------------------------------------------------- -| Facility : libnmenu +| Facility : libnmenu | Function : int set_item_userptr(ITEM *item, void *userptr) -| +| | Description : Set the pointer that is reserved in any item to store -| application relevant informations. +| application relevant information. | | Return Values : E_OK - success +--------------------------------------------------------------------------*/ @@ -57,11 +58,11 @@ set_item_userptr(ITEM * item, void *userptr) } /*--------------------------------------------------------------------------- -| Facility : libnmenu +| Facility : libnmenu | Function : void *item_userptr(const ITEM *item) -| +| | Description : Return the pointer that is reserved in any item to store -| application relevant informations. +| application relevant information. | | Return Values : Value of the pointer. If no such pointer has been set, | NULL is returned. diff --git a/menu/m_item_val.c b/menu/m_item_val.c index 337dbfc..d8d11f2 100644 --- a/menu/m_item_val.c +++ b/menu/m_item_val.c @@ -1,5 +1,6 @@ /**************************************************************************** - * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. * + * Copyright 2020 Thomas E. Dickey * + * Copyright 1998-2004,2010 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 * @@ -37,7 +38,7 @@ #include "menu.priv.h" -MODULE_ID("$Id: m_item_val.c,v 1.15 2010/01/23 21:20:10 tom Exp $") +MODULE_ID("$Id: m_item_val.c,v 1.16 2020/02/02 23:34:34 tom Exp $") /*--------------------------------------------------------------------------- | Facility : libnmenu diff --git a/menu/m_item_vis.c b/menu/m_item_vis.c index ff84740..8e99341 100644 --- a/menu/m_item_vis.c +++ b/menu/m_item_vis.c @@ -1,5 +1,6 @@ /**************************************************************************** - * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. * + * Copyright 2020 Thomas E. Dickey * + * Copyright 1998-2004,2010 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 * @@ -37,7 +38,7 @@ #include "menu.priv.h" -MODULE_ID("$Id: m_item_vis.c,v 1.16 2010/01/23 21:20:10 tom Exp $") +MODULE_ID("$Id: m_item_vis.c,v 1.17 2020/02/02 23:34:34 tom Exp $") /*--------------------------------------------------------------------------- | Facility : libnmenu diff --git a/menu/m_items.c b/menu/m_items.c index 5397685..9f46c8b 100644 --- a/menu/m_items.c +++ b/menu/m_items.c @@ -1,5 +1,6 @@ /**************************************************************************** - * Copyright (c) 1998-2005,2010 Free Software Foundation, Inc. * + * Copyright 2020 Thomas E. Dickey * + * Copyright 1998-2005,2010 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 * @@ -37,7 +38,7 @@ #include "menu.priv.h" -MODULE_ID("$Id: m_items.c,v 1.17 2010/01/23 21:20:10 tom Exp $") +MODULE_ID("$Id: m_items.c,v 1.18 2020/02/02 23:34:34 tom Exp $") /*--------------------------------------------------------------------------- | Facility : libnmenu diff --git a/menu/m_new.c b/menu/m_new.c index 79f9292..cf89196 100644 --- a/menu/m_new.c +++ b/menu/m_new.c @@ -1,5 +1,6 @@ /**************************************************************************** - * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * + * Copyright 2020 Thomas E. Dickey * + * Copyright 1998-2009,2010 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 * @@ -37,7 +38,7 @@ #include "menu.priv.h" -MODULE_ID("$Id: m_new.c,v 1.21 2010/01/23 21:20:11 tom Exp $") +MODULE_ID("$Id: m_new.c,v 1.22 2020/02/02 23:34:34 tom Exp $") /*--------------------------------------------------------------------------- | Facility : libnmenu diff --git a/menu/m_opts.c b/menu/m_opts.c index bc6924b..4c29f33 100644 --- a/menu/m_opts.c +++ b/menu/m_opts.c @@ -1,5 +1,6 @@ /**************************************************************************** - * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. * + * Copyright 2020 Thomas E. Dickey * + * Copyright 1998-2004,2010 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 * @@ -37,7 +38,7 @@ #include "menu.priv.h" -MODULE_ID("$Id: m_opts.c,v 1.20 2010/01/23 21:20:10 tom Exp $") +MODULE_ID("$Id: m_opts.c,v 1.21 2020/02/02 23:34:34 tom Exp $") /*--------------------------------------------------------------------------- | Facility : libnmenu diff --git a/menu/m_pad.c b/menu/m_pad.c index 0abaf67..3d5702a 100644 --- a/menu/m_pad.c +++ b/menu/m_pad.c @@ -1,5 +1,6 @@ /**************************************************************************** - * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * + * Copyright 2020 Thomas E. Dickey * + * Copyright 1998-2010,2012 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 * @@ -37,7 +38,7 @@ #include "menu.priv.h" -MODULE_ID("$Id: m_pad.c,v 1.13 2012/03/10 23:43:41 tom Exp $") +MODULE_ID("$Id: m_pad.c,v 1.14 2020/02/02 23:34:34 tom Exp $") /* Macro to redraw menu if it is posted and changed */ #define Refresh_Menu(menu) \ diff --git a/menu/m_pattern.c b/menu/m_pattern.c index 1764d05..9ff0230 100644 --- a/menu/m_pattern.c +++ b/menu/m_pattern.c @@ -1,5 +1,6 @@ /**************************************************************************** - * Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. * + * Copyright 2020 Thomas E. Dickey * + * Copyright 1998-2006,2010 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 * @@ -37,7 +38,7 @@ #include "menu.priv.h" -MODULE_ID("$Id: m_pattern.c,v 1.16 2010/01/23 21:20:10 tom Exp $") +MODULE_ID("$Id: m_pattern.c,v 1.17 2020/02/02 23:34:34 tom Exp $") /*--------------------------------------------------------------------------- | Facility : libnmenu diff --git a/menu/m_post.c b/menu/m_post.c index a26ba49..2cc0ea0 100644 --- a/menu/m_post.c +++ b/menu/m_post.c @@ -1,5 +1,6 @@ /**************************************************************************** - * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * + * Copyright 2020 Thomas E. Dickey * + * Copyright 1998-2010,2012 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 * @@ -37,7 +38,7 @@ #include "menu.priv.h" -MODULE_ID("$Id: m_post.c,v 1.31 2012/06/09 23:54:35 tom Exp $") +MODULE_ID("$Id: m_post.c,v 1.32 2020/02/02 23:34:34 tom Exp $") /*--------------------------------------------------------------------------- | Facility : libnmenu diff --git a/menu/m_req_name.c b/menu/m_req_name.c index e5f2888..d3f04c1 100644 --- a/menu/m_req_name.c +++ b/menu/m_req_name.c @@ -1,5 +1,6 @@ /**************************************************************************** - * Copyright (c) 1998-2009,2012 Free Software Foundation, Inc. * + * Copyright 2020 Thomas E. Dickey * + * Copyright 1998-2012,2015 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 * @@ -37,27 +38,29 @@ #include "menu.priv.h" -MODULE_ID("$Id: m_req_name.c,v 1.22 2012/07/21 23:27:32 tom Exp $") +MODULE_ID("$Id: m_req_name.c,v 1.24 2020/02/02 23:34:34 tom Exp $") -static const char *request_names[MAX_MENU_COMMAND - MIN_MENU_COMMAND + 1] = +#define DATA(s) { s } + +static const char request_names[MAX_MENU_COMMAND - MIN_MENU_COMMAND + 1][14] = { - "LEFT_ITEM", - "RIGHT_ITEM", - "UP_ITEM", - "DOWN_ITEM", - "SCR_ULINE", - "SCR_DLINE", - "SCR_DPAGE", - "SCR_UPAGE", - "FIRST_ITEM", - "LAST_ITEM", - "NEXT_ITEM", - "PREV_ITEM", - "TOGGLE_ITEM", - "CLEAR_PATTERN", - "BACK_PATTERN", - "NEXT_MATCH", - "PREV_MATCH" + DATA("LEFT_ITEM"), + DATA("RIGHT_ITEM"), + DATA("UP_ITEM"), + DATA("DOWN_ITEM"), + DATA("SCR_ULINE"), + DATA("SCR_DLINE"), + DATA("SCR_DPAGE"), + DATA("SCR_UPAGE"), + DATA("FIRST_ITEM"), + DATA("LAST_ITEM"), + DATA("NEXT_ITEM"), + DATA("PREV_ITEM"), + DATA("TOGGLE_ITEM"), + DATA("CLEAR_PATTERN"), + DATA("BACK_PATTERN"), + DATA("NEXT_MATCH"), + DATA("PREV_MATCH") }; #define A_SIZE (sizeof(request_names)/sizeof(request_names[0])) diff --git a/menu/m_scale.c b/menu/m_scale.c index 068a1cc..e013acd 100644 --- a/menu/m_scale.c +++ b/menu/m_scale.c @@ -1,5 +1,6 @@ /**************************************************************************** - * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. * + * Copyright 2020 Thomas E. Dickey * + * Copyright 1998-2004,2010 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 * @@ -37,7 +38,7 @@ #include "menu.priv.h" -MODULE_ID("$Id: m_scale.c,v 1.10 2010/01/23 21:20:10 tom Exp $") +MODULE_ID("$Id: m_scale.c,v 1.11 2020/02/02 23:34:34 tom Exp $") /*--------------------------------------------------------------------------- | Facility : libnmenu diff --git a/menu/m_spacing.c b/menu/m_spacing.c index 01941f5..9bb746a 100644 --- a/menu/m_spacing.c +++ b/menu/m_spacing.c @@ -1,5 +1,6 @@ /**************************************************************************** - * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. * + * Copyright 2020 Thomas E. Dickey * + * Copyright 1998-2010,2012 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 * @@ -37,7 +38,7 @@ #include "menu.priv.h" -MODULE_ID("$Id: m_spacing.c,v 1.19 2012/03/10 23:43:41 tom Exp $") +MODULE_ID("$Id: m_spacing.c,v 1.20 2020/02/02 23:34:34 tom Exp $") #define MAX_SPC_DESC ((TABSIZE) ? (TABSIZE) : 8) #define MAX_SPC_COLS ((TABSIZE) ? (TABSIZE) : 8) diff --git a/menu/m_sub.c b/menu/m_sub.c index 37529a0..4658e90 100644 --- a/menu/m_sub.c +++ b/menu/m_sub.c @@ -1,5 +1,6 @@ /**************************************************************************** - * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. * + * Copyright 2020 Thomas E. Dickey * + * Copyright 1998-2009,2010 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 * @@ -37,7 +38,7 @@ #include "menu.priv.h" -MODULE_ID("$Id: m_sub.c,v 1.12 2010/01/23 21:20:11 tom Exp $") +MODULE_ID("$Id: m_sub.c,v 1.13 2020/02/02 23:34:34 tom Exp $") /*--------------------------------------------------------------------------- | Facility : libnmenu diff --git a/menu/m_trace.c b/menu/m_trace.c index 094ff86..f5332b1 100644 --- a/menu/m_trace.c +++ b/menu/m_trace.c @@ -1,5 +1,6 @@ /**************************************************************************** - * Copyright (c) 2004-2005,2010 Free Software Foundation, Inc. * + * Copyright 2018,2020 Thomas E. Dickey * + * Copyright 2004-2010,2016 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 * @@ -32,7 +33,7 @@ #include "menu.priv.h" -MODULE_ID("$Id: m_trace.c,v 1.4 2010/01/23 21:20:10 tom Exp $") +MODULE_ID("$Id: m_trace.c,v 1.7 2020/02/02 23:34:34 tom Exp $") NCURSES_EXPORT(ITEM *) _nc_retrace_item(ITEM * code) @@ -65,7 +66,8 @@ _nc_retrace_menu(MENU * code) NCURSES_EXPORT(Menu_Hook) _nc_retrace_menu_hook(Menu_Hook code) { - T((T_RETURN("%p"), code)); + TR_FUNC_BFR(1); + T((T_RETURN("%s"), TR_FUNC_ARG(0, code))); return code; } diff --git a/menu/m_userptr.c b/menu/m_userptr.c index a7359c9..df3a45f 100644 --- a/menu/m_userptr.c +++ b/menu/m_userptr.c @@ -1,5 +1,6 @@ /**************************************************************************** - * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. * + * Copyright 2020 Thomas E. Dickey * + * Copyright 1998-2004,2010 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 * @@ -37,14 +38,14 @@ #include "menu.priv.h" -MODULE_ID("$Id: m_userptr.c,v 1.17 2010/01/23 21:20:10 tom Exp $") +MODULE_ID("$Id: m_userptr.c,v 1.19 2020/02/02 23:34:34 tom Exp $") /*--------------------------------------------------------------------------- -| Facility : libnmenu +| Facility : libnmenu | Function : int set_menu_userptr(MENU *menu, void *userptr) -| +| | Description : Set the pointer that is reserved in any menu to store -| application relevant informations. +| application relevant information. | | Return Values : E_OK - success +--------------------------------------------------------------------------*/ @@ -57,11 +58,11 @@ set_menu_userptr(MENU * menu, void *userptr) } /*--------------------------------------------------------------------------- -| Facility : libnmenu +| Facility : libnmenu | Function : void *menu_userptr(const MENU *menu) -| +| | Description : Return the pointer that is reserved in any menu to -| store application relevant informations. +| store application relevant information. | | Return Values : Value of the pointer. If no such pointer has been set, | NULL is returned diff --git a/menu/m_win.c b/menu/m_win.c index d88fa67..f06c580 100644 --- a/menu/m_win.c +++ b/menu/m_win.c @@ -1,5 +1,6 @@ /**************************************************************************** - * Copyright (c) 1998-2004,2010 Free Software Foundation, Inc. * + * Copyright 2020 Thomas E. Dickey * + * Copyright 1998-2009,2010 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 * @@ -37,7 +38,7 @@ #include "menu.priv.h" -MODULE_ID("$Id: m_win.c,v 1.17 2010/01/23 21:20:11 tom Exp $") +MODULE_ID("$Id: m_win.c,v 1.18 2020/02/02 23:34:34 tom Exp $") /*--------------------------------------------------------------------------- | Facility : libnmenu diff --git a/menu/menu.h b/menu/menu.h index 4eeac01..b2e845c 100644 --- a/menu/menu.h +++ b/menu/menu.h @@ -1,5 +1,6 @@ /**************************************************************************** - * Copyright (c) 1998-2007,2009 Free Software Foundation, Inc. * + * Copyright 2020 Thomas E. Dickey * + * Copyright 1998-2016,2017 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 * @@ -30,7 +31,7 @@ * Author: Juergen Pfeifer, 1995,1997 * ****************************************************************************/ -/* $Id: menu.h,v 1.20 2009/04/05 00:28:07 tom Exp $ */ +/* $Id: menu.h,v 1.24 2020/02/02 23:34:34 tom Exp $ */ #ifndef ETI_MENU #define ETI_MENU @@ -56,17 +57,23 @@ typedef int Item_Options; #define O_IGNORECASE (0x08) #define O_SHOWMATCH (0x10) #define O_NONCYCLIC (0x20) +#define O_MOUSE_MENU (0x40) /* Item options: */ #define O_SELECTABLE (0x01) +#if !NCURSES_OPAQUE_MENU typedef struct { const char* str; unsigned short length; } TEXT; +#endif /* !NCURSES_OPAQUE_MENU */ + +struct tagMENU; typedef struct tagITEM +#if !NCURSES_OPAQUE_MENU { TEXT name; /* name of menu item */ TEXT description; /* description of item, optional in display */ @@ -83,11 +90,14 @@ typedef struct tagITEM struct tagITEM *up; struct tagITEM *down; -} ITEM; +} +#endif /* !NCURSES_OPAQUE_MENU */ +ITEM; typedef void (*Menu_Hook)(struct tagMENU *); typedef struct tagMENU +#if 1 /* not yet: !NCURSES_OPAQUE_MENU */ { short height; /* Nr. of chars high */ short width; /* Nr. of chars wide */ @@ -128,8 +138,9 @@ typedef struct tagMENU Menu_Options opt; /* Menu options */ unsigned short status; /* Internal state of menu */ - -} MENU; +} +#endif /* !NCURSES_OPAQUE_MENU */ +MENU; /* Define keys */ diff --git a/menu/menu.priv.h b/menu/menu.priv.h index b54b195..d084565 100644 --- a/menu/menu.priv.h +++ b/menu/menu.priv.h @@ -1,5 +1,6 @@ /**************************************************************************** - * Copyright (c) 1998-2012,2014 Free Software Foundation, Inc. * + * Copyright 2020 Thomas E. Dickey * + * Copyright 1998-2016,2017 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 * @@ -30,7 +31,7 @@ * Author: Juergen Pfeifer, 1995,1997 * ****************************************************************************/ -/* $Id: menu.priv.h,v 1.25 2014/11/01 14:47:00 tom Exp $ */ +/* $Id: menu.priv.h,v 1.28 2020/02/02 23:34:34 tom Exp $ */ /*************************************************************************** * Module menu.priv.h * @@ -42,6 +43,9 @@ /* *INDENT-OFF* */ #include "curses.priv.h" + +#define NCURSES_OPAQUE_MENU 0 + #include "mf_common.h" #include "menu.h" @@ -78,7 +82,8 @@ extern NCURSES_EXPORT_VAR(MENU) _nc_Default_Menu; O_ROWMAJOR | \ O_IGNORECASE | \ O_SHOWMATCH | \ - O_NONCYCLIC ) + O_NONCYCLIC | \ + O_MOUSE_MENU ) #define ALL_ITEM_OPTS (O_SELECTABLE) diff --git a/menu/mf_common.h b/menu/mf_common.h index cff6563..fcbd565 100644 --- a/menu/mf_common.h +++ b/menu/mf_common.h @@ -1,5 +1,6 @@ /**************************************************************************** - * Copyright (c) 1998-2004,2012 Free Software Foundation, Inc. * + * Copyright 2020 Thomas E. Dickey * + * Copyright 1998-2005,2012 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 * @@ -30,7 +31,7 @@ * Author: Juergen Pfeifer, 1995,1997 * ****************************************************************************/ -/* $Id: mf_common.h,v 0.24 2012/06/10 00:06:54 tom Exp $ */ +/* $Id: mf_common.h,v 0.25 2020/02/02 23:34:34 tom Exp $ */ /* Common internal header for menu and form library */ diff --git a/menu/modules b/menu/modules index fac8fce..80ffb35 100644 --- a/menu/modules +++ b/menu/modules @@ -1,6 +1,7 @@ -# $Id: modules,v 1.18 2010/01/23 16:36:23 tom Exp $ +# $Id: modules,v 1.19 2020/02/02 23:34:34 tom Exp $ ############################################################################## -# Copyright (c) 1998-2006,2010 Free Software Foundation, Inc. # +# Copyright 2020 Thomas E. Dickey # +# Copyright 1998-2006,2010 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"), # |