E5Gui/E5StringListEditWidget.py

changeset 5858
7afdb26fcabc
parent 5389
9b1c800daff3
child 6048
82ad8ec9548c
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):
         """

eric ide

mercurial