quick frontend (quick_widgets): add deleteWidget method

This commit is contained in:
Goffi 2015-02-06 19:03:13 +01:00
commit f9f86f67a1

View file

@ -193,6 +193,18 @@ class QuickWidgetsManager(object):
break
return widget
def deleteWidget(self, widget_to_delete):
"""Delete a widget
widget's onDelete method will be called before deletion
"""
widget_to_delete.onDelete()
for widget_map in self._widgets.itervalues():
for hash_, widget in widget_map.iteritems():
if widget_to_delete is widget:
del widget_map[hash_]
class QuickWidget(object):
"""generic widget base"""
@ -261,3 +273,7 @@ class QuickWidget(object):
@return: a hash (can correspond to one or many targets or profiles, depending of widget class)
"""
return unicode(target) # by defaut, there is one hash for one target
def onDelete(self):
"""Called when a widget is deleted"""
log.debug(u"deleting widget {}".format(self)) # Must be implemented by frontends