diff -r bd8e621c3c20 -r a5b42af40217 src/eric7/Debugger/BreakPointModel.py --- a/src/eric7/Debugger/BreakPointModel.py Thu Sep 15 11:51:21 2022 +0200 +++ b/src/eric7/Debugger/BreakPointModel.py Thu Sep 15 13:19:51 2022 +0200 @@ -9,10 +9,15 @@ import copy -from PyQt6.QtCore import pyqtSignal, Qt, QAbstractItemModel, QModelIndex +from PyQt6.QtCore import ( + QAbstractItemModel, + QCoreApplication, + QModelIndex, + Qt, + pyqtSignal, +) -# TODO: change column numbers to class attributes class BreakPointModel(QAbstractItemModel): """ Class implementing a custom model for breakpoints. @@ -23,6 +28,32 @@ dataAboutToBeChanged = pyqtSignal(QModelIndex, QModelIndex) + FilenameColumn = 0 + LineNumberColumn = 1 + ConditionColumn = 2 + TemporaryColumn = 3 + EnabledColumn = 4 + IgnoreCountColumn = 5 + + Header = ( + QCoreApplication.translate("BreakPointModel", "Filename"), + QCoreApplication.translate("BreakPointModel", "Line"), + QCoreApplication.translate("BreakPointModel", "Condition"), + QCoreApplication.translate("BreakPointModel", "Temporary"), + QCoreApplication.translate("BreakPointModel", "Enabled"), + QCoreApplication.translate("BreakPointModel", "Ignore Count"), + ) + + Alignments = ( + Qt.AlignmentFlag.AlignLeft, + Qt.AlignmentFlag.AlignRight, + Qt.AlignmentFlag.AlignLeft, + Qt.AlignmentFlag.AlignHCenter, + Qt.AlignmentFlag.AlignHCenter, + Qt.AlignmentFlag.AlignRight, + Qt.AlignmentFlag.AlignHCenter, + ) + def __init__(self, project, parent=None): """ Constructor @@ -37,23 +68,6 @@ self.__project = project self.breakpoints = [] - self.header = [ - self.tr("Filename"), - self.tr("Line"), - self.tr("Condition"), - self.tr("Temporary"), - self.tr("Enabled"), - self.tr("Ignore Count"), - ] - self.alignments = [ - Qt.AlignmentFlag.AlignLeft, - Qt.AlignmentFlag.AlignRight, - Qt.AlignmentFlag.AlignLeft, - Qt.AlignmentFlag.AlignHCenter, - Qt.AlignmentFlag.AlignHCenter, - Qt.AlignmentFlag.AlignRight, - Qt.AlignmentFlag.AlignHCenter, - ] def columnCount(self, parent=None): """ @@ -64,7 +78,7 @@ @return column count @rtype int """ - return len(self.header) + return len(BreakPointModel.Header) def rowCount(self, parent=None): """ @@ -96,28 +110,38 @@ return None if role == Qt.ItemDataRole.DisplayRole: - if index.column() == 0: + if index.column() == BreakPointModel.FilenameColumn: filename = self.breakpoints[index.row()][0] if self.__project.isOpen(): return self.__project.getRelativePath(filename) else: return filename - elif index.column() in (1, 2, 5): + elif index.column() in ( + BreakPointModel.LineNumberColumn, + BreakPointModel.ConditionColumn, + BreakPointModel.IgnoreCountColumn, + ): return self.breakpoints[index.row()][index.column()] - if role == Qt.ItemDataRole.CheckStateRole and index.column() in (3, 4): + if role == Qt.ItemDataRole.CheckStateRole and index.column() in ( + BreakPointModel.TemporaryColumn, + BreakPointModel.EnabledColumn, + ): if self.breakpoints[index.row()][index.column()]: return Qt.CheckState.Checked else: return Qt.CheckState.Unchecked - if role == Qt.ItemDataRole.ToolTipRole and index.column() in (0, 2): + if role == Qt.ItemDataRole.ToolTipRole and index.column() in ( + BreakPointModel.FilenameColumn, + BreakPointModel.ConditionColumn, + ): return self.breakpoints[index.row()][index.column()] if role == Qt.ItemDataRole.TextAlignmentRole and index.column() < len( - self.alignments + BreakPointModel.Alignments ): - return self.alignments[index.column()].value + return BreakPointModel.Alignments[index.column()].value return None @@ -136,7 +160,7 @@ """ if ( not index.isValid() - or index.column() >= len(self.header) + or index.column() >= len(BreakPointModel.Header) or index.row() >= len(self.breakpoints) ): return False @@ -177,10 +201,10 @@ orientation == Qt.Orientation.Horizontal and role == Qt.ItemDataRole.DisplayRole ): - if section >= len(self.header): + if section >= len(BreakPointModel.Header): return "" else: - return self.header[section] + return BreakPointModel.Header[section] return None @@ -202,7 +226,7 @@ or row < 0 or row >= len(self.breakpoints) or column < 0 - or column >= len(self.header) + or column >= len(BreakPointModel.Header) ): return QModelIndex()