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