--- a/RadonMetrics/CyclomaticComplexityDialog.py Sun Sep 27 12:36:49 2015 +0200 +++ b/RadonMetrics/CyclomaticComplexityDialog.py Sun Sep 27 16:44:29 2015 +0200 @@ -234,7 +234,11 @@ "OTHERTOOLSPARMS", "RadonCodeMetrics") if self.__data is None or "ExcludeFiles" not in self.__data: self.__data = {"ExcludeFiles": ""} + if "MinimumRank" not in self.__data: + self.__data["MinimumRank"] = "D" self.excludeFilesEdit.setText(self.__data["ExcludeFiles"]) + self.__minimumRank = self.__data["MinimumRank"] + self.rankComboBox.setCurrentText(self.__minimumRank) def start(self, fn, minRank="D"): """ @@ -532,13 +536,13 @@ Private slot to start a cyclomatic complexity run. """ fileList = self.__fileList[:] + dataChanged = False filterString = self.excludeFilesEdit.text() if "ExcludeFiles" not in self.__data or \ filterString != self.__data["ExcludeFiles"]: self.__data["ExcludeFiles"] = filterString - self.__project.setData( - "OTHERTOOLSPARMS", "RadonCodeMetrics", self.__data) + dataChanged = True filterList = [f.strip() for f in filterString.split(",") if f.strip()] if filterList: @@ -546,7 +550,17 @@ fileList = \ [f for f in fileList if not fnmatch.fnmatch(f, filter)] - self.start(fileList, minRank=self.rankComboBox.currentText()) + minimumRank = self.rankComboBox.currentText() + if "MinimumRank" not in self.__data or \ + minimumRank != self.__data["MinimumRank"]: + self.__data["MinimumRank"] = minimumRank + dataChanged = True + + if dataChanged: + self.__project.setData( + "OTHERTOOLSPARMS", "RadonCodeMetrics", self.__data) + + self.start(fileList, minRank=minimumRank) def __showContextMenu(self, coord): """