def handle_input()

in ebcli/display/screen.py [0:0]


    def handle_input(self):
        t = term.get_terminal()
        with t.cbreak():  # Get input
            val = t.inkey(timeout=.5)
            if val:
                self.idle_time = datetime.now()
                char = str(val).upper()
                LOG.debug('Got val: {0}, {1}, {2}.'
                          .format(val, val.name, val.code))
                # io.echo('Got val: {},,  {}, {}.'.format(val, val.name, val.code))
                # time.sleep(3)
                if char == 'Q':
                    if self.help_table.visible:
                        self.turn_on_table(self.last_table)
                    else:
                        return True  # Exit command
                elif char == 'X':
                    self.replace_instance_view()
                elif char == 'B':
                    self.reboot_instance_view()
                elif char == '1':
                    self.turn_on_table('split')
                elif char == '2':
                    self.turn_on_table('health')
                elif char == '3':
                    self.turn_on_table('requests')
                elif char == '4':
                    self.turn_on_table('cpu')
                elif char == '5':
                    self.turn_on_table('deployments')
                elif char == 'H':
                    self.show_help()
                elif char == 'F':
                    self.toggle_freeze()
                elif char == 'P':
                    self.snapshot_file_view()
                elif char == 'Z':
                    self.mono = not self.mono
                elif char == '>':
                    self.move_sort_column_right()
                elif char == '<':
                    self.move_sort_column_left()
                elif char == '-':
                    self.sort_reversed = True
                elif char == '+':
                    self.sort_reversed = False
                # Scrolling
                elif val.name == 'KEY_DOWN':  # Down arrow
                    self.scroll_down()
                elif val.name == 'KEY_UP':  # Up arrow
                    self.scroll_down(reverse=True)
                elif val.name == 'KEY_LEFT':  # Left arrow
                    self.scroll_over(reverse=True)
                elif val.name == 'KEY_RIGHT':  # Right arrow
                    self.scroll_over()
                elif val.name == 'KEY_END':  # End
                    for table in self.tables:
                        table.scroll_to_end()
                elif val.name == 'KEY_HOME':  # Home
                    for table in self.tables:
                        table.scroll_to_beginning()

                # If in help window (not main screen) these keys exit
                elif self.help_table.visible and val.code == 361:  # ESC KEY
                    self.turn_on_table(self.last_table)