class OpenPedalboardWindow(QDialog): def __init__(self, parent, pedalboards): QDialog.__init__(self) self.ui = Ui_PedalboardOpen() self.ui.setupUi(self) self.fSelectedURI = "" for pedalboard in pedalboards: item = QListWidgetItem(self.ui.listWidget) item.setData(Qt.UserRole, pedalboard['uri']) item.setIcon(QIcon(os.path.join(pedalboard['bundle'], "thumbnail.png"))) item.setText(pedalboard['title']) self.ui.listWidget.addItem(item) self.ui.listWidget.setCurrentRow(0) self.accepted.connect(self.slot_setSelectedURI) self.ui.listWidget.doubleClicked.connect(self.accept) def getSelectedURI(self): return self.fSelectedURI @pyqtSlot() def slot_setSelectedURI(self): item = self.ui.listWidget.currentItem() if item is None: return self.fSelectedURI = item.data(Qt.UserRole) def done(self, r): QDialog.done(self, r) self.close()
def __init__(self, parent, pedalboards): QDialog.__init__(self) self.ui = Ui_PedalboardOpen() self.ui.setupUi(self) self.fSelectedURI = "" for pedalboard in pedalboards: item = QListWidgetItem(self.ui.listWidget) item.setData(Qt.UserRole, pedalboard['uri']) item.setIcon(QIcon(os.path.join(pedalboard['bundle'], "thumbnail.png"))) item.setText(pedalboard['title']) self.ui.listWidget.addItem(item) self.ui.listWidget.setCurrentRow(0) self.accepted.connect(self.slot_setSelectedURI) self.ui.listWidget.doubleClicked.connect(self.accept)