From be6516347d4099ce3eabece7e5da1eb0f6569d2b Mon Sep 17 00:00:00 2001 From: Johannes Pohl Date: Mon, 27 Feb 2017 16:16:44 +0100 Subject: [PATCH] disable bandwidth adjusting for rtlsdr --- src/urh/controller/ReceiveDialogController.py | 2 ++ src/urh/controller/SendRecvDialogController.py | 4 ++++ src/urh/controller/SpectrumDialogController.py | 2 ++ src/urh/dev/VirtualDevice.py | 11 +++++++++++ 4 files changed, 19 insertions(+) diff --git a/src/urh/controller/ReceiveDialogController.py b/src/urh/controller/ReceiveDialogController.py index 052e6b14..8e1a4c82 100644 --- a/src/urh/controller/ReceiveDialogController.py +++ b/src/urh/controller/ReceiveDialogController.py @@ -32,6 +32,8 @@ class ReceiveDialogController(SendRecvDialogController): self.scene_manager = None # type: LiveSceneManager self.init_device() + self.ui.spinBoxBandwidth.setEnabled(self.device.bandwidth_is_adjustable) + self.ui.btnLockBWSR.setEnabled(self.device.bandwidth_is_adjustable) self.graphics_view.setScene(self.scene_manager.scene) self.graphics_view.scene_manager = self.scene_manager diff --git a/src/urh/controller/SendRecvDialogController.py b/src/urh/controller/SendRecvDialogController.py index 1c55a714..4f7c1ba7 100644 --- a/src/urh/controller/SendRecvDialogController.py +++ b/src/urh/controller/SendRecvDialogController.py @@ -195,6 +195,10 @@ class SendRecvDialogController(QDialog): self.ui.lineEditIP.setVisible(dev_name == "USRP") self.ui.labelIP.setVisible(dev_name == "USRP") + if self.device is not None: + self.ui.spinBoxBandwidth.setEnabled(self.device.bandwidth_is_adjustable) + self.ui.btnLockBWSR.setEnabled(self.device.bandwidth_is_adjustable) + @pyqtSlot() def on_start_clicked(self): self.ui.spinBoxFreq.editingFinished.emit() diff --git a/src/urh/controller/SpectrumDialogController.py b/src/urh/controller/SpectrumDialogController.py index a61b7b46..00dd091a 100644 --- a/src/urh/controller/SpectrumDialogController.py +++ b/src/urh/controller/SpectrumDialogController.py @@ -33,6 +33,8 @@ class SpectrumDialogController(SendRecvDialogController): self.ui.cbDevice.removeItem(index) self.init_device() + self.ui.spinBoxBandwidth.setEnabled(self.device.bandwidth_is_adjustable) + self.ui.btnLockBWSR.setEnabled(self.device.bandwidth_is_adjustable) self.create_connects() diff --git a/src/urh/dev/VirtualDevice.py b/src/urh/dev/VirtualDevice.py index 7061b83d..97149e44 100644 --- a/src/urh/dev/VirtualDevice.py +++ b/src/urh/dev/VirtualDevice.py @@ -99,6 +99,17 @@ class VirtualDevice(QObject): def bandwidth(self, value): self.__dev.bandwidth = value + @property + def bandwidth_is_adjustable(self): + if self.backend == Backends.grc: + return True + elif self.backend == Backends.native: + return self.__dev.bandwidth_is_adjustable + elif self.backend == Backends.network: + return True + else: + raise ValueError("Unsupported Backend") + @property def frequency(self): if self.backend == Backends.grc: