diff options
-rw-r--r-- | .DS_Store | bin | 0 -> 6148 bytes | |||
-rwxr-xr-x | urwid/wimp.py | 12 |
2 files changed, 6 insertions, 6 deletions
diff --git a/.DS_Store b/.DS_Store Binary files differnew file mode 100644 index 0000000..c2bb113 --- /dev/null +++ b/.DS_Store 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 |