ncurses 6.2 - patch 20200704
[ncurses.git] / menu / m_hook.c
index 51644a100197e4d92788c47a46da816a18d9c827..916b9fc7ce7d87343fe9555099ae2c39c55faa10 100644 (file)
@@ -1,5 +1,6 @@
 /****************************************************************************
- * Copyright (c) 1998,2000 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            *
 
 #include "menu.priv.h"
 
-MODULE_ID("$Id: m_hook.c,v 1.11 2003/10/25 14:54:48 tom Exp $")
+MODULE_ID("$Id: m_hook.c,v 1.20 2020/07/04 19:45:16 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 )\
+MENU_EXPORT(int) NCURSES_API set_ ## typ ## _ ## name (MENU *menu, Menu_Hook 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);\
 }
 
 /* "Template" macro to generate function to get application specific hook */
 #define GEN_HOOK_GET_FUNCTION( typ, name ) \
-NCURSES_IMPEXP Menu_Hook NCURSES_API typ ## _ ## name ( const MENU *menu )\
+MENU_EXPORT(Menu_Hook) NCURSES_API typ ## _ ## name ( const MENU *menu )\
 {\
-   return (Normalize_Menu(menu) -> typ ## name);\
+   T((T_CALLED(#typ "_" #name "(%p)"), (const void *) menu));\
+   returnMenuHook(Normalize_Menu(menu) -> typ ## name);\
 }
 
 /*---------------------------------------------------------------------------
@@ -63,7 +67,7 @@ NCURSES_IMPEXP Menu_Hook NCURSES_API typ ## _ ## name ( const MENU *menu )\
 |
 |   Return Values :  E_OK               - success
 +--------------------------------------------------------------------------*/
-GEN_HOOK_SET_FUNCTION( menu, init )              
+GEN_HOOK_SET_FUNCTION(menu, init)
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnmenu  
@@ -75,7 +79,7 @@ GEN_HOOK_SET_FUNCTION( menu, init )
 |
 |   Return Values :  Menu init function address or NULL
 +--------------------------------------------------------------------------*/
-GEN_HOOK_GET_FUNCTION( menu, init )
+GEN_HOOK_GET_FUNCTION(menu, init)
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnmenu  
@@ -86,7 +90,7 @@ GEN_HOOK_GET_FUNCTION( menu, init )
 |
 |   Return Values :  E_OK               - success
 +--------------------------------------------------------------------------*/
-GEN_HOOK_SET_FUNCTION( menu, term )              
+GEN_HOOK_SET_FUNCTION(menu, term)
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnmenu  
@@ -98,7 +102,7 @@ GEN_HOOK_SET_FUNCTION( menu, term )
 |
 |   Return Values :  Menu finalization function address or NULL
 +--------------------------------------------------------------------------*/
-GEN_HOOK_GET_FUNCTION( menu, term )
+GEN_HOOK_GET_FUNCTION(menu, term)
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnmenu  
@@ -109,7 +113,7 @@ GEN_HOOK_GET_FUNCTION( menu, term )
 |
 |   Return Values :  E_OK               - success
 +--------------------------------------------------------------------------*/
-GEN_HOOK_SET_FUNCTION( item, init )              
+GEN_HOOK_SET_FUNCTION(item, init)
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnmenu  
@@ -121,7 +125,7 @@ GEN_HOOK_SET_FUNCTION( item, init )
 |
 |   Return Values :  Item init function address or NULL
 +--------------------------------------------------------------------------*/
-GEN_HOOK_GET_FUNCTION( item, init )
+GEN_HOOK_GET_FUNCTION(item, init)
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnmenu  
@@ -132,7 +136,7 @@ GEN_HOOK_GET_FUNCTION( item, init )
 |
 |   Return Values :  E_OK               - success
 +--------------------------------------------------------------------------*/
-GEN_HOOK_SET_FUNCTION( item, term )              
+GEN_HOOK_SET_FUNCTION(item, term)
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnmenu  
@@ -144,6 +148,6 @@ GEN_HOOK_SET_FUNCTION( item, term )
 |
 |   Return Values :  Item finalization function address or NULL
 +--------------------------------------------------------------------------*/
-GEN_HOOK_GET_FUNCTION( item, term )
+GEN_HOOK_GET_FUNCTION(item, term)
 
 /* m_hook.c ends here */