diff options
author | Bruno Coudoin <bruno.coudoin@free.fr> | 2009-11-02 06:16:15 (GMT) |
---|---|---|
committer | Bruno Coudoin <bruno.coudoin@free.fr> | 2009-11-02 06:16:15 (GMT) |
commit | 6f7a04ad55c342c6137a06259f27fee8b21e0cd7 (patch) | |
tree | 7ef56630deb43e2e6f0f801493f5bbca2db513c1 | |
parent | 5cb903b5ad1dc5c55ac36aa8a0470e48745e59d8 (diff) |
added support for delete key shortcut when an item is selected.
-rw-r--r-- | src/anim-activity/AnimItem.py | 5 | ||||
-rw-r--r-- | src/anim-activity/anim.py | 12 |
2 files changed, 13 insertions, 4 deletions
diff --git a/src/anim-activity/AnimItem.py b/src/anim-activity/AnimItem.py index b6bf7ea..48e4de9 100644 --- a/src/anim-activity/AnimItem.py +++ b/src/anim-activity/AnimItem.py @@ -61,6 +61,11 @@ class AnimItem: self.old_y = 0 + # Return the type name of the managed object + def type_name(self): + return (gobject.type_name(self.item)) + + # Sadly matrix are not saved by pickle, don't know why # excactly. This code transform the matrix as a regular # python list. diff --git a/src/anim-activity/anim.py b/src/anim-activity/anim.py index 6a59b14..791a771 100644 --- a/src/anim-activity/anim.py +++ b/src/anim-activity/anim.py @@ -264,12 +264,16 @@ class Gcompris_anim: (keyval == gtk.keysyms.Num_Lock)): return False - if ( (not self.selected) or - (gobject.type_name(self.selected.get_child(0)) != "GooCanvasText") - ): - # No Text object selected + if (not self.selected): return False + if (self.selected.type_name() != "GooCanvasText"): + # Process shortcuts on non text items + if ((keyval == gtk.keysyms.BackSpace) or + (keyval == gtk.keysyms.Delete)): + self.selected.delete() + return True + textItem = self.selected.get_child(0) if (not self.last_commit): oldtext = textItem.get_property('text').decode('UTF-8') |