urVc@s dZdefdYZdS(s Contains the 'Action' class tActioncBs&eZdZddZddZRS(sAn Action represents the combination of F# key, descriptive text, and, in some cases, an associated arbitrary function. cCstddS(s.Private default function assigned to do_actions"Must override do_action before useN(tNotImplementedError(tselftscreen((s action.pyt _do_action$scCs:||_||_|dk r*||_n |j|_dS(s Constructor key (required): An integer corresponding to a function key. When the function key is pressed and handled by a MainWindow, do_action will be invoked with the current screen as its sole parameter. For example, key=curses.KEY_F2 would imply this action is associated with F2 (and Esc-2) text (required): A string description of the action. This is displayed in the footer. Keep it short - only 80 characters are available for all actions, and it must be assumed that the 'long notation' of ESC-#_ is printed for each action. do_action (optional): If supplied, this parameter should be a function that accepts a single parameter. The function will be passed the current screen as the parameter, and should return the next screen to be shown. If not supplied, the corresponding F# key MUST be caught in a subwindow. N(tkeyttexttNonet do_actionR(RRRR((s action.pyt__init__(s     N(t__name__t __module__t__doc__RRR (((s action.pyRs N(R tobjectR(((s action.pyts