diff -r a4cf5c1c8d2b -r 7afdb26fcabc E5Gui/E5StringListEditWidget.py --- a/E5Gui/E5StringListEditWidget.py Tue Aug 29 15:17:33 2017 +0200 +++ b/E5Gui/E5StringListEditWidget.py Tue Aug 29 17:18:18 2017 +0200 @@ -8,7 +8,8 @@ """ from __future__ import unicode_literals -from PyQt5.QtCore import pyqtSlot, Qt, QSortFilterProxyModel, QStringListModel +from PyQt5.QtCore import pyqtSlot, pyqtSignal, Qt, QSortFilterProxyModel, \ + QStringListModel from PyQt5.QtWidgets import QWidget, QInputDialog, QLineEdit from .Ui_E5StringListEditWidget import Ui_E5StringListEditWidget @@ -17,7 +18,11 @@ class E5StringListEditWidget(QWidget, Ui_E5StringListEditWidget): """ Class implementing a dialog to edit a list of strings. + + @signal setToDefault() emitted to request the default list of values """ + setToDefault = pyqtSignal() + def __init__(self, parent=None): """ Constructor @@ -33,11 +38,14 @@ self.__proxyModel.setSourceModel(self.__model) self.stringList.setModel(self.__proxyModel) + self.defaultButton.hide() + self.searchEdit.textChanged.connect( self.__proxyModel.setFilterFixedString) self.removeButton.clicked.connect(self.stringList.removeSelected) self.removeAllButton.clicked.connect(self.stringList.removeAll) + self.defaultButton.clicked.connect(self.setToDefault) def setList(self, stringList): """ @@ -64,6 +72,15 @@ """ self.stringList.setWhatsThis(txt) + def setDefaultVisible(self, visible): + """ + Public method to show or hide the default button. + + @param visible flag indicating the visibility of the default button + @type bool + """ + self.defaultButton.setVisible(visible) + @pyqtSlot() def on_addButton_clicked(self): """