Preferences/ConfigurationDialog.py

changeset 2223
054c285dab38
parent 2190
abd65b78425e
child 2227
b7aceb255831
equal deleted inserted replaced
2222:105f425944a2 2223:054c285dab38
14 from PyQt4.QtGui import QSizePolicy, QSpacerItem, QWidget, QPixmap, QTreeWidget, \ 14 from PyQt4.QtGui import QSizePolicy, QSpacerItem, QWidget, QPixmap, QTreeWidget, \
15 QStackedWidget, QDialog, QSplitter, QScrollArea, QApplication, QDialogButtonBox, \ 15 QStackedWidget, QDialog, QSplitter, QScrollArea, QApplication, QDialogButtonBox, \
16 QFrame, QVBoxLayout, QTreeWidgetItem, QLabel 16 QFrame, QVBoxLayout, QTreeWidgetItem, QLabel
17 17
18 from E5Gui.E5Application import e5App 18 from E5Gui.E5Application import e5App
19 from E5Gui.E5LineEdit import E5LineEdit 19 from E5Gui.E5LineEdit import E5ClearableLineEdit
20 from E5Gui.E5LineEditButton import E5LineEditButton
21 from E5Gui import E5MessageBox 20 from E5Gui import E5MessageBox
22 from E5Gui.E5MainWindow import E5MainWindow 21 from E5Gui.E5MainWindow import E5MainWindow
23 22
24 import QScintilla.Lexers 23 import QScintilla.Lexers
25 24
405 self.configListWidget = QWidget(self.configSplitter) 404 self.configListWidget = QWidget(self.configSplitter)
406 self.leftVBoxLayout = QVBoxLayout(self.configListWidget) 405 self.leftVBoxLayout = QVBoxLayout(self.configListWidget)
407 self.leftVBoxLayout.setMargin(0) 406 self.leftVBoxLayout.setMargin(0)
408 self.leftVBoxLayout.setSpacing(0) 407 self.leftVBoxLayout.setSpacing(0)
409 self.leftVBoxLayout.setObjectName("leftVBoxLayout") 408 self.leftVBoxLayout.setObjectName("leftVBoxLayout")
410 self.configListFilter = E5LineEdit(self, self.trUtf8("Enter filter text...")) 409 self.configListFilter = E5ClearableLineEdit(self,
410 self.trUtf8("Enter filter text..."))
411 self.configListFilter.setObjectName("configListFilter") 411 self.configListFilter.setObjectName("configListFilter")
412 self.leftVBoxLayout.addWidget(self.configListFilter) 412 self.leftVBoxLayout.addWidget(self.configListFilter)
413 self.configList = QTreeWidget() 413 self.configList = QTreeWidget()
414 self.configList.setObjectName("configList") 414 self.configList.setObjectName("configList")
415 self.leftVBoxLayout.addWidget(self.configList) 415 self.leftVBoxLayout.addWidget(self.configList)
416
417 self.__clearButton = E5LineEditButton(self)
418 self.__clearButton.setIcon(UI.PixmapCache.getIcon("clearLeft.png"))
419 self.configListFilter.addWidget(self.__clearButton, E5LineEdit.RightSide)
420 self.__clearButton.setVisible(False)
421 self.__clearButton.clicked[()].connect(self.configListFilter.clear)
422 self.configListFilter.textChanged.connect(self.__filterTextChanged) 416 self.configListFilter.textChanged.connect(self.__filterTextChanged)
423 417
424 self.scrollArea = QScrollArea(self.configSplitter) 418 self.scrollArea = QScrollArea(self.configSplitter)
425 self.scrollArea.setFrameShape(QFrame.NoFrame) 419 self.scrollArea.setFrameShape(QFrame.NoFrame)
426 self.scrollArea.setVerticalScrollBarPolicy(Qt.ScrollBarAlwaysOn) 420 self.scrollArea.setVerticalScrollBarPolicy(Qt.ScrollBarAlwaysOn)
490 """ 484 """
491 Private slot to handle a change of the filter. 485 Private slot to handle a change of the filter.
492 486
493 @param filter text of the filter line edit (string) 487 @param filter text of the filter line edit (string)
494 """ 488 """
495 self.__clearButton.setVisible(filter != "")
496
497 self.__filterChildItems(self.configList.invisibleRootItem(), filter) 489 self.__filterChildItems(self.configList.invisibleRootItem(), filter)
498 490
499 def __filterChildItems(self, parent, filter): 491 def __filterChildItems(self, parent, filter):
500 """ 492 """
501 Private method to filter child items based on a filter string. 493 Private method to filter child items based on a filter string.

eric ide

mercurial