Beispiel #1
0
    def __init__(self, parent, title = 'Free Space', fs_type = "free", size = 0, root = None):
        QWidget.__init__(self, parent)
        self.ui = Ui_PartitionItem()
        self.ui.setupUi(self)
        self.parent = parent
        self.root = root
        self.device = None

        self.setFSType(fs_type)
        self.setName(title)
        self.setSize(size)

        self.ui.useButton.setStyleSheet(BUTTON)
        self.ui.editButton.setStyleSheet(BUTTON)
        self.ui.deleteButton.setStyleSheet(BUTTON)

        # Shame on me.
        self.ui.deleteButton.clicked.connect(lambda: self.emit(SIGNAL("deleteButtonClicked"), True))
        self.ui.editButton.clicked.connect(lambda: self.emit(SIGNAL("editButtonClicked"), True))

        self.connect(self, SIGNAL("deleteButtonClicked"), self.root.deleteDevice)
        self.connect(self, SIGNAL("editButtonClicked"), self.root.editDevice)

        QTimer.singleShot(0, self.leaveEvent)
Beispiel #2
0
class Partition(QWidget, Ui_PartitionItem):
    def __init__(self, parent, title = 'Free Space', fs_type = "free", size = 0, root = None):
        QWidget.__init__(self, parent)
        self.ui = Ui_PartitionItem()
        self.ui.setupUi(self)
        self.parent = parent
        self.root = root
        self.device = None

        self.setFSType(fs_type)
        self.setName(title)
        self.setSize(size)

        self.ui.useButton.setStyleSheet(BUTTON)
        self.ui.editButton.setStyleSheet(BUTTON)
        self.ui.deleteButton.setStyleSheet(BUTTON)

        # Shame on me.
        self.ui.deleteButton.clicked.connect(lambda: self.emit(SIGNAL("deleteButtonClicked"), True))
        self.ui.editButton.clicked.connect(lambda: self.emit(SIGNAL("editButtonClicked"), True))

        self.connect(self, SIGNAL("deleteButtonClicked"), self.root.deleteDevice)
        self.connect(self, SIGNAL("editButtonClicked"), self.root.editDevice)

        QTimer.singleShot(0, self.leaveEvent)

    def setDevice(self, device):
        self.device = device

    def setName(self, text):
        self.ui.title.setText(text)

    def setDetails(self, details):
        self.ui.comment.setText(details)

    def name(self):
        return self.ui.title.text()

    def setFSType(self, fs_type):
        self._fs_type = fs_type
        self.ui.Partition.setStyleSheet(STYLES.get(fs_type, UNKNOWN_STYLE))

    def setSize(self, size):
        self._size = size
        self.setToolTip('Size: %s MB' % size)
        self.parent._updateSize()

    def enterEvent(self, event):
        if not self._fs_type == 'free':
            self.ui.editButton.show()
            self.ui.deleteButton.show()
            self.setMinimumWidth(200)
        elif self._fs_type == 'free':
            self.ui.useButton.show()
            self.ui.useButton.setMenu(self.root.menu)
            self.root._active_device = self.device

    def leaveEvent(self, event=None):
        if self._fs_type == 'free':
            self.ui.useButton.setMenu(QMenu())
        self.ui.useButton.hide()
        self.ui.editButton.hide()
        self.ui.deleteButton.hide()
        self.setMinimumWidth(60)