diff -r 4cc6c171ecf6 -r da9e08920e7c ViewManager/ViewManager.py --- a/ViewManager/ViewManager.py Tue Feb 06 19:18:24 2018 +0100 +++ b/ViewManager/ViewManager.py Tue Feb 06 19:18:43 2018 +0100 @@ -4642,22 +4642,28 @@ """ editor.modificationStatusChanged.connect( self._modificationStatusChanged) - editor.cursorChanged.connect(self.__cursorChanged) - editor.editorSaved.connect(self.__editorSaved) - editor.editorRenamed.connect(self.__editorRenamed) + editor.cursorChanged.connect( + lambda f, l, p: self.__cursorChanged(f, l, p, editor)) + editor.editorSaved.connect( + lambda fn: self.__editorSaved(fn, editor)) + editor.editorRenamed.connect( + lambda fn: self.__editorRenamed(fn, editor)) editor.breakpointToggled.connect(self.__breakpointToggled) editor.bookmarkToggled.connect(self.__bookmarkToggled) editor.syntaxerrorToggled.connect(self._syntaxErrorToggled) editor.coverageMarkersShown.connect(self.__coverageMarkersShown) editor.autoCompletionAPIsAvailable.connect( - self.__editorAutoCompletionAPIsAvailable) + lambda a: self.__editorAutoCompletionAPIsAvailable(a, editor)) editor.undoAvailable.connect(self.undoAct.setEnabled) editor.redoAvailable.connect(self.redoAct.setEnabled) editor.taskMarkersUpdated.connect(self.__taskMarkersUpdated) editor.changeMarkersUpdated.connect(self.__changeMarkersUpdated) - editor.languageChanged.connect(self.__editorConfigChanged) - editor.eolChanged.connect(self.__editorConfigChanged) - editor.encodingChanged.connect(self.__editorConfigChanged) + editor.languageChanged.connect( + lambda: self.__editorConfigChanged(editor)) + editor.eolChanged.connect( + lambda: self.__editorConfigChanged(editor)) + editor.encodingChanged.connect( + lambda: self.__editorConfigChanged(editor)) editor.selectionChanged.connect( lambda: self.__searchWidget.selectionChanged(editor)) editor.selectionChanged.connect( @@ -4666,7 +4672,8 @@ lambda: self.__editorSelectionChanged(editor)) editor.lastEditPositionAvailable.connect( self.__lastEditPositionAvailable) - editor.zoomValueChanged.connect(self.zoomValueChanged) + editor.zoomValueChanged.connect( + lambda v: self.zoomValueChanged(v, editor)) editor.languageChanged.connect( lambda: self.editorLanguageChanged.emit(editor)) @@ -5527,14 +5534,16 @@ """ self.activeWindow().autoCompleteFromAll() - def __editorAutoCompletionAPIsAvailable(self, available): + def __editorAutoCompletionAPIsAvailable(self, available, editor): """ Private method to handle the availability of API autocompletion signal. @param available flag indicating the availability of API - autocompletion (boolean) - """ - editor = self.sender() + autocompletion + @type bool + @param editor reference to the editor + @type Editor + """ self.autoCompleteAct.setEnabled( editor.canProvideDynamicAutoCompletion()) self.autoCompleteFromAPIsAct.setEnabled(available) @@ -5985,17 +5994,20 @@ aw.zoomTo(value) self.sbZoom.setValue(aw.getZoom()) - def zoomValueChanged(self, value): + def zoomValueChanged(self, value, zoomingWidget): """ Public slot to handle changes of the zoom value. - @param value new zoom value (integer) + @param value new zoom value + @type int + @param zoomingWidget reference to the widget triggering the slot + @type Editor or Shell """ if QApplication.focusWidget() == e5App().getObject("Shell"): aw = e5App().getObject("Shell") else: aw = self.activeWindow() - if aw and aw == self.sender(): + if aw and aw == zoomingWidget: self.sbZoom.setValue(value) def __clearAllFolds(self): @@ -6770,54 +6782,52 @@ self.__enableSpellingActions() - def __editorSaved(self, fn): + def __editorSaved(self, fn, editor): """ Private slot to handle the editorSaved signal. - It simply reemits the signal. - - @param fn filename of the saved editor (string) + It simply re-emits the signal. + + @param fn filename of the saved editor + @type str + @param editor reference to the editor + @type Editor """ self.editorSaved.emit(fn) - editor = self.sender() - if editor: - self.editorSavedEd.emit(editor) - - def __editorRenamed(self, fn): + self.editorSavedEd.emit(editor) + + def __editorRenamed(self, fn, editor): """ Private slot to handle the editorRenamed signal. - It simply reemits the signal. - - @param fn filename of the renamed editor (string) + It simply re-emits the signal. + + @param fn filename of the renamed editor + @type str + @param editor reference to the editor + @type Editor """ self.editorRenamed.emit(fn) - editor = self.sender() - if editor: - self.editorRenamedEd.emit(editor) - - def __cursorChanged(self, fn, line, pos): + self.editorRenamedEd.emit(editor) + + def __cursorChanged(self, fn, line, pos, editor): """ Private slot to handle the cursorChanged signal. It emits the signal cursorChanged with parameter editor. - @param fn filename (string) - @param line line number of the cursor (int) - @param pos position in line of the cursor (int) - """ - editor = self.getOpenEditor(fn) - if editor is None: - editor = self.sender() - - if editor is not None: - enc = editor.getEncoding() - lang = editor.getLanguage() - eol = editor.getEolIndicator() - else: - enc = None - lang = None - eol = None + @param fn filename + @type str + @param line line number of the cursor + @type int + @param pos position in line of the cursor + @type int + @param editor reference to the editor + @type Editor + """ + enc = editor.getEncoding() + lang = editor.getLanguage() + eol = editor.getEolIndicator() self.__setSbFile(fn, line, pos, enc, lang, eol) self.cursorChanged.emit(editor) @@ -6875,11 +6885,13 @@ if aw: aw.newLineBelow() - def __editorConfigChanged(self): + def __editorConfigChanged(self, editor): """ Private slot to handle changes of an editor's configuration. - """ - editor = self.sender() + + @param editor reference to the editor + @type Editor + """ fn = editor.getFileName() line, pos = editor.getCursorPosition() enc = editor.getEncoding()