diff options
Diffstat (limited to 'src/sugar/tutorius/addons/gtkwidgeteventfilter.py')
-rw-r--r-- | src/sugar/tutorius/addons/gtkwidgeteventfilter.py | 69 |
1 files changed, 0 insertions, 69 deletions
diff --git a/src/sugar/tutorius/addons/gtkwidgeteventfilter.py b/src/sugar/tutorius/addons/gtkwidgeteventfilter.py deleted file mode 100644 index cbfb00c..0000000 --- a/src/sugar/tutorius/addons/gtkwidgeteventfilter.py +++ /dev/null @@ -1,69 +0,0 @@ -# Copyright (C) 2009, Tutorius.org -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -from sugar.tutorius.filters import * -from sugar.tutorius.properties import * - -class GtkWidgetEventFilter(EventFilter): - """ - Basic Event filter for Gtk widget events - """ - object_id = TUAMProperty() - event_name = TStringProperty("clicked") - - def __init__(self, next_state=None, object_id=None, event_name=None): - """Constructor - @param next_state default EventFilter param, passed on to EventFilter - @param object_id object fqdn-style identifier - @param event_name event to attach to - """ - super(GtkWidgetEventFilter,self).__init__(next_state) - self._callback = None - self.object_id = object_id - self.event_name = event_name - self._widget = None - self._handler_id = None - - def install_handlers(self, callback, **kwargs): - """install handlers - @param callback default EventFilter callback arg - @param activity keyword argument activity must be present to install - the event handler into the activity's widget hierarchy - """ - super(GtkWidgetEventFilter, self).install_handlers(callback, **kwargs) - if not "activity" in kwargs: - raise TypeError("activity argument is Mandatory") - - #find the widget and connect to its event - self._widget = find_widget(kwargs["activity"], self.object_id) - self._handler_id = self._widget.connect( \ - self.event_name, self.do_callback ) - - def remove_handlers(self): - """remove handlers""" - super(GtkWidgetEventFilter, self).remove_handlers() - #if an event was connected, disconnect it - if self._handler_id: - self._widget.handler_disconnect(self._handler_id) - self._handler_id=None - -__event__ = { - "name" : "GtkWidgetEventFilter", - "display_name" : "GTK Event catcher", - "icon" : "player_play", - "class" : GtkWidgetEventFilter, - "mandatory_props" : ["object_id"] -} - |