Auto limitation of lower limit of upper frequency filter

This commit is contained in:
alessandro90
2018-10-25 19:45:56 +02:00
parent 59f7e56663
commit 97cead84be
3 changed files with 371 additions and 318 deletions

View File

@@ -4,22 +4,39 @@ from PyQt5.QtCore import pyqtSlot
class DoubleTextButton(QPushButton):
def __init__(self, parent = None):
super().__init__(parent)
self.clicked.connect(self.manage_click)
self.clicked.connect(self.__manage_click)
def set_texts(self, text_a, text_b):
self.text_a = text_a
self.text_b = text_b
self.__text_a = text_a
self.__text_b = text_b
def set_slave_filters(self, *filters):
self.filters = filters
def set_slave_filters(self, simple_ones,
radio_1 = None,
ruled_by_radio_1 = None,
radio_2 = None,
ruled_by_radio_2 = None):
self.__simple_ones = simple_ones
self.__ruled_by_radio_1 = ruled_by_radio_1
self.__radio_1 = radio_1
self.__ruled_by_radio_2 = ruled_by_radio_2
self.__radio_2 = radio_2
@pyqtSlot()
def manage_click(self):
def __manage_click(self):
if self.isChecked():
self.setText(self.text_b)
self.setText(self.__text_b)
enable = False
else:
self.setText(self.text_a)
self.setText(self.__text_a)
enable = True
for f in self.filters:
for f in self.__simple_ones:
f.setEnabled(enable)
radio_btns = self.__radio_1, self.__radio_2
ruled_widgets = self.__ruled_by_radio_1, self.__ruled_by_radio_2
for radio_btn, ruled_by in zip(radio_btns, ruled_widgets):
if ruled_by:
for f in ruled_by:
if radio_btn.isChecked():
f.setEnabled(enable)
else:
f.setEnabled(False)