summaryrefslogtreecommitdiff
path: root/nephilim/connect_wg.py
diff options
context:
space:
mode:
authorAnton Khirnov <wyskas@gmail.com>2009-03-07 21:33:02 +0100
committerAnton Khirnov <wyskas@gmail.com>2009-03-07 21:33:02 +0100
commit21d3cab52dc072fa039e3b49f65f284a4aa8ca41 (patch)
tree1956a9b223808a3adade0152db44c4fa1ce2e957 /nephilim/connect_wg.py
parent506745dced53b6b6d661207a766d5d66ee33620d (diff)
winConnect->connect_wg
Diffstat (limited to 'nephilim/connect_wg.py')
-rw-r--r--nephilim/connect_wg.py65
1 files changed, 65 insertions, 0 deletions
diff --git a/nephilim/connect_wg.py b/nephilim/connect_wg.py
new file mode 100644
index 0000000..3a3f0dd
--- /dev/null
+++ b/nephilim/connect_wg.py
@@ -0,0 +1,65 @@
+from PyQt4 import QtGui, QtCore
+from PyQt4.QtCore import QVariant
+import time
+
+from misc import ORGNAME, APPNAME, appIcon
+
+class ConnectWidget(QtGui.QWidget):
+ host_txt = None
+ port_txt = None
+ info_lbl = None
+ connect_btn = None
+ mpclient = None
+ settings = None
+
+ def __init__(self, parent):
+ QtGui.QWidget.__init__(self)
+ self.mpclient = parent.mpclient
+ self.settings = QtCore.QSettings(ORGNAME, APPNAME)
+
+ self.host_txt = QtGui.QLineEdit(self.settings.value('MPD/host', QVariant('localhost')).toString())
+ self.port_txt = QtGui.QLineEdit(self.settings.value('MPD/port', QVariant('6600')).toString())
+ self.port_txt.setValidator(QtGui.QIntValidator(1, 65535, self.port_txt))
+ self.info_lbl = QtGui.QLabel("connecting...")
+
+ self.connect_btn = QtGui.QPushButton('Connect')
+ self.connect(self.connect_btn, QtCore.SIGNAL('clicked()'), self.connect_mpd)
+
+ self.setLayout(QtGui.QGridLayout())
+ self.layout().addWidget(self.info_lbl, 0, 0, 1, 2)
+ self.layout().addWidget(self.host_txt, 1, 0)
+ self.layout().addWidget(self.port_txt, 1, 1)
+ self.layout().addWidget(self.connect_btn, 2, 0)
+
+ self.setWindowIcon(QtGui.QIcon(appIcon))
+ self.setWindowTitle('Connect to MPD')
+ self.center()
+
+ self.connect(self.mpclient, QtCore.SIGNAL('connected'), self.on_connected)
+
+ def center(self):
+ screen = QtGui.QDesktopWidget().screenGeometry()
+ size = self.geometry()
+ self.move((screen.width()-size.width())/2, (screen.height()-size.height())/2+100)
+
+ def monitor(self):
+ self.show()
+ self.activateWindow()
+ self.raise_()
+ if self.host_txt:
+ self.connect_mpd()
+
+ def connect_mpd(self):
+ host = str(self.host_txt.text())
+ port = int(self.port_txt.text()) if self.port_txt.text() else None
+
+ self.info_lbl.setText('Trying to connect to %s' + (':%d'%port if port else ''))
+ if not self.mpclient.connect_mpd(host, port):
+ self.info_lbl.setText('Connection failed')
+
+ def on_connected(self):
+ self.info_lbl.setText('Connected')
+ self.settings.setValue('MPD/host', QVariant(self.host_txt.text()))
+ self.settings.setValue('MPD/port', QVariant(self.port_txt.text()))
+ self.hide()
+