birdears.interfaces package

Submodules

birdears.interfaces.commandline module

class birdears.interfaces.commandline.CommandLine(cli_prompt_next=False, cli_no_scroll=False, cli_no_resolution=False, exercise=None, *args, **kwargs)[source]

Bases: object

process_key(user_input)[source]
birdears.interfaces.commandline.center_text(text, sep=True, nl=0)[source]

This function returns input text centered according to terminal columns.

Parameters
  • text (str) – The string to be centered, it can have multiple lines.

  • sep (bool) – Add line separator after centered text (True) or not (False).

  • nl (int) – How many new lines to add after text.

birdears.interfaces.commandline.make_input_str(user_input, keyboard_index)[source]

Makes a string representing intervals entered by the user.

This function is to be used by questions which takes more than one interval input as MelodicDictation, and formats the intervals already entered.

Parameters
  • user_input (array_type) – The list of keyboard keys entered by user.

  • keyboard_index (array_type) – The keyboard mapping used by question.

birdears.interfaces.commandline.print_instrumental(response)[source]

Prints the formatted response for ‘instrumental’ exercise.

Parameters

response (dict) – A response returned by question’s check_question()

birdears.interfaces.commandline.print_question(question)[source]

Prints the question to the user.

Parameters

question (obj) – A Question class with the question to be printed.

birdears.interfaces.commandline.print_response(response)[source]

Prints the formatted response.

Parameters

response (dict) – A response returned by question’s check_question()

birdears.interfaces.urwid module

class birdears.interfaces.urwid.Keyboard(scale, question_tonic_pitch, main_loop=None, keyboard_index=None, *args, **kwargs)[source]

Bases: Filler

highlight_key(element=None)[source]
class birdears.interfaces.urwid.KeyboardButton(top='', middle='', bottom='', pitch=None, *args, **kwargs)[source]

Bases: Padding

highlight(state=False)[source]
birdears.interfaces.urwid.Pad(weight=1)[source]
class birdears.interfaces.urwid.QuestionWidget(top_widget=None, keyboard=None, bottom_widget=None, display=None, *args, **kwargs)[source]

Bases: Padding

draw_display(question_display)[source]
redraw_display(question_display)[source]
class birdears.interfaces.urwid.TextUserInterface(exercise=None, *args, **kwargs)[source]

Bases: object

check_question(user_input)[source]
create_question(exercise, **kwargs)[source]
draw_question()[source]
keypress(key)[source]
run_question()[source]
update_input_display()[source]
update_question_display()[source]
class birdears.interfaces.urwid.TextUserInterfaceWidget(*args, **kwargs)[source]

Bases: Frame

birdears.interfaces.urwid.is_chromatic(key)[source]