X-Git-Url: https://jfr.im/git/irc/weechat/qweechat.git/blobdiff_plain/8b36cd49b14e56cb5606ba26c15f18e3e618f066..7f19623ef89aa353894a2091bf47ac8c0fd42ab1:/qweechat/network.py diff --git a/qweechat/network.py b/qweechat/network.py index 78bb0ce..c089fe1 100644 --- a/qweechat/network.py +++ b/qweechat/network.py @@ -2,7 +2,7 @@ # # network.py - I/O with WeeChat/relay # -# Copyright (C) 2011-2014 Sébastien Helleu +# Copyright (C) 2011-2019 Sébastien Helleu # # This file is part of QWeeChat, a Qt remote GUI for WeeChat. # @@ -22,9 +22,10 @@ import struct import qt_compat +import config + QtCore = qt_compat.import_module('QtCore') QtNetwork = qt_compat.import_module('QtNetwork') -import config _PROTO_INIT_CMD = ['init password=%(password)s'] @@ -111,22 +112,25 @@ class Network(QtCore.QObject): self.statusChanged.emit(self.status_disconnected, None) def is_connected(self): + """Return True if the socket is connected, False otherwise.""" return self._socket.state() == QtNetwork.QAbstractSocket.ConnectedState def is_ssl(self): + """Return True if SSL is used, False otherwise.""" return self._ssl def connect_weechat(self, server, port, ssl, password, lines): + """Connect to WeeChat.""" self._server = server try: self._port = int(port) - except: + except ValueError: self._port = 0 self._ssl = ssl self._password = password try: self._lines = int(lines) - except: + except ValueError: self._lines = config.CONFIG_DEFAULT_RELAY_LINES if self._socket.state() == QtNetwork.QAbstractSocket.ConnectedState: return @@ -139,6 +143,7 @@ class Network(QtCore.QObject): self.statusChanged.emit(self.status_connecting, None) def disconnect_weechat(self): + """Disconnect from WeeChat.""" if self._socket.state() == QtNetwork.QAbstractSocket.UnconnectedState: return if self._socket.state() == QtNetwork.QAbstractSocket.ConnectedState: @@ -149,23 +154,32 @@ class Network(QtCore.QObject): self._socket.abort() def send_to_weechat(self, message): + """Send a message to WeeChat.""" self._socket.write(message.encode('utf-8')) def desync_weechat(self): + """Desynchronize from WeeChat.""" self.send_to_weechat('desync\n') def sync_weechat(self): + """Synchronize with WeeChat.""" self.send_to_weechat('\n'.join(_PROTO_SYNC_CMDS)) def status_icon(self, status): - icon = {self.status_disconnected: 'dialog-close.png', - self.status_connecting: 'dialog-close.png', - self.status_connected: 'dialog-ok-apply.png'} + """Return the name of icon for a given status.""" + icon = { + self.status_disconnected: 'dialog-close.png', + self.status_connecting: 'dialog-close.png', + self.status_connected: 'dialog-ok-apply.png', + } return icon.get(status, '') def get_options(self): - return {'server': self._server, - 'port': self._port, - 'ssl': 'on' if self._ssl else 'off', - 'password': self._password, - 'lines': str(self._lines)} + """Get connection options.""" + return { + 'server': self._server, + 'port': self._port, + 'ssl': 'on' if self._ssl else 'off', + 'password': self._password, + 'lines': str(self._lines), + }