@@ -0,0 +1,1889 @@
+#%0A# Kiwi: a Framework and Enhanced Widgets for Python%0A#%0A# Copyright (C) 2005 Async Open Source%0A#%0A# This library is free software; you can redistribute it and/or%0A# modify it under the terms of the GNU Lesser General Public%0A# License as published by the Free Software Foundation; either%0A# version 2.1 of the License, or (at your option) any later version.%0A# %0A# This library is distributed in the hope that it will be useful,%0A# but WITHOUT ANY WARRANTY; without even the implied warranty of%0A# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU%0A# Lesser General Public License for more details.%0A# %0A# You should have received a copy of the GNU Lesser General Public%0A# License along with this library; if not, write to the Free Software%0A# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307%0A# USA%0A# %0A# Author(s): Johan Dahlin %3Cjdahlin@async.com.br%3E%0A#%0A%0Aimport gobject%0A%0Afrom kiwi import _warn%0A%0Aclass deprecated(object):%0A    def __init__(self, new):%0A        self._new = new%0A%0A    def __call__(self, func):%0A        def wrapper(*args, **kwargs):%0A            _warn(%22%25s is deprecated, use %25s instead%22 %25 (func.__name__,%0A                                                        self._new))%0A            return func(*args, **kwargs)%0A        return wrapper%0A%0Aclass delayed(object):%0A    def __init__(self, delay):%0A        self._delay = delay%0A        self._timeout_id = -1%0A        %0A    def __call__(self, func):%0A        def real_call(args, kwargs):%0A            func(*args, **kwargs)%0A            self._timeout_id = -1%0A            return False%0A        %0A        def wrapper(*args, **kwargs):%0A            # Only one call at a time%0A            if self._timeout_id != -1:%0A                return%0A        %0A            self._timeout_id = gobject.timeout_add(self._delay,%0A                                                   real_call, args, kwargs)%0A        %0A        return wrapper%0A%0A        %0A

Add new decorators module, move deprecated from utils over here