--- a/src/eric7/UI/Browser.py Tue Mar 26 10:55:04 2024 +0100 +++ b/src/eric7/UI/Browser.py Wed Apr 10 17:03:56 2024 +0200 @@ -65,13 +65,15 @@ is displayed by a right click the user can select various actions on the selected file. - @signal sourceFile(filename) emitted to open a Python file at a line (str) + @signal sourceFile(filename) emitted to open a Python file at the first line (str) @signal sourceFile(filename, lineno) emitted to open a Python file at a line (str, int) @signal sourceFile(filename, lineno, type) emitted to open a Python file at a line giving an explicit file type (str, int, str) @signal sourceFile(filename, linenos) emitted to open a Python file giving a list of lines(str, list) + @signal sourceFile(filename, lineno, col_offset) emitted to open a Python file at a + line and column (str, int, int) @signal designerFile(filename) emitted to open a Qt-Designer file (str) @signal linguistFile(filename) emitted to open a Qt-Linguist (*.ts) file (str) @@ -93,7 +95,9 @@ @signal pdfFile(filename) emitted to open a PDF file (str) """ - sourceFile = pyqtSignal((str,), (str, int), (str, list), (str, int, str)) + sourceFile = pyqtSignal( + (str,), (str, int), (str, int, int), (str, list), (str, int, str) + ) designerFile = pyqtSignal(str) linguistFile = pyqtSignal(str) trpreview = pyqtSignal((list,), (list, bool)) @@ -603,16 +607,16 @@ else: QDesktopServices.openUrl(QUrl(itm.fileName())) elif isinstance(itm, BrowserClassItem): - self.sourceFile[str, int].emit( - itm.fileName(), itm.classObject().lineno + self.sourceFile[str, int, int].emit( + itm.fileName(), itm.lineno(), itm.colOffset() ) elif isinstance(itm, BrowserMethodItem): - self.sourceFile[str, int].emit( - itm.fileName(), itm.functionObject().lineno + self.sourceFile[str, int, int].emit( + itm.fileName(), itm.lineno(), itm.colOffset() ) elif isinstance(itm, BrowserClassAttributeItem): - self.sourceFile[str, int].emit( - itm.fileName(), itm.attributeObject().lineno + self.sourceFile[str, int, int].emit( + itm.fileName(), itm.lineno(), itm.colOffset() ) elif isinstance(itm, BrowserImportItem): self.sourceFile[str, list].emit(itm.fileName(), itm.linenos())