diff --git a/NanoVNASaver/Analysis.py b/NanoVNASaver/Analysis.py index 507aa43..98c0cde 100644 --- a/NanoVNASaver/Analysis.py +++ b/NanoVNASaver/Analysis.py @@ -75,12 +75,15 @@ class LowPassAnalysis(Analysis): self.reset() pass_band_location = self.app.markers[0].location logger.debug("Pass band location: %d", pass_band_location) - if pass_band_location < 0: - logger.debug("No location for %s", self.app.markers[0].name) - return if len(self.app.data21) == 0: logger.debug("No data to analyse") + self.result_label.setText("No data to analyse.") + return + + if pass_band_location < 0: + logger.debug("No location for %s", self.app.markers[0].name) + self.result_label.setText("Please place " + self.app.markers[0].name + " in the passband.") return pass_band_db = NanoVNASaver.gain(self.app.data21[pass_band_location]) @@ -214,12 +217,15 @@ class HighPassAnalysis(Analysis): self.reset() pass_band_location = self.app.markers[0].location logger.debug("Pass band location: %d", pass_band_location) - if pass_band_location < 0: - logger.debug("No location for %s", self.app.markers[0].name) - return if len(self.app.data21) == 0: logger.debug("No data to analyse") + self.result_label.setText("No data to analyse.") + return + + if pass_band_location < 0: + logger.debug("No location for %s", self.app.markers[0].name) + self.result_label.setText("Please place " + self.app.markers[0].name + " in the passband.") return pass_band_db = NanoVNASaver.gain(self.app.data21[pass_band_location]) @@ -347,9 +353,9 @@ class BandPassAnalysis(Analysis): self.span_label = QtWidgets.QLabel() self.quality_label = QtWidgets.QLabel() - layout.addRow("Center frequency", self.center_frequency_label) - layout.addRow("Span", self.span_label) - layout.addRow("Quality factor", self.quality_label) + layout.addRow("Center frequency:", self.center_frequency_label) + layout.addRow("Span:", self.span_label) + layout.addRow("Quality factor:", self.quality_label) layout.addRow(QtWidgets.QLabel("")) @@ -388,12 +394,15 @@ class BandPassAnalysis(Analysis): self.reset() pass_band_location = self.app.markers[0].location logger.debug("Pass band location: %d", pass_band_location) - if pass_band_location < 0: - logger.debug("No location for %s", self.app.markers[0].name) - return if len(self.app.data21) == 0: logger.debug("No data to analyse") + self.result_label.setText("No data to analyse.") + return + + if pass_band_location < 0: + logger.debug("No location for %s", self.app.markers[0].name) + self.result_label.setText("Please place " + self.app.markers[0].name + " in the passband.") return pass_band_db = NanoVNASaver.gain(self.app.data21[pass_band_location]) diff --git a/NanoVNASaver/NanoVNASaver.py b/NanoVNASaver/NanoVNASaver.py index d2cfa7e..6c119fe 100644 --- a/NanoVNASaver/NanoVNASaver.py +++ b/NanoVNASaver/NanoVNASaver.py @@ -1848,9 +1848,9 @@ class AnalysisWindow(QtWidgets.QWidget): self.setWindowTitle("Sweep analysis") self.setWindowIcon(self.app.icon) - self.setMinimumSize(400, 600) + #self.setMinimumSize(400, 600) - self.setSizePolicy(QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.MinimumExpanding) + #self.setSizePolicy(QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.MinimumExpanding) shortcut = QtWidgets.QShortcut(QtCore.Qt.Key_Escape, self, self.hide) @@ -1875,20 +1875,23 @@ class AnalysisWindow(QtWidgets.QWidget): self.analysis_layout = QtWidgets.QVBoxLayout(analysis_box) - self.analysis = self.analysis_list.currentData() - self.analysis_layout.addWidget(self.analysis.widget()) - layout.addWidget(select_analysis_box) layout.addWidget(analysis_box) + self.updateSelection() + def runAnalysis(self): if self.analysis is not None: self.analysis.runAnalysis() def updateSelection(self): self.analysis = self.analysis_list.currentData() - old_widget = self.analysis_layout.itemAt(0).widget() - self.analysis_layout.replaceWidget(old_widget, self.analysis.widget()) - old_widget.hide() + old_item = self.analysis_layout.itemAt(0) + if old_item is not None: + old_widget = self.analysis_layout.itemAt(0).widget() + self.analysis_layout.replaceWidget(old_widget, self.analysis.widget()) + old_widget.hide() + else: + self.analysis_layout.addWidget(self.analysis.widget()) self.analysis.widget().show() self.update()