eric7/E5Gui/E5ComboBox.py

branch
eric7
changeset 8312
800c432b34c8
parent 8218
7c09585bd960
child 8318
962bce857696
equal deleted inserted replaced
8311:4e8b98454baa 8312:800c432b34c8
1 # -*- coding: utf-8 -*-
2
3 # Copyright (c) 2012 - 2021 Detlev Offenbach <detlev@die-offenbachs.de>
4 #
5
6 """
7 Module implementing combobox classes using the eric line edits.
8 """
9
10 from PyQt5.QtWidgets import QComboBox
11
12
13 class E5ComboBox(QComboBox):
14 """
15 Class implementing a combobox using the eric line edit.
16 """
17 def __init__(self, parent=None, inactiveText=""):
18 """
19 Constructor
20
21 @param parent reference to the parent widget (QWidget)
22 @param inactiveText text to be shown on inactivity (string)
23 """
24 super().__init__(parent)
25
26 self.setMinimumHeight(24)
27
28 from .E5LineEdit import E5LineEdit
29 self.__lineedit = E5LineEdit(self, inactiveText)
30 self.setLineEdit(self.__lineedit)
31
32 self.setMinimumHeight(self.__lineedit.minimumHeight() + 3)
33
34 def inactiveText(self):
35 """
36 Public method to get the inactive text.
37
38 @return inactive text (string)
39 """
40 return self.lineEdit().inactiveText()
41
42 def setInactiveText(self, inactiveText):
43 """
44 Public method to set the inactive text.
45
46 @param inactiveText text to be shown on inactivity (string)
47 """
48 self.lineEdit().setInactiveText(inactiveText)
49
50
51 class E5ClearableComboBox(E5ComboBox):
52 """
53 Class implementing a combobox using the eric line edit.
54 """
55 def __init__(self, parent=None, inactiveText=""):
56 """
57 Constructor
58
59 @param parent reference to the parent widget (QWidget)
60 @param inactiveText text to be shown on inactivity (string)
61 """
62 super().__init__(parent, inactiveText)
63
64 from .E5LineEdit import E5ClearableLineEdit
65 self.__lineedit = E5ClearableLineEdit(self, inactiveText)
66 self.setLineEdit(self.__lineedit)

eric ide

mercurial