- def debug_display(self, *args, **kwargs):
- """Display a debug message."""
- self.debug_lines.append((args, kwargs))
- self.debug_lines = self.debug_lines[-DEBUG_NUM_LINES:]
- if self.debug_dialog:
- self.debug_dialog.chat.display(*args, **kwargs)
-
- def open_debug_dialog(self):
- """Open a dialog with debug messages."""
- if not self.debug_dialog:
- self.debug_dialog = DebugDialog(self)
- self.debug_dialog.input.textSent.connect(
- self.debug_input_text_sent)
- self.debug_dialog.finished.connect(self._debug_dialog_closed)
- self.debug_dialog.display_lines(self.debug_lines)
- self.debug_dialog.chat.scroll_bottom()
-
- def debug_input_text_sent(self, text):
- """Send debug buffer input to WeeChat."""
- if self.network.is_connected():
- text = str(text)
- pos = text.find(')')
- if text.startswith('(') and pos >= 0:
- text = '(debug_%s)%s' % (text[1:pos], text[pos+1:])
- else:
- text = '(debug) %s' % text
- self.debug_display(0, '<==', text, forcecolor='#AA0000')
- self.network.send_to_weechat(text + '\n')
-
- def _debug_dialog_closed(self, result):
- """Called when debug dialog is closed."""
- self.debug_dialog = None
-