rlm@1: // -*- C++ -*- rlm@1: // VisualBoyAdvance - Nintendo Gameboy/GameboyAdvance (TM) emulator. rlm@1: // Copyright (C) 1999-2003 Forgotten rlm@1: // Copyright (C) 2004 Forgotten and the VBA development team rlm@1: rlm@1: // This program is free software; you can redistribute it and/or modify rlm@1: // it under the terms of the GNU General Public License as published by rlm@1: // the Free Software Foundation; either version 2, or(at your option) rlm@1: // any later version. rlm@1: // rlm@1: // This program is distributed in the hope that it will be useful, rlm@1: // but WITHOUT ANY WARRANTY; without even the implied warranty of rlm@1: // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the rlm@1: // GNU General Public License for more details. rlm@1: // rlm@1: // You should have received a copy of the GNU General Public License rlm@1: // along with this program; if not, write to the Free Software Foundation, rlm@1: // Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. rlm@1: rlm@1: #ifndef __VBA_SIGCCOMPAT_H__ rlm@1: #define __VBA_SIGCCOMPAT_H__ rlm@1: rlm@1: #undef LIBSIGC_DISABLE_DEPRECATED rlm@1: #include rlm@1: #include rlm@1: rlm@1: #include rlm@1: #include rlm@1: #include rlm@1: rlm@1: namespace SigC rlm@1: { rlm@1: rlm@1: using namespace sigc; rlm@1: rlm@1: template rlm@1: inline slot0 rlm@1: slot( T_obj1& _A_obj, T_return (T_obj2::*_A_func)() ) rlm@1: { return ::sigc::bound_mem_functor0 rlm@1: (dynamic_cast< T_obj1&>(_A_obj), _A_func); } rlm@1: rlm@1: template rlm@1: inline slot1 rlm@1: slot( T_obj1& _A_obj, T_return (T_obj2::*_A_func)(T_arg1) ) rlm@1: { return ::sigc::bound_mem_functor1 rlm@1: (dynamic_cast< T_obj1&>(_A_obj), _A_func); } rlm@1: rlm@1: template rlm@1: inline slot2 rlm@1: slot( T_obj1& _A_obj, T_return (T_obj2::*_A_func)(T_arg1,T_arg2) ) rlm@1: { return ::sigc::bound_mem_functor2 rlm@1: (dynamic_cast< T_obj1&>(_A_obj), _A_func); } rlm@1: rlm@1: } // namespace SigC rlm@1: rlm@1: rlm@1: #endif // __VBA_SIGCCOMPAT_H__