@ -311,18 +311,15 @@ class CliMenu:
class CliMultiMenu ( CliMenu ) :
class CliMultiMenu ( CliMenu ) :
default_selected_icon = ' [x] '
default_selection_icons = CliSelectionStyle . SQUARE_BRACKETS
default_unselected_icon = ' [ ] '
@classmethod
@classmethod
def set_default_selector_icons ( cls , selected_icon , unselected_icon ) :
def set_default_selector_icons ( cls , selection_icons ) :
cls . default_selected_icon = selected_icon
cls . default_selection_icons = selection_icons
cls . default_unselected_icon = unselected_icon
def __init__ ( self , * args , select ed_ ic on= None , unselected _icon= None , * * kwargs ) :
def __init__ ( self , * args , select ion_icons = None , * * kwargs ) :
self . _multi_selected = [ ]
self . _multi_selected = [ ]
self . _selected_icon = selected_icon if selected_icon is not None else self . default_selected_icon
self . _selection_icons = selection_icons if selection_icons is not None else self . default_selection_icons
self . _unselected_icon = unselected_icon if unselected_icon is not None else self . default_unselected_icon
super ( ) . __init__ ( * args , * * kwargs )
super ( ) . __init__ ( * args , * * kwargs )
def add_option ( self , text , item = None , selected = False ) :
def add_option ( self , text , item = None , selected = False ) :
@ -360,9 +357,9 @@ class CliMultiMenu(CliMenu):
def _transform_prefix ( self , item , lineno , prefix ) :
def _transform_prefix ( self , item , lineno , prefix ) :
if item . focusable :
if item . focusable :
if lineno in self . _multi_selected :
if lineno in self . _multi_selected :
icon = self . _select ed_icon
icon = self . _select ion_icons[ 0 ]
else :
else :
icon = self . _ unselected_icon
icon = self . _ selection_icons[ 1 ]
return " {} {} " . format ( prefix , icon )
return " {} {} " . format ( prefix , icon )
else :
else :
return prefix
return prefix