diff --git a/clintermission/climenu.py b/clintermission/climenu.py index 7f1dbcf..cdd2076 100644 --- a/clintermission/climenu.py +++ b/clintermission/climenu.py @@ -19,9 +19,10 @@ class CliMenuHeader: class CliMenuOption: """Hold a menu option""" - def __init__(self, text, num): + def __init__(self, text, num, item=None): self.text = text self.num = num + self.item = item self.focusable = True @@ -100,15 +101,23 @@ class CliMenu: for text in title.split('\n'): self._items.append(CliMenuHeader(text)) - def add_option(self, text): - self._items.append(CliMenuOption(text, self._item_num)) + def add_option(self, text, item=None): + self._items.append(CliMenuOption(text, self._item_num, item=item)) self._item_num += 1 def get_selection(self): if not self._ran: self._run() - return self._items[self._pos].num + item = self._items[self._pos] + + return (item.num, item.item) + + def get_selection_num(self): + return self.get_selection()[0] + + def get_selection_item(self): + return self.get_selection()[1] def cursor(self): return '{} '.format(self._cursor)