Exemple #1
0
    def __init__(self, package, profile, data, parent, item):
        QtGui.QWidget.__init__(self, parent)

        self.ui = Ui_ConnectionItemWidget()
        self.ui.setupUi(self)
        self.ui.signalStrength.hide()

        self.ui.labelName.setText(profile)

        # Workaround for Pyuic Problem
        self.ui.checkToggler.setText('')

        # Class members
        self.iface = parent.iface
        self.item = item
        self.package = package
        self.profile = profile
        self.desc = None
        self.data = data

        # Get backend capabilities
        self.capabilities = self.iface.capabilities(self.package)["modes"]

        # Check if package supports PIN operations
        self.supportsPIN = "pin" in self.capabilities

        # Connect signals for edit and delete
        self.connect(self.ui.buttonEdit, SIGNAL("clicked()"),
                     parent.editConnection)
        self.connect(self.ui.buttonDelete, SIGNAL("clicked()"),
                     parent.deleteConnection)

        # Hide editButton for "wizard" like backends
        if "wizard" in self.capabilities:
            self.ui.buttonEdit.hide()

        # Toggle functionality depends on PIN support for some devices
        self.connect(self.ui.checkToggler, SIGNAL("clicked()"),
                     self.toggleConnection)
Exemple #2
0
    def __init__(self, package, profile, data, parent, item):
        QtGui.QWidget.__init__(self, parent)

        self.ui = Ui_ConnectionItemWidget()
        self.ui.setupUi(self)
        self.ui.wifiStrength.hide()

        self.ui.labelName.setText(profile)

        self.iface = parent.iface
        self.item = item
        self.package = package
        self.profile = profile
        self.desc = None
        self.data = data

        self.connect(self.ui.buttonEdit,   SIGNAL("clicked()"), parent.editConnection)
        self.connect(self.ui.buttonDelete, SIGNAL("clicked()"), parent.deleteConnection)
        self.connect(self.ui.checkToggler, SIGNAL("clicked()"), self.toggleConnection)
Exemple #3
0
    def __init__(self, package, profile, data, parent, item):
        QtGui.QWidget.__init__(self, parent)

        self.ui = Ui_ConnectionItemWidget()
        self.ui.setupUi(self)
        self.ui.signalStrength.hide()

        self.ui.labelName.setText(profile)

        # Workaround for Pyuic Problem
        self.ui.checkToggler.setText('')

        # Class members
        self.iface = parent.iface
        self.item = item
        self.package = package
        self.profile = profile
        self.desc = None
        self.data = data

        # Get backend capabilities
        self.capabilities = self.iface.capabilities(self.package)["modes"]

        # Check if package supports PIN operations
        self.supportsPIN = "pin" in self.capabilities

        # Connect signals for edit and delete
        self.connect(self.ui.buttonEdit, SIGNAL("clicked()"), parent.editConnection)
        self.connect(self.ui.buttonDelete, SIGNAL("clicked()"), parent.deleteConnection)

        # Hide editButton for "wizard" like backends
        if "wizard" in self.capabilities:
            self.ui.buttonEdit.hide()

        # Toggle functionality depends on PIN support for some devices
        self.connect(self.ui.checkToggler, SIGNAL("clicked()"), self.toggleConnection)
Exemple #4
0
class ConnectionItemWidget(QtGui.QWidget):

    def __init__(self, package, profile, data, parent, item):
        QtGui.QWidget.__init__(self, parent)

        self.ui = Ui_ConnectionItemWidget()
        self.ui.setupUi(self)
        self.ui.signalStrength.hide()

        self.ui.labelName.setText(profile)

        # Workaround for Pyuic Problem
        self.ui.checkToggler.setText('')

        # Class members
        self.iface = parent.iface
        self.item = item
        self.package = package
        self.profile = profile
        self.desc = None
        self.data = data

        # Get backend capabilities
        self.capabilities = self.iface.capabilities(self.package)["modes"]

        # Check if package supports PIN operations
        self.supportsPIN = "pin" in self.capabilities

        # Connect signals for edit and delete
        self.connect(self.ui.buttonEdit, SIGNAL("clicked()"), parent.editConnection)
        self.connect(self.ui.buttonDelete, SIGNAL("clicked()"), parent.deleteConnection)

        # Hide editButton for "wizard" like backends
        if "wizard" in self.capabilities:
            self.ui.buttonEdit.hide()

        # Toggle functionality depends on PIN support for some devices
        self.connect(self.ui.checkToggler, SIGNAL("clicked()"), self.toggleConnection)

    def setSignalStrength(self, value):
        self.ui.signalStrength.setValue(value)
        self.ui.signalStrength.show()

    def hideSignalStrength(self):
        self.ui.signalStrength.hide()

    def mouseDoubleClickEvent(self, event):
        self.ui.buttonEdit.animateClick(100)

    def updateData(self, data):
        if type(data) == list:
            if len(data) == 2:
                name, state = data
                detail = ''
            elif len(data) == 3:
                name, state, detail = data
        elif type(data) == str:
            splitted = data.split(' ',1)
            state = splitted[0]
            detail = ""
            if len(splitted) > 1:
                detail = splitted[1]
        if state == "down":
            self.ui.labelDesc.setText(i18n("Disconnected"))
            self.ui.checkToggler.setChecked(False)
            self.ui.labelStatus.setPixmap(KIcon(getIconForPackage(self.package)).pixmap(32))
            self.setState(True)
        elif state == "up":
            self.ui.labelDesc.setText(unicode(i18n("Connected: %s")) % detail)
            self.ui.checkToggler.setChecked(True)
            self.ui.labelStatus.setPixmap(KIcon("dialog-ok-apply").pixmap(32))
            self.setState(True)
        elif state == "connecting":
            self.ui.labelDesc.setText(i18n("Connecting"))
            self.ui.labelStatus.setPixmap(KIcon("chronometer").pixmap(32))
            self.setState(True)
        elif state == "inaccessible":
            self.ui.labelDesc.setText(unicode(detail))
            self.ui.labelStatus.setPixmap(KIcon("emblem-important").pixmap(32))
            self.setState(True)
        elif state == "unplugged":
            self.ui.labelDesc.setText(i18n("Cable or device is unplugged"))
            self.ui.labelStatus.setPixmap(KIcon("dialog-warning").pixmap(32))
            self.setState(False)

    def setState(self, state):
        pass

    def toggleConnection(self):
        def handler(package, exception, args):
            if exception:
                print "*** exception: %s" % exception
                if self.ui.checkToggler.isChecked():
                    self.ui.checkToggler.setChecked(False)
                else:
                    self.ui.checkToggler.setChecked(True)
                if "Comar.PolicyKit" in exception._dbus_error_name:
                    KMessageBox.error(self, i18n("Access denied"))
                else:
                    KMessageBox.error(self, unicode(exception))

        if self.ui.checkToggler.isChecked():
            self.iface.connect(self.package, self.profile, handler=handler)
        else:
            self.iface.disconnect(self.package, self.profile, handler=handler)
Exemple #5
0
class ConnectionItemWidget(QtGui.QWidget):

    def __init__(self, package, profile, data, parent, item):
        QtGui.QWidget.__init__(self, parent)

        self.ui = Ui_ConnectionItemWidget()
        self.ui.setupUi(self)
        self.ui.wifiStrength.hide()

        self.ui.labelName.setText(profile)

        self.iface = parent.iface
        self.item = item
        self.package = package
        self.profile = profile
        self.desc = None
        self.data = data

        self.connect(self.ui.buttonEdit,   SIGNAL("clicked()"), parent.editConnection)
        self.connect(self.ui.buttonDelete, SIGNAL("clicked()"), parent.deleteConnection)
        self.connect(self.ui.checkToggler, SIGNAL("clicked()"), self.toggleConnection)

    def setSignalStrength(self, value):
        self.ui.wifiStrength.setValue(value)
        self.ui.wifiStrength.show()

    def hideSignalStrength(self):
        self.ui.wifiStrength.hide()

    def mouseDoubleClickEvent(self, event):
        self.ui.buttonEdit.animateClick(100)

    def updateData(self, data):
        if type(data) == list:
            if len(data) == 2:
                name, state = data
                detail = ''
            elif len(data) == 3:
                name, state, detail = data
        elif type(data) == str:
            splitted = data.split(' ',1)
            state = splitted[0]
            detail = ""
            if len(splitted) > 1:
                detail = splitted[1]
        if state == "down":
            self.ui.labelDesc.setText(i18n("Disconnected"))
            self.ui.checkToggler.setChecked(False)
            self.ui.labelStatus.setPixmap(KIcon(iconForPackage[self.package]).pixmap(32))
            self.setState(True)
        elif state == "up":
            self.ui.labelDesc.setText(unicode(i18n("Connected: %s")) % detail)
            self.ui.checkToggler.setChecked(True)
            self.ui.labelStatus.setPixmap(KIcon("dialog-ok-apply").pixmap(32))
            self.setState(True)
        elif state == "connecting":
            self.ui.labelDesc.setText(i18n("Connecting"))
            self.ui.labelStatus.setPixmap(KIcon("chronometer").pixmap(32))
            self.setState(True)
        elif state == "inaccessible":
            self.ui.labelDesc.setText(unicode(detail))
            self.ui.labelStatus.setPixmap(KIcon("emblem-important").pixmap(32))
            self.setState(True)
        elif state == "unplugged":
            self.ui.labelDesc.setText(i18n("Cable or device is unplugged."))
            self.ui.labelStatus.setPixmap(KIcon("dialog-warning").pixmap(32))
            self.setState(False)

    def setState(self, state):
        pass

    def toggleConnection(self):
        def handler(package, exception, args):
            if exception:
                if self.ui.checkToggler.isChecked():
                    self.ui.checkToggler.setChecked(False)
                else:
                    self.ui.checkToggler.setChecked(True)
                if "Comar.PolicyKit" in exception._dbus_error_name:
                    KMessageBox.error(self, i18n("Access denied."))
                else:
                    KMessageBox.error(self, unicode(exception))

        if self.ui.checkToggler.isChecked():
            self.iface.connect(self.package, self.profile, handler=handler)
        else:
            self.iface.disconnect(self.package, self.profile, handler=handler)
Exemple #6
0
class ConnectionItemWidget(QtGui.QWidget):
    def __init__(self, package, profile, data, parent, item):
        QtGui.QWidget.__init__(self, parent)

        self.ui = Ui_ConnectionItemWidget()
        self.ui.setupUi(self)
        self.ui.signalStrength.hide()

        self.ui.labelName.setText(profile)

        # Workaround for Pyuic Problem
        self.ui.checkToggler.setText('')

        # Class members
        self.iface = parent.iface
        self.item = item
        self.package = package
        self.profile = profile
        self.desc = None
        self.data = data

        # Get backend capabilities
        self.capabilities = self.iface.capabilities(self.package)["modes"]

        # Check if package supports PIN operations
        self.supportsPIN = "pin" in self.capabilities

        # Connect signals for edit and delete
        self.connect(self.ui.buttonEdit, SIGNAL("clicked()"),
                     parent.editConnection)
        self.connect(self.ui.buttonDelete, SIGNAL("clicked()"),
                     parent.deleteConnection)

        # Hide editButton for "wizard" like backends
        if "wizard" in self.capabilities:
            self.ui.buttonEdit.hide()

        # Toggle functionality depends on PIN support for some devices
        self.connect(self.ui.checkToggler, SIGNAL("clicked()"),
                     self.toggleConnection)

    def setSignalStrength(self, value):
        self.ui.signalStrength.setValue(value)
        self.ui.signalStrength.show()

    def hideSignalStrength(self):
        self.ui.signalStrength.hide()

    def mouseDoubleClickEvent(self, event):
        self.ui.buttonEdit.animateClick(100)

    def updateData(self, data):
        if type(data) == list:
            if len(data) == 2:
                name, state = data
                detail = ''
            elif len(data) == 3:
                name, state, detail = data
        elif type(data) == str:
            splitted = data.split(' ', 1)
            state = splitted[0]
            detail = ""
            if len(splitted) > 1:
                detail = splitted[1]
        if state == "down":
            self.ui.labelDesc.setText(i18n("Disconnected"))
            self.ui.checkToggler.setChecked(False)
            self.ui.labelStatus.setPixmap(
                KIcon(getIconForPackage(self.package)).pixmap(32))
            self.setState(True)
        elif state == "up":
            self.ui.labelDesc.setText(unicode(i18n("Connected: %s")) % detail)
            self.ui.checkToggler.setChecked(True)
            self.ui.labelStatus.setPixmap(KIcon("dialog-ok-apply").pixmap(32))
            self.setState(True)
        elif state == "connecting":
            self.ui.labelDesc.setText(i18n("Connecting"))
            self.ui.labelStatus.setPixmap(KIcon("chronometer").pixmap(32))
            self.setState(True)
        elif state == "inaccessible":
            self.ui.labelDesc.setText(unicode(detail))
            self.ui.labelStatus.setPixmap(KIcon("emblem-important").pixmap(32))
            self.setState(True)
        elif state == "unplugged":
            self.ui.labelDesc.setText(i18n("Cable or device is unplugged"))
            self.ui.labelStatus.setPixmap(KIcon("dialog-warning").pixmap(32))
            self.setState(False)

    def setState(self, state):
        pass

    def toggleConnection(self):
        def handler(package, exception, args):
            if exception:
                print "*** exception: %s" % exception
                if self.ui.checkToggler.isChecked():
                    self.ui.checkToggler.setChecked(False)
                else:
                    self.ui.checkToggler.setChecked(True)
                if "Comar.PolicyKit" in exception._dbus_error_name:
                    KMessageBox.error(self, i18n("Access denied"))
                else:
                    KMessageBox.error(self, unicode(exception))

        if self.ui.checkToggler.isChecked():
            self.iface.connect(self.package, self.profile, handler=handler)
        else:
            self.iface.disconnect(self.package, self.profile, handler=handler)