ncurses2-genericputs.ads 4.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. ------------------------------------------------------------------------------
  2. -- --
  3. -- GNAT ncurses Binding Samples --
  4. -- --
  5. -- ncurses --
  6. -- --
  7. -- B O D Y --
  8. -- --
  9. ------------------------------------------------------------------------------
  10. -- Copyright (c) 2000,2006 Free Software Foundation, Inc. --
  11. -- --
  12. -- Permission is hereby granted, free of charge, to any person obtaining a --
  13. -- copy of this software and associated documentation files (the --
  14. -- "Software"), to deal in the Software without restriction, including --
  15. -- without limitation the rights to use, copy, modify, merge, publish, --
  16. -- distribute, distribute with modifications, sublicense, and/or sell --
  17. -- copies of the Software, and to permit persons to whom the Software is --
  18. -- furnished to do so, subject to the following conditions: --
  19. -- --
  20. -- The above copyright notice and this permission notice shall be included --
  21. -- in all copies or substantial portions of the Software. --
  22. -- --
  23. -- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --
  24. -- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --
  25. -- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --
  26. -- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --
  27. -- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --
  28. -- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --
  29. -- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --
  30. -- --
  31. -- Except as contained in this notice, the name(s) of the above copyright --
  32. -- holders shall not be used in advertising or otherwise to promote the --
  33. -- sale, use or other dealings in this Software without prior written --
  34. -- authorization. --
  35. ------------------------------------------------------------------------------
  36. -- Author: Eugene V. Melaragno <aldomel@ix.netcom.com> 2000
  37. -- Version Control
  38. -- $Revision: 1.2 $
  39. -- $Date: 2006/06/25 14:24:40 $
  40. -- Binding Version 01.00
  41. ------------------------------------------------------------------------------
  42. with Ada.Text_IO; use Ada.Text_IO;
  43. with Ada.Strings.Bounded;
  44. use Ada.Strings.Bounded;
  45. with Interfaces.C; use Interfaces.C;
  46. with Interfaces.C.Strings; use Interfaces.C.Strings;
  47. with Terminal_Interface.Curses;
  48. generic
  49. Max : Natural;
  50. -- type mystring is private;
  51. -- type myint is
  52. package ncurses2.genericPuts is
  53. package BS is new
  54. Ada.Strings.Bounded.Generic_Bounded_Length (Max);
  55. use BS;
  56. procedure myGet (Win : in Terminal_Interface.Curses.Window
  57. := Terminal_Interface.Curses.Standard_Window;
  58. Str : out BS.Bounded_String;
  59. Len : in Integer := -1);
  60. procedure myPut (Str : out BS.Bounded_String;
  61. i : Integer;
  62. Base : in Number_Base := 10);
  63. -- the default should be Ada.Text_IO.Integer_IO.Default_Base
  64. -- but Default_Base is hidden in the generic so doesn't exist!
  65. procedure myAdd (Str : BS.Bounded_String);
  66. procedure Fill_String (Cp : in chars_ptr; Str : out BS.Bounded_String);
  67. end ncurses2.genericPuts;