1
-----------------------------------------------------------------------
2
-- GtkAda - Ada95 binding for Gtk+/Gnome --
4
-- Copyright (C) 2006, AdaCore --
6
-- This library is free software; you can redistribute it and/or --
7
-- modify it under the terms of the GNU General Public --
8
-- License as published by the Free Software Foundation; either --
9
-- version 2 of the License, or (at your option) any later version. --
11
-- This library is distributed in the hope that it will be useful, --
12
-- but WITHOUT ANY WARRANTY; without even the implied warranty of --
13
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --
14
-- General Public License for more details. --
16
-- You should have received a copy of the GNU General Public --
17
-- License along with this library; if not, write to the --
18
-- Free Software Foundation, Inc., 59 Temple Place - Suite 330, --
19
-- Boston, MA 02111-1307, USA. --
21
-----------------------------------------------------------------------
23
with Gdk.Event; use Gdk.Event;
24
with Gtk.Object; use Gtk.Object;
25
with Gdk.Types; use Gdk.Types;
27
package body Gtk.Bindings is
34
(Binding_Set : Gtk_Binding_Set;
36
Modifiers : Gdk.Types.Gdk_Modifier_Type;
40
(Binding_Set : Gtk_Binding_Set;
42
Modifiers : Gdk_Modifier_Type;
43
Signal_Name : String);
44
pragma Import (C, Internal, "ada_gtk_binding_entry_add_signal_NO");
46
Internal (Binding_Set, Keyval, Modifiers, Signal_Name & ASCII.NUL);
54
(Binding_Set : Gtk_Binding_Set;
56
Modifiers : Gdk.Types.Gdk_Modifier_Type;
61
(Binding_Set : Gtk_Binding_Set;
63
Modifiers : Gdk_Modifier_Type;
66
pragma Import (C, Internal, "ada_gtk_binding_entry_add_signal_int");
68
Internal (Binding_Set, Keyval, Modifiers, Signal_Name & ASCII.NUL, Arg1);
76
(Binding_Set : Gtk_Binding_Set;
78
Modifiers : Gdk.Types.Gdk_Modifier_Type;
84
(Binding_Set : Gtk_Binding_Set;
86
Modifiers : Gdk_Modifier_Type;
89
pragma Import (C, Internal, "ada_gtk_binding_entry_add_signal_int_int");
92
(Binding_Set, Keyval, Modifiers, Signal_Name & ASCII.NUL, Arg1, Arg2);
100
(Binding_Set : Gtk_Binding_Set;
102
Modifiers : Gdk.Types.Gdk_Modifier_Type;
103
Signal_Name : String;
107
(Binding_Set : Gtk_Binding_Set;
109
Modifiers : Gdk_Modifier_Type;
110
Signal_Name : String;
112
pragma Import (C, Internal, "ada_gtk_binding_entry_add_signal_bool");
115
(Binding_Set, Keyval, Modifiers, Signal_Name & ASCII.NUL,
119
--------------------------
120
-- Binding_Set_Activate --
121
--------------------------
123
function Binding_Set_Activate
124
(Binding_Set : Gtk_Binding_Set;
126
Modifiers : Gdk_Modifier_Type;
127
Object : access Gtk_Object_Record'Class)
131
(Binding_Set : Gtk_Binding_Set;
133
Modifiers : Gdk_Modifier_Type;
134
Object : System.Address)
136
pragma Import (C, Internal, "gtk_binding_set_activate");
139
(Internal (Binding_Set, Keyval, Modifiers, Get_Object (Object)));
140
end Binding_Set_Activate;
142
----------------------
143
-- Binding_Set_Find --
144
----------------------
146
function Binding_Set_Find (Set_Name : String) return Gtk_Binding_Set is
147
function Internal (Set_Name : String) return Gtk_Binding_Set;
148
pragma Import (C, Internal, "gtk_binding_set_find");
150
return Internal (Set_Name & ASCII.NUL);
151
end Binding_Set_Find;
153
---------------------
154
-- Binding_Set_New --
155
---------------------
157
function Binding_Set_New (Set_Name : String) return Gtk_Binding_Set is
158
function Internal (Set_Name : String) return Gtk_Binding_Set;
159
pragma Import (C, Internal, "gtk_binding_set_new");
161
return Internal (Set_Name & ASCII.NUL);
169
(Object : access Gtk_Object_Record'Class;
171
Modifiers : Gdk_Modifier_Type)
175
(Object : System.Address;
177
Modifiers : Gdk_Modifier_Type)
179
pragma Import (C, Internal, "gtk_bindings_activate");
181
return Boolean'Val (Internal (Get_Object (Object), Keyval, Modifiers));
188
function Activate_Event
189
(Object : access Gtk_Object_Record;
190
Event : Gdk_Event_Key)
194
(Object : System.Address;
195
Event : Gdk_Event_Key)
197
pragma Import (C, Internal, "gtk_bindings_activate_event");
199
return Boolean'Val (Internal (Get_Object (Object), Event));