aegirhall / console-menu

A simple Python menu system for building terminal user interfaces.
MIT License
365 stars 58 forks source link

Multiple use of "remove_item" fails #81

Open KCWF2 opened 2 years ago

KCWF2 commented 2 years ago

Bug found, could you assist? When trying to remove multiple items from the menu (of type FunctionItem) the menu errors out:

Putting this in the function called by "FunctionItem" fails, however if I remove all but one "remove_item" statement it works fine. menu.remove_item(menu_functionitem_quizcreate) menu.remove_item(menu_functionitem_quizedit)

where those items are defined by: menu_functionitem_quizcreate = FunctionItem("Quiz Create", myQuizCreate, []) menu_functionitem_quizedit = FunctionItem("Quiz Edit", myQuizEdit, [])

Errors generated:

Exception in thread Thread-1 (_wrap_start): Traceback (most recent call last): File "C:\Users\Ken\AppData\Local\Programs\Python\Python310\lib\threading.py", line 1016, in _bootstrap_inner self.run() File "C:\Users\Ken\AppData\Local\Programs\Python\Python310\lib\threading.py", line 953, in run self._target(*self._args, **self._kwargs) File "C:\Users\Ken\AppData\Local\Programs\Python\Python310\lib\site-packages\consolemenu\console_menu.py", line 172, in _wrap_start self._main_loop() File "C:\Users\Ken\AppData\Local\Programs\Python\Python310\lib\site-packages\consolemenu\console_menu.py", line 229, in _main_loop self.process_user_input() File "C:\Users\Ken\AppData\Local\Programs\Python\Python310\lib\site-packages\consolemenu\console_menu.py", line 322, in process_user_input self.select() File "C:\Users\Ken\AppData\Local\Programs\Python\Python310\lib\site-packages\consolemenu\console_menu.py", line 363, in select self.selected_item.clean_up() File "C:\Users\Ken\AppData\Local\Programs\Python\Python310\lib\site-packages\consolemenu\console_menu.py", line 103, in selected_item return self.items[self.current_option] IndexError: list index out of range