def _update_breadcrumbs(self): if self._connection.is_tcp is True: host = '{0}:{1}'.format(self._connection.host, str(self._connection.port)) else: host = self._connection.host session_name = self._connection.session_name breadcrumbs = [] if session_name is not None: breadcrumbs.append(u'{0}({1})'.format(session_name, host)) else: breadcrumbs.append(u'{0}'.format(host)) if self._connection.database is not None: breadcrumbs.append(self._connection.database) if isinstance(self._model, TableModel): breadcrumbs.append(self._model.table_name) if isinstance(self._model, QueryModel): breadcrumbs.append(u'Query') breadcrumbs = '/'.join(breadcrumbs) utils.orig_w(self._header).set_text(u'[{0}]'.format(breadcrumbs))
def refresh(self, model): self._visible_columns = 0 self._focused_row_index = 0 self._focused_col_index = 0 self._rowcount = len(self._model) utils.orig_w(self._header).refresh(self._model.columns) self._body.clear() self._body.set_columns(self._model.columns, utils.orig_w(self._header).cell_sizes) for row in self._model: self._body.add_row(row) self._update_footer() self._scroll_rows()
def toggle_message_bar(self, status, message=None, is_info=True, is_error=False): if status is False: self.original_widget = self._action_bar shared_main_loop.refresh() return self.original_widget = self._message_bar if message is not None: utils.orig_w(self._message_bar).set_text(message) if is_error is True: self._message_bar.set_attr_map({None: 'error_message'}) else: self._message_bar.set_attr_map({None: 'info_message'}) shared_main_loop.refresh()
def __del__(self): self._cancel_clear_error_timer() if not self._command_bar: return command_bar = utils.orig_w(self._command_bar) urwid.disconnect_signal(command_bar, command_bar.SIGNAL_CANCEL, self.cancel_command_edit) urwid.disconnect_signal(self._command_processor, self._command_processor.SIGNAL_ERROR, self.show_command_error)
def _toggle_name_read_only(self, state): name_field = self._name_field_container.contents[1][0] if orig_w(name_field).read_only == state: return if state: orig_w(name_field).read_only = True name_field.set_attr_map({None: 'editbox:label'}) del self._name_field_container.contents[2] self._focus_position = 2 else: orig_w(name_field).read_only = False name_field.set_attr_map({None: 'editbox'}) if len(self._name_field_container.contents) == 2: options = self._name_field_container.options('pack') self._name_field_container.contents.append( (urwid.Text(u'Required'), options)) self._focus_position = 0 self._name_field_container.focus_position = 1 self.reset_focus()
def toggle_command_mode(self, status, command_marker=None, show_last_cmd=False): if status is True: self._cancel_clear_error_timer() self.original_widget = self._command_bar if show_last_cmd is True: utils.orig_w(self._command_bar).show_last_cmd() utils.orig_w(self._command_bar).set_marker(command_marker) return utils.orig_w(self._command_bar).reset() self.original_widget = self._action_bar