ncurses 4.1
[ncurses.git] / Ada95 / gen / terminal_interface-curses-panels.ads.m4
1 --  -*- ada -*-
2 define(`HTMLNAME',`terminal_interface-curses-panels_s.html')dnl
3 include(M4MACRO)dnl
4 ------------------------------------------------------------------------------
5 --                                                                          --
6 --                           GNAT ncurses Binding                           --
7 --                                                                          --
8 --                      Terminal_Interface.Curses.Panels                    --
9 --                                                                          --
10 --                                 S P E C                                  --
11 --                                                                          --
12 --  Version 00.92                                                           --
13 --                                                                          --
14 --  The ncurses Ada95 binding is copyrighted 1996 by                        --
15 --  Juergen Pfeifer, Email: Juergen.Pfeifer@T-Online.de                     --
16 --                                                                          --
17 --  Permission is hereby granted to reproduce and distribute this           --
18 --  binding by any means and for any fee, whether alone or as part          --
19 --  of a larger distribution, in source or in binary form, PROVIDED         --
20 --  this notice is included with any such distribution, and is not          --
21 --  removed from any of its header files. Mention of ncurses and the        --
22 --  author of this binding in any applications linked with it is            --
23 --  highly appreciated.                                                     --
24 --                                                                          --
25 --  This binding comes AS IS with no warranty, implied or expressed.        --
26 ------------------------------------------------------------------------------
27 --  Version Control:
28 --  $Revision: 1.2 $
29 ------------------------------------------------------------------------------
30 with System;
31
32 package Terminal_Interface.Curses.Panels is
33
34 include(`Panel_Linker_Options')
35
36    type Panel is private;
37
38    ---------------------------
39    --  Interface constants  --
40    ---------------------------
41    Null_Panel : constant Panel;
42
43    -------------------
44    --  Exceptions   --
45    -------------------
46
47    Panel_Exception : exception;
48
49    --  MANPAGE(`panel.3x')
50
51    --  ANCHOR(`new_panel()',`Create')
52    function Create (Win : Window) return Panel;
53    --  AKA
54
55    --  ANCHOR(`new_panel()',`New_Panel')
56    function New_Panel (Win : Window) return Panel renames Create;
57    --  AKA
58
59    --  ANCHOR(`bottom_panel()',`Bottom')
60    procedure Bottom (Pan : in Panel);
61    --  AKA
62
63    --  ANCHOR(`top_panel()',`Top')
64    procedure Top (Pan : in Panel);
65    --  AKA
66
67    --  ANCHOR(`show_panel()',`Show')
68    procedure Show (Pan : in Panel);
69    --  AKA
70
71    --  ANCHOR(`update_panels()',`Update_Panels')
72    procedure Update_Panels;
73    --  AKA
74    pragma Import (C, Update_Panels, "update_panels");
75
76    --  ANCHOR(`hide_panel()',`Hide')
77    procedure Hide (Pan : in Panel);
78    --  AKA
79
80    --  ANCHOR(`panel_window()',`Get_Window')
81    function Get_Window (Pan : Panel) return Window;
82    --  AKA
83
84    --  ANCHOR(`panel_window()',`Panel_Window')
85    function Panel_Window (Pan : Panel) return Window renames Get_Window;
86
87    --  ANCHOR(`replace_panel()',`Replace')
88    procedure Replace (Pan : in Panel;
89                       Win : in Window);
90    --  AKA
91
92    --  ANCHOR(`move_panel()',`Move')
93    procedure Move (Pan    : in Panel;
94                    Line   : in Line_Position;
95                    Column : in Column_Position);
96    --  AKA
97
98    --  ANCHOR(`panel_hidden()',`Is_Hidden')
99    function Is_Hidden (Pan : Panel) return Boolean;
100    --  AKA
101
102    --  ANCHOR(`panel_above()',`Above')
103    function Above (Pan : Panel) return Panel;
104    --  AKA
105    pragma Import (C, Above, "panel_above");
106
107    --  ANCHOR(`panel_below()',`Below')
108    function Below (Pan : Panel) return Panel;
109    --  AKA
110    pragma Import (C, Below, "panel_below");
111
112    --  ANCHOR(`del_panel()',`Delete')
113    procedure Delete (Pan : in out Panel);
114    --  AKA
115
116    private
117       type Panel is new System.Address;
118       Null_Panel : constant Panel := Panel (System.Null_Address);
119
120 end Terminal_Interface.Curses.Panels;