/src/wrappers/gtk/library/scroll_child_callback.e
Specman e | 73 lines | 57 code | 16 blank | 0 comment | 3 complexity | cf63f3b64d214fa708e8afbacb33c353 MD5 | raw file
1indexing 2 description: "Generic callback for the scroll-child signal" 3 copyright: "[ 4 Copyright (C) 2006 Paolo redaelli, eiffel-libraries team, GTK+ team and others 5 6 This library is free software; you can redistribute it and/or 7 modify it under the terms of the GNU Lesser General Public License 8 as published by the Free Software Foundation; either version 2.1 of 9 the License, or (at your option) any later version. 10 11 This library is distributed in the hope that it will be useful, but 12 WITHOUT ANY WARRANTY; without even the implied warranty of 13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14 Lesser General Public License for more details. 15 16 You should have received a copy of the GNU Lesser General Public 17 License along with this library; if not, write to the Free Software 18 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 19 02110-1301 USA 20 ]" 21 license: "LGPL v2 or later" 22 date: "$Date:$" 23 revision "$Revision:$" 24 25class SCROLL_CHILD_CALLBACK 26 27inherit CALLBACK redefine object end 28 29insert G_OBJECT_FACTORY [GTK_SCROLLED_WINDOW] 30 31creation make 32 33feature 34 object: GTK_SCROLLED_WINDOW 35 36feature 37 38 callback (scroll_type, a_bool: INTEGER; instance: POINTER): INTEGER is 39 do 40 object := wrapper(instance) 41 Result := function.item ([scroll_type, a_bool.to_boolean, object]).to_integer 42 end 43 44 callback_pointer: POINTER is 45 do 46 Result := get_callback_pointer ($callback) 47 ensure 48 Result.is_not_null 49 end 50 51 connect (an_object: GTK_WIDGET; a_function: FUNCTION [ANY, TUPLE [INTEGER, BOOLEAN, GTK_SCROLLED_WINDOW], BOOLEAN]) is 52 do 53 debug 54 print ("SCROLL_CHILD_CALLBACK.connect (an_object=") print (an_object.to_pointer.to_string) 55 print (" an_object.handle=") print (an_object.handle.to_string) 56 print (") Current=") print (to_pointer.to_string) 57 print (" Current.handle=") print (handle.to_string) 58 print ("%N") 59 end 60 61 handler_id := g_signal_connect_closure (an_object.handle, 62 signal_name.to_external, 63 handle, 64 0 -- i.e. call it before default handler 65 ) 66 function:=a_function 67 end 68 69 signal_name: STRING is "scroll-child" 70 71 function: FUNCTION [ANY, TUPLE [INTEGER, BOOLEAN, GTK_SCROLLED_WINDOW], BOOLEAN] 72 73end