From 457a3816731e7f393844d7452949bc4fb66c93e9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Daniel=20Mei=C3=9Fner?= <daniel.meissner@inf.h-brs.de>
Date: Tue, 26 Jan 2016 21:03:19 +0100
Subject: [PATCH] gui: added logic to disable 1mhz sample rate in 868mhz mode

---
 lib/gui/gui.py | 18 +++++++++++++++++-
 1 file changed, 17 insertions(+), 1 deletion(-)

diff --git a/lib/gui/gui.py b/lib/gui/gui.py
index ab8f465..62fa4da 100644
--- a/lib/gui/gui.py
+++ b/lib/gui/gui.py
@@ -39,6 +39,8 @@ class SuGui(QtWidgets.QMainWindow):
         self.button_close.clicked.connect(self.close_button)
         self.button_hw_refresh.clicked.connect(self.refresh_hw_button)
         self.comboBox_env.currentIndexChanged.connect(self.configure_env)
+        self.rb_868.toggled.connect(self._check_samp_rate)
+        self.rb_1mhz.toggled.connect(self._check_samp_rate)
         # menubar
         self.actionQuit.triggered.connect(self.close_button)
         self.actionAbout.triggered.connect(self.about_button)
@@ -69,6 +71,7 @@ class SuGui(QtWidgets.QMainWindow):
         for button in self.radio_buttons_samp_rate_and_time.keys():
             button.released.connect(self._update_status_label)
 
+        self._check_samp_rate()
         # labels
         self._update_status_label()
         self.label_file_overwrite.setText("change path")
@@ -121,6 +124,9 @@ class SuGui(QtWidgets.QMainWindow):
         self.update_progress_bar(0)
         # enable buttons again
         self._set_setEnabled(True)
+        # disbale freq buttons if env is selected
+        if self.comboBox_env.currentIndex() != 0:
+            self._set_setEnabled(False, freq_button_only = True)
         # disable stop button again
         self.button_stop.setEnabled(False)
         self.button_start.setEnabled(True)
@@ -190,6 +196,16 @@ class SuGui(QtWidgets.QMainWindow):
         else:
             self._set_setEnabled(True)
 
+    def _check_samp_rate(self):
+        if self.rb_868.isChecked():
+            self.rb_1mhz.setEnabled(False)
+
+            if self.rb_1mhz.isChecked():
+                self.rb_1mhz.setChecked(False)
+                self.rb_2mhz.setChecked(True)
+        else:
+            self.rb_1mhz.setEnabled(True)
+
     def _configure_enocean(self):
         self.rb_868.setChecked(True)
         self.rb_433.setChecked(False)
@@ -332,7 +348,7 @@ class SuGui(QtWidgets.QMainWindow):
         """
         Extract selected options from gui.
 
-        Buttons 
+        Buttons
         """
         freq_button = self._get_checked_freq_button()
         time_and_samp_rate_buttons = self._get_checked_time_and_samp_rate_radio_buttons()
-- 
GitLab