Example #1
0
class UserPref(QtGui.QDialog):

    def __init__(self):
        super(UserPref, self).__init__()
        self.storage = Storage()
        title = "Desktop Harmony - Preferences"
        self.setWindowTitle(str(title))
        self.resize(300, 50)

        self.layout = QtGui.QGridLayout(self)

        #username input
        self.userNameInput = QtGui.QLineEdit(self.storage.read_username(), self)
        self.userNameInput.setStyleSheet("font: 15pt")
        self.userNameInput.setFixedHeight(30)
        self.layout.addWidget(self.userNameInput, 0, 1, 1, 2)
        userLabel = QtGui.QLabel('Username:'******'Password:'******'IP:')
        self.layout.addWidget(userLabel, 2, 0)

        #port input (5222)
        self.portInput = QtGui.QLineEdit(self.storage.read_username(), self)
        self.portInput.setStyleSheet("font: 15pt")
        self.portInput.setFixedHeight(30)
        self.layout.addWidget(self.portInput, 3, 1, 1, 2)
        userLabel = QtGui.QLabel('Port:')
        self.layout.addWidget(userLabel, 3, 0)

        #Remember checkbox
        self.rememberBox = QtGui.QCheckBox()
        self.rememberBox.setChecked(True)
        self.layout.addWidget(self.rememberBox, 4, 1, 1, 1)
        rememberLabel = QtGui.QLabel('Remember:')
        self.layout.addWidget(rememberLabel, 4, 0)

        #OK buton
        self.okbutton = QtGui.QPushButton(self)
        self.okbutton.setText("OK")
        self.okbutton.setMinimumWidth(50)
        self.okbutton.setMinimumHeight(45)
        self.layout.addWidget(self.okbutton, 5, 1, 1, 1)
        QtCore.QObject.connect(self.okbutton, QtCore.SIGNAL("clicked()"), self.signIn)

        #Cancel buton
        self.cancelButton = QtGui.QPushButton(self)
        self.cancelButton.setText("Cancel")
        self.cancelButton.setMinimumWidth(50)
        self.cancelButton.setMinimumHeight(45)
        self.layout.addWidget(self.cancelButton, 5, 2, 1, 1)
        QtCore.QObject.connect(self.cancelButton, QtCore.SIGNAL("clicked()"), self.cancel)

        self.setLayout(self.layout)


    def signIn(self):
        username = str(self.userNameInput.text())
        password = str(self.passwordInput.text())
        ip = str(self.ipInput.text())
        port = str(self.portInput.text())
        remember = self.rememberBox.isChecked()

        if remember:
            self.storage.write_settings(username, password, ip, port)
        else:
            self.storage.remove_settings()

        try:
            self.controller = Controller(username, password, ip, port)
            self.controller.login()
            self.activityWindow = ActivitySelect(self.controller)
            self.accept()
        except Exception, e:
            self.error = Error(str(e))