Пример #1
0
    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))
Пример #2
0
 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()
Пример #3
0
    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()
Пример #4
0
 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)
Пример #5
0
    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()
Пример #6
0
 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