summaryrefslogtreecommitdiff
path: root/urwid/wimp.py
diff options
context:
space:
mode:
Diffstat (limited to 'urwid/wimp.py')
-rwxr-xr-xurwid/wimp.py12
1 files changed, 6 insertions, 6 deletions
diff --git a/urwid/wimp.py b/urwid/wimp.py
index 3dfbf39..e7ac9c9 100755
--- a/urwid/wimp.py
+++ b/urwid/wimp.py
@@ -567,12 +567,12 @@ class Button(WidgetWrap):
class PopUpLauncher(delegate_to_widget_mixin('_original_widget'),
- WidgetDecoration):
+ WidgetDecoration):
def __init__(self, original_widget):
self.__super.__init__(original_widget)
self._pop_up_widget = None
- def create_pop_up(self):
+ def create_pop_up(self, *args, **kwargs):
"""
Subclass must override this method and return a widget
to be used for the pop-up. This method is called once each time
@@ -580,7 +580,7 @@ class PopUpLauncher(delegate_to_widget_mixin('_original_widget'),
"""
raise NotImplementedError("Subclass must override this method")
- def get_pop_up_parameters(self):
+ def get_pop_up_parameters(self, *args, **kwargs):
"""
Subclass must override this method and have it return a dict, eg:
@@ -590,8 +590,8 @@ class PopUpLauncher(delegate_to_widget_mixin('_original_widget'),
"""
raise NotImplementedError("Subclass must override this method")
- def open_pop_up(self):
- self._pop_up_widget = self.create_pop_up()
+ def open_pop_up(self, *args, **kwargs):
+ self._pop_up_widget = self.create_pop_up(*args, **kwargs)
self._invalidate()
def close_pop_up(self):
@@ -602,7 +602,7 @@ class PopUpLauncher(delegate_to_widget_mixin('_original_widget'),
canv = self.__super.render(size, focus)
if self._pop_up_widget:
canv = CompositeCanvas(canv)
- canv.set_pop_up(self._pop_up_widget, **self.get_pop_up_parameters())
+ canv.set_pop_up(self._pop_up_widget, **self.get_pop_up_parameters(size, focus))
return canv