terminal_interface-curses-menus-item_user_data.ads.m4 4.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. -- -*- ada -*-
  2. define(`HTMLNAME',`terminal_interface-curses-menus-item_user_data__ads.htm')dnl
  3. include(M4MACRO)dnl
  4. ------------------------------------------------------------------------------
  5. -- --
  6. -- GNAT ncurses Binding --
  7. -- --
  8. -- Terminal_Interface.Curses.Menus.Item_User_Data --
  9. -- --
  10. -- S P E C --
  11. -- --
  12. ------------------------------------------------------------------------------
  13. -- Copyright (c) 1998,2006 Free Software Foundation, Inc. --
  14. -- --
  15. -- Permission is hereby granted, free of charge, to any person obtaining a --
  16. -- copy of this software and associated documentation files (the --
  17. -- "Software"), to deal in the Software without restriction, including --
  18. -- without limitation the rights to use, copy, modify, merge, publish, --
  19. -- distribute, distribute with modifications, sublicense, and/or sell --
  20. -- copies of the Software, and to permit persons to whom the Software is --
  21. -- furnished to do so, subject to the following conditions: --
  22. -- --
  23. -- The above copyright notice and this permission notice shall be included --
  24. -- in all copies or substantial portions of the Software. --
  25. -- --
  26. -- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --
  27. -- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --
  28. -- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --
  29. -- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --
  30. -- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --
  31. -- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --
  32. -- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --
  33. -- --
  34. -- Except as contained in this notice, the name(s) of the above copyright --
  35. -- holders shall not be used in advertising or otherwise to promote the --
  36. -- sale, use or other dealings in this Software without prior written --
  37. -- authorization. --
  38. ------------------------------------------------------------------------------
  39. -- Author: Juergen Pfeifer, 1996
  40. -- Version Control:
  41. -- $Revision: 1.16 $
  42. -- $Date: 2006/06/25 14:30:22 $
  43. -- Binding Version 01.00
  44. ------------------------------------------------------------------------------
  45. generic
  46. type User is limited private;
  47. type User_Access is access User;
  48. package Terminal_Interface.Curses.Menus.Item_User_Data is
  49. pragma Preelaborate (Terminal_Interface.Curses.Menus.Item_User_Data);
  50. -- The binding uses the same user pointer for menu items
  51. -- as the low level C implementation. So you can safely
  52. -- read or write the user pointer also with the C routines
  53. --
  54. -- MANPAGE(`mitem_userptr.3x')
  55. -- ANCHOR(`set_item_userptr',`Set_User_Data')
  56. procedure Set_User_Data (Itm : in Item;
  57. Data : in User_Access);
  58. -- AKA
  59. pragma Inline (Set_User_Data);
  60. -- ANCHOR(`item_userptr',`Get_User_Data')
  61. procedure Get_User_Data (Itm : in Item;
  62. Data : out User_Access);
  63. -- AKA
  64. -- ANCHOR(`item_userptr',`Get_User_Data')
  65. function Get_User_Data (Itm : in Item) return User_Access;
  66. -- AKA
  67. -- Same as function
  68. pragma Inline (Get_User_Data);
  69. end Terminal_Interface.Curses.Menus.Item_User_Data;