eric6/UI/NumbersWidget.py

changeset 8143
2c730d5fd177
parent 7923
91e843545d9a
child 8218
7c09585bd960
equal deleted inserted replaced
8141:27f636beebad 8143:2c730d5fd177
48 @param parent parent index (QModelIndex) 48 @param parent parent index (QModelIndex)
49 @return number of columns (integer) 49 @return number of columns (integer)
50 """ 50 """
51 return self.__bits 51 return self.__bits
52 52
53 def data(self, index, role=Qt.DisplayRole): 53 def data(self, index, role=Qt.ItemDataRole.DisplayRole):
54 """ 54 """
55 Public method to get data from the model. 55 Public method to get data from the model.
56 56
57 @param index index to get data for (QModelIndex) 57 @param index index to get data for (QModelIndex)
58 @param role role of the data to retrieve (integer) 58 @param role role of the data to retrieve (integer)
59 @return requested data 59 @return requested data
60 """ 60 """
61 if role == Qt.CheckStateRole: 61 if role == Qt.ItemDataRole.CheckStateRole:
62 return (self.__value >> (self.__bits - index.column() - 1)) & 1 62 return (self.__value >> (self.__bits - index.column() - 1)) & 1
63 63
64 elif role == Qt.DisplayRole: 64 elif role == Qt.ItemDataRole.DisplayRole:
65 return "" 65 return ""
66 66
67 return None 67 return None
68 68
69 def flags(self, index): 69 def flags(self, index):
71 Public method to get flags from the model. 71 Public method to get flags from the model.
72 72
73 @param index index to get flags for (QModelIndex) 73 @param index index to get flags for (QModelIndex)
74 @return flags (Qt.ItemFlags) 74 @return flags (Qt.ItemFlags)
75 """ 75 """
76 return Qt.ItemIsUserCheckable | Qt.ItemIsEnabled | Qt.ItemIsSelectable 76 return (
77 77 Qt.ItemFlag.ItemIsUserCheckable |
78 def headerData(self, section, orientation, role=Qt.DisplayRole): 78 Qt.ItemFlag.ItemIsEnabled |
79 Qt.ItemFlag.ItemIsSelectable
80 )
81
82 def headerData(self, section, orientation,
83 role=Qt.ItemDataRole.DisplayRole):
79 """ 84 """
80 Public method to get header data from the model. 85 Public method to get header data from the model.
81 86
82 @param section section number (integer) 87 @param section section number (integer)
83 @param orientation orientation (Qt.Orientation) 88 @param orientation orientation (Qt.Orientation)
84 @param role role of the data to retrieve (integer) 89 @param role role of the data to retrieve (Qt.ItemDataRole)
85 @return requested data 90 @return requested data
86 """ 91 """
87 if orientation == Qt.Horizontal and role == Qt.DisplayRole: 92 if (
93 orientation == Qt.Orientation.Horizontal and
94 role == Qt.ItemDataRole.DisplayRole
95 ):
88 return str(self.__bits - section - 1) 96 return str(self.__bits - section - 1)
89 97
90 return QAbstractTableModel.headerData(self, section, orientation, role) 98 return QAbstractTableModel.headerData(self, section, orientation, role)
91 99
92 def setBits(self, bits): 100 def setBits(self, bits):
127 135
128 @return current value of the model (integer) 136 @return current value of the model (integer)
129 """ 137 """
130 return self.__value 138 return self.__value
131 139
132 def setData(self, index, value, role=Qt.EditRole): 140 def setData(self, index, value, role=Qt.ItemDataRole.EditRole):
133 """ 141 """
134 Public method to set the data of a node cell. 142 Public method to set the data of a node cell.
135 143
136 @param index index of the node cell (QModelIndex) 144 @param index index of the node cell (QModelIndex)
137 @param value value to be set 145 @param value value to be set
138 @param role role of the data (integer) 146 @param role role of the data (integer)
139 @return flag indicating success (boolean) 147 @return flag indicating success (boolean)
140 """ 148 """
141 if role == Qt.CheckStateRole: 149 if role == Qt.ItemDataRole.CheckStateRole:
142 if value == Qt.Checked and not self.data(index, Qt.CheckStateRole): 150 if (
143 # that seems like a hack; Qt 4.6 always sends Qt.Checked 151 value == Qt.CheckState.Checked and
152 not self.data(index, Qt.ItemDataRole.CheckStateRole)
153 ):
144 self.__value |= (1 << self.__bits - index.column() - 1) 154 self.__value |= (1 << self.__bits - index.column() - 1)
145 else: 155 else:
146 self.__value &= ~(1 << self.__bits - index.column() - 1) 156 self.__value &= ~(1 << self.__bits - index.column() - 1)
147 self.dataChanged.emit(index, index) 157 self.dataChanged.emit(index, index)
148 return True 158 return True
197 self.__bytes = 1 207 self.__bytes = 1
198 208
199 self.__model = BinaryModel(self) 209 self.__model = BinaryModel(self)
200 self.binTable.setModel(self.__model) 210 self.binTable.setModel(self.__model)
201 self.binTable.horizontalHeader().setSectionResizeMode( 211 self.binTable.horizontalHeader().setSectionResizeMode(
202 QHeaderView.ResizeToContents) 212 QHeaderView.ResizeMode.ResizeToContents)
203 self.__model.setBitsAndValue(self.__bytes * 8, self.__input) 213 self.__model.setBitsAndValue(self.__bytes * 8, self.__input)
204 self.__model.dataChanged.connect(self.__binModelDataChanged) 214 self.__model.dataChanged.connect(self.__binModelDataChanged)
205 215
206 def __formatNumbers(self, numberFormat): 216 def __formatNumbers(self, numberFormat):
207 """ 217 """

eric ide

mercurial