COT.ui_shared
module¶
Abstract user interface superclass.
-
class
UI
(force=False)[source]¶ Bases:
object
Abstract user interface functionality.
Can also be used in test code as a stub that autoconfirms everything.
-
choose_from_list
(footer, option_list, default_value, header='', info_list=None)[source]¶ Prompt the user to choose from a list.
Parameters: Returns: str –
default_value
or an item fromoption_list
.
-
confirm
(prompt)[source]¶ Prompt user to confirm the requested operation.
Auto-accepts if
force
is set toTrue
.Warning
This stub implementation does not actually interact with the user, but instead returns
default_confirm_response
. Subclasses should override this method.Parameters: prompt (str) – Message to prompt the user with Returns: bool – True
(user confirms acceptance) orFalse
(user declines)
-
confirm_or_die
(prompt)[source]¶ If the user doesn’t agree, abort the program.
A simple wrapper for
confirm()
that callssys.exit()
ifconfirm()
returnsFalse
.Parameters: prompt (str) – Message to prompt the user with Raises: SystemExit
– if user declines
-
fill_examples
(example_list)[source]¶ Pretty-print a set of usage examples.
Parameters: example_list (list) – List of (example, description) tuples. Raises: NotImplementedError
– Must be implemented by a subclass.
-
fill_usage
(subcommand, usage_list)[source]¶ Pretty-print a list of usage strings.
Parameters: Returns: str – Concatenation of all usage strings, each appropriately wrapped to the
terminal_width
value.
-
get_input
(prompt, default_value)[source]¶ Prompt the user to enter a string.
Auto-inputs the
default_value
ifforce
is set toTrue
.Warning
This stub implementation does not actually interact with the user, but instead always returns
default_value
. Subclasses should override this method.Parameters: Returns: str – Input value
-
get_password
(username, host)[source]¶ Get password string from the user.
Parameters: Raises: NotImplementedError
– Must be implemented by a subclass.
-
default_confirm_response
= None¶ Knob for API testing, sets the default response to confirm().
-
force
= None¶ Whether to automatically select the default value in all cases.
(As opposed to interactively prompting the user.)
-
terminal_width
¶ Get the width of the terminal in columns.
-