Esempio n. 1
0
class Ui_Decoder(object):
    def setupUi(self, Decoder):
        Decoder.setObjectName("Decoder")
        Decoder.setWindowModality(QtCore.Qt.WindowModal)
        Decoder.resize(1018, 590)
        Decoder.setModal(True)
        self.verticalLayout_4 = QtWidgets.QVBoxLayout(Decoder)
        self.verticalLayout_4.setObjectName("verticalLayout_4")
        self.horizontalLayout_2 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_2.setObjectName("horizontalLayout_2")
        self.combobox_decodings = QtWidgets.QComboBox(Decoder)
        self.combobox_decodings.setObjectName("combobox_decodings")
        self.combobox_decodings.addItem("")
        self.combobox_decodings.addItem("")
        self.horizontalLayout_2.addWidget(self.combobox_decodings)
        self.delete_decoding = QtWidgets.QPushButton(Decoder)
        self.delete_decoding.setObjectName("delete_decoding")
        self.horizontalLayout_2.addWidget(self.delete_decoding)
        self.saveas = QtWidgets.QPushButton(Decoder)
        self.saveas.setObjectName("saveas")
        self.horizontalLayout_2.addWidget(self.saveas)
        spacerItem = QtWidgets.QSpacerItem(40, 20,
                                           QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Minimum)
        self.horizontalLayout_2.addItem(spacerItem)
        self.verticalLayout_4.addLayout(self.horizontalLayout_2)
        self.horizontalLayout = QtWidgets.QHBoxLayout()
        self.horizontalLayout.setObjectName("horizontalLayout")
        self.verticalLayout_2 = QtWidgets.QVBoxLayout()
        self.verticalLayout_2.setObjectName("verticalLayout_2")
        self.label_8 = QtWidgets.QLabel(Decoder)
        self.label_8.setObjectName("label_8")
        self.verticalLayout_2.addWidget(self.label_8)
        self.basefunctions = QtWidgets.QListWidget(Decoder)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum,
                                           QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.basefunctions.sizePolicy().hasHeightForWidth())
        self.basefunctions.setSizePolicy(sizePolicy)
        self.basefunctions.setDragEnabled(True)
        self.basefunctions.setDragDropMode(
            QtWidgets.QAbstractItemView.DragOnly)
        self.basefunctions.setObjectName("basefunctions")
        self.verticalLayout_2.addWidget(self.basefunctions)
        self.label_9 = QtWidgets.QLabel(Decoder)
        self.label_9.setObjectName("label_9")
        self.verticalLayout_2.addWidget(self.label_9)
        self.additionalfunctions = QtWidgets.QListWidget(Decoder)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum,
                                           QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.additionalfunctions.sizePolicy().hasHeightForWidth())
        self.additionalfunctions.setSizePolicy(sizePolicy)
        self.additionalfunctions.setDragEnabled(True)
        self.additionalfunctions.setDragDropMode(
            QtWidgets.QAbstractItemView.DragOnly)
        self.additionalfunctions.setObjectName("additionalfunctions")
        self.verticalLayout_2.addWidget(self.additionalfunctions)
        self.horizontalLayout.addLayout(self.verticalLayout_2)
        spacerItem1 = QtWidgets.QSpacerItem(40, 20,
                                            QtWidgets.QSizePolicy.Maximum,
                                            QtWidgets.QSizePolicy.Minimum)
        self.horizontalLayout.addItem(spacerItem1)
        self.verticalLayout = QtWidgets.QVBoxLayout()
        self.verticalLayout.setObjectName("verticalLayout")
        self.label = QtWidgets.QLabel(Decoder)
        font = QtGui.QFont()
        font.setPointSize(11)
        font.setBold(True)
        font.setWeight(75)
        self.label.setFont(font)
        self.label.setAlignment(QtCore.Qt.AlignCenter)
        self.label.setObjectName("label")
        self.verticalLayout.addWidget(self.label)
        self.decoderchain = ListWidget(Decoder)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum,
                                           QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.decoderchain.sizePolicy().hasHeightForWidth())
        self.decoderchain.setSizePolicy(sizePolicy)
        self.decoderchain.setAcceptDrops(True)
        self.decoderchain.setDragEnabled(True)
        self.decoderchain.setDragDropMode(QtWidgets.QAbstractItemView.DragDrop)
        self.decoderchain.setDefaultDropAction(QtCore.Qt.MoveAction)
        self.decoderchain.setTextElideMode(QtCore.Qt.ElideMiddle)
        self.decoderchain.setResizeMode(QtWidgets.QListView.Fixed)
        self.decoderchain.setViewMode(QtWidgets.QListView.ListMode)
        self.decoderchain.setObjectName("decoderchain")
        self.verticalLayout.addWidget(self.decoderchain)
        self.horizontalLayout.addLayout(self.verticalLayout)
        spacerItem2 = QtWidgets.QSpacerItem(40, 20,
                                            QtWidgets.QSizePolicy.Maximum,
                                            QtWidgets.QSizePolicy.Minimum)
        self.horizontalLayout.addItem(spacerItem2)
        self.verticalLayout_3 = QtWidgets.QVBoxLayout()
        self.verticalLayout_3.setObjectName("verticalLayout_3")
        self.gb_infoandoptions = QtWidgets.QGroupBox(Decoder)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.gb_infoandoptions.sizePolicy().hasHeightForWidth())
        self.gb_infoandoptions.setSizePolicy(sizePolicy)
        self.gb_infoandoptions.setObjectName("gb_infoandoptions")
        self.verticalLayout_5 = QtWidgets.QVBoxLayout(self.gb_infoandoptions)
        self.verticalLayout_5.setObjectName("verticalLayout_5")
        self.info = QtWidgets.QLabel(self.gb_infoandoptions)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.info.sizePolicy().hasHeightForWidth())
        self.info.setSizePolicy(sizePolicy)
        font = QtGui.QFont()
        font.setItalic(True)
        self.info.setFont(font)
        self.info.setTextFormat(QtCore.Qt.PlainText)
        self.info.setAlignment(QtCore.Qt.AlignLeading | QtCore.Qt.AlignLeft
                               | QtCore.Qt.AlignTop)
        self.info.setWordWrap(True)
        self.info.setObjectName("info")
        self.verticalLayout_5.addWidget(self.info)
        self.optionWidget = QtWidgets.QStackedWidget(self.gb_infoandoptions)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.optionWidget.sizePolicy().hasHeightForWidth())
        self.optionWidget.setSizePolicy(sizePolicy)
        self.optionWidget.setObjectName("optionWidget")
        self.page_empty = QtWidgets.QWidget()
        self.page_empty.setObjectName("page_empty")
        self.optionWidget.addWidget(self.page_empty)
        self.page_redundancy = QtWidgets.QWidget()
        self.page_redundancy.setObjectName("page_redundancy")
        self.multiple = QtWidgets.QSpinBox(self.page_redundancy)
        self.multiple.setGeometry(QtCore.QRect(0, 0, 56, 23))
        self.multiple.setMinimum(2)
        self.multiple.setObjectName("multiple")
        self.label_5 = QtWidgets.QLabel(self.page_redundancy)
        self.label_5.setGeometry(QtCore.QRect(60, 0, 171, 21))
        self.label_5.setObjectName("label_5")
        self.optionWidget.addWidget(self.page_redundancy)
        self.page_carrier = QtWidgets.QWidget()
        self.page_carrier.setObjectName("page_carrier")
        self.carrier = QtWidgets.QLineEdit(self.page_carrier)
        self.carrier.setGeometry(QtCore.QRect(0, 0, 113, 23))
        self.carrier.setObjectName("carrier")
        self.label_6 = QtWidgets.QLabel(self.page_carrier)
        self.label_6.setGeometry(QtCore.QRect(120, 0, 171, 21))
        self.label_6.setObjectName("label_6")
        self.optionWidget.addWidget(self.page_carrier)
        self.page_substitution = QtWidgets.QWidget()
        self.page_substitution.setObjectName("page_substitution")
        self.gridLayout = QtWidgets.QGridLayout(self.page_substitution)
        self.gridLayout.setObjectName("gridLayout")
        self.substitution_rows = QtWidgets.QSpinBox(self.page_substitution)
        self.substitution_rows.setMinimum(1)
        self.substitution_rows.setMaximum(1000)
        self.substitution_rows.setProperty("value", 4)
        self.substitution_rows.setObjectName("substitution_rows")
        self.gridLayout.addWidget(self.substitution_rows, 0, 0, 1, 1)
        self.label_10 = QtWidgets.QLabel(self.page_substitution)
        self.label_10.setObjectName("label_10")
        self.gridLayout.addWidget(self.label_10, 0, 1, 1, 1)
        self.substitution = QtWidgets.QTableWidget(self.page_substitution)
        self.substitution.setVerticalScrollMode(
            QtWidgets.QAbstractItemView.ScrollPerPixel)
        self.substitution.setHorizontalScrollMode(
            QtWidgets.QAbstractItemView.ScrollPerPixel)
        self.substitution.setObjectName("substitution")
        self.substitution.setColumnCount(0)
        self.substitution.setRowCount(0)
        self.gridLayout.addWidget(self.substitution, 1, 0, 1, 2)
        self.optionWidget.addWidget(self.page_substitution)
        self.page_external = QtWidgets.QWidget()
        self.page_external.setObjectName("page_external")
        self.verticalLayout_6 = QtWidgets.QVBoxLayout(self.page_external)
        self.verticalLayout_6.setObjectName("verticalLayout_6")
        self.horizontalLayout_3 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_3.setObjectName("horizontalLayout_3")
        self.label_11 = QtWidgets.QLabel(self.page_external)
        self.label_11.setObjectName("label_11")
        self.horizontalLayout_3.addWidget(self.label_11)
        self.external_decoder = QtWidgets.QLineEdit(self.page_external)
        self.external_decoder.setObjectName("external_decoder")
        self.horizontalLayout_3.addWidget(self.external_decoder)
        self.btnChooseDecoder = QtWidgets.QToolButton(self.page_external)
        self.btnChooseDecoder.setObjectName("btnChooseDecoder")
        self.horizontalLayout_3.addWidget(self.btnChooseDecoder)
        self.verticalLayout_6.addLayout(self.horizontalLayout_3)
        self.horizontalLayout_4 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_4.setObjectName("horizontalLayout_4")
        self.label_12 = QtWidgets.QLabel(self.page_external)
        self.label_12.setObjectName("label_12")
        self.horizontalLayout_4.addWidget(self.label_12)
        self.external_encoder = QtWidgets.QLineEdit(self.page_external)
        self.external_encoder.setObjectName("external_encoder")
        self.horizontalLayout_4.addWidget(self.external_encoder)
        self.btnChooseEncoder = QtWidgets.QToolButton(self.page_external)
        self.btnChooseEncoder.setObjectName("btnChooseEncoder")
        self.horizontalLayout_4.addWidget(self.btnChooseEncoder)
        self.verticalLayout_6.addLayout(self.horizontalLayout_4)
        spacerItem3 = QtWidgets.QSpacerItem(20, 158,
                                            QtWidgets.QSizePolicy.Minimum,
                                            QtWidgets.QSizePolicy.Expanding)
        self.verticalLayout_6.addItem(spacerItem3)
        self.optionWidget.addWidget(self.page_external)
        self.page_data_whitening = QtWidgets.QWidget()
        self.page_data_whitening.setObjectName("page_data_whitening")
        self.datawhitening_sync = QtWidgets.QLineEdit(self.page_data_whitening)
        self.datawhitening_sync.setGeometry(QtCore.QRect(0, 0, 171, 23))
        self.datawhitening_sync.setObjectName("datawhitening_sync")
        self.label_13 = QtWidgets.QLabel(self.page_data_whitening)
        self.label_13.setGeometry(QtCore.QRect(180, 0, 231, 20))
        self.label_13.setObjectName("label_13")
        self.datawhitening_polynomial = QtWidgets.QLineEdit(
            self.page_data_whitening)
        self.datawhitening_polynomial.setGeometry(QtCore.QRect(0, 30, 171, 23))
        self.datawhitening_polynomial.setObjectName("datawhitening_polynomial")
        self.label_14 = QtWidgets.QLabel(self.page_data_whitening)
        self.label_14.setGeometry(QtCore.QRect(180, 30, 341, 21))
        self.label_14.setObjectName("label_14")
        self.datawhitening_overwrite_crc = QtWidgets.QCheckBox(
            self.page_data_whitening)
        self.datawhitening_overwrite_crc.setGeometry(
            QtCore.QRect(0, 60, 491, 20))
        self.datawhitening_overwrite_crc.setObjectName(
            "datawhitening_overwrite_crc")
        self.optionWidget.addWidget(self.page_data_whitening)
        self.page_cut = QtWidgets.QWidget()
        self.page_cut.setObjectName("page_cut")
        self.cutmark = QtWidgets.QLineEdit(self.page_cut)
        self.cutmark.setGeometry(QtCore.QRect(0, 30, 181, 31))
        self.cutmark.setObjectName("cutmark")
        self.label_15 = QtWidgets.QLabel(self.page_cut)
        self.label_15.setGeometry(QtCore.QRect(190, 30, 121, 31))
        self.label_15.setObjectName("label_15")
        self.rB_delbefore = QtWidgets.QRadioButton(self.page_cut)
        self.rB_delbefore.setGeometry(QtCore.QRect(0, 0, 131, 23))
        self.rB_delbefore.setObjectName("rB_delbefore")
        self.rB_delafter = QtWidgets.QRadioButton(self.page_cut)
        self.rB_delafter.setGeometry(QtCore.QRect(150, 0, 111, 23))
        self.rB_delafter.setObjectName("rB_delafter")
        self.rB_delbeforepos = QtWidgets.QRadioButton(self.page_cut)
        self.rB_delbeforepos.setGeometry(QtCore.QRect(0, 70, 111, 23))
        self.rB_delbeforepos.setObjectName("rB_delbeforepos")
        self.rB_delafterpos = QtWidgets.QRadioButton(self.page_cut)
        self.rB_delafterpos.setGeometry(QtCore.QRect(150, 70, 111, 23))
        self.rB_delafterpos.setObjectName("rB_delafterpos")
        self.cutmark2 = QtWidgets.QSpinBox(self.page_cut)
        self.cutmark2.setGeometry(QtCore.QRect(0, 100, 181, 33))
        self.cutmark2.setMaximum(1000)
        self.cutmark2.setObjectName("cutmark2")
        self.label_16 = QtWidgets.QLabel(self.page_cut)
        self.label_16.setGeometry(QtCore.QRect(190, 100, 121, 31))
        self.label_16.setObjectName("label_16")
        self.optionWidget.addWidget(self.page_cut)
        self.page_morse = QtWidgets.QWidget()
        self.page_morse.setObjectName("page_morse")
        self.label_17 = QtWidgets.QLabel(self.page_morse)
        self.label_17.setGeometry(QtCore.QRect(70, 10, 341, 21))
        self.label_17.setObjectName("label_17")
        self.morse_low = QtWidgets.QSpinBox(self.page_morse)
        self.morse_low.setGeometry(QtCore.QRect(10, 10, 56, 23))
        self.morse_low.setMinimum(1)
        self.morse_low.setProperty("value", 1)
        self.morse_low.setObjectName("morse_low")
        self.label_18 = QtWidgets.QLabel(self.page_morse)
        self.label_18.setGeometry(QtCore.QRect(70, 40, 351, 21))
        self.label_18.setObjectName("label_18")
        self.morse_high = QtWidgets.QSpinBox(self.page_morse)
        self.morse_high.setGeometry(QtCore.QRect(10, 40, 56, 23))
        self.morse_high.setMinimum(1)
        self.morse_high.setProperty("value", 3)
        self.morse_high.setObjectName("morse_high")
        self.label_19 = QtWidgets.QLabel(self.page_morse)
        self.label_19.setGeometry(QtCore.QRect(70, 70, 371, 21))
        self.label_19.setObjectName("label_19")
        self.morse_wait = QtWidgets.QSpinBox(self.page_morse)
        self.morse_wait.setGeometry(QtCore.QRect(10, 70, 56, 23))
        self.morse_wait.setMinimum(1)
        self.morse_wait.setProperty("value", 1)
        self.morse_wait.setObjectName("morse_wait")
        self.optionWidget.addWidget(self.page_morse)
        self.verticalLayout_5.addWidget(self.optionWidget)
        self.optionWidget.raise_()
        self.info.raise_()
        self.verticalLayout_3.addWidget(self.gb_infoandoptions)
        self.horizontalLayout.addLayout(self.verticalLayout_3)
        self.verticalLayout_4.addLayout(self.horizontalLayout)
        self.gridLayout_2 = QtWidgets.QGridLayout()
        self.gridLayout_2.setObjectName("gridLayout_2")
        self.label_3 = QtWidgets.QLabel(Decoder)
        self.label_3.setObjectName("label_3")
        self.gridLayout_2.addWidget(self.label_3, 4, 0, 1, 1)
        self.combobox_signals = QtWidgets.QComboBox(Decoder)
        self.combobox_signals.setObjectName("combobox_signals")
        self.combobox_signals.addItem("")
        self.gridLayout_2.addWidget(self.combobox_signals, 1, 0, 1, 1)
        self.output = QtWidgets.QLineEdit(Decoder)
        self.output.setReadOnly(True)
        self.output.setObjectName("output")
        self.gridLayout_2.addWidget(self.output, 5, 0, 1, 2)
        self.decoding_errors_label = QtWidgets.QLabel(Decoder)
        self.decoding_errors_label.setAlignment(QtCore.Qt.AlignRight
                                                | QtCore.Qt.AlignTrailing
                                                | QtCore.Qt.AlignVCenter)
        self.decoding_errors_label.setObjectName("decoding_errors_label")
        self.gridLayout_2.addWidget(self.decoding_errors_label, 4, 1, 1, 1)
        self.label_2 = QtWidgets.QLabel(Decoder)
        self.label_2.setObjectName("label_2")
        self.gridLayout_2.addWidget(self.label_2, 0, 0, 1, 1)
        self.inpt = QtWidgets.QLineEdit(Decoder)
        self.inpt.setInputMethodHints(QtCore.Qt.ImhDigitsOnly)
        self.inpt.setObjectName("inpt")
        self.gridLayout_2.addWidget(self.inpt, 1, 1, 1, 1)
        spacerItem4 = QtWidgets.QSpacerItem(40, 20,
                                            QtWidgets.QSizePolicy.Expanding,
                                            QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_2.addItem(spacerItem4, 0, 1, 1, 1)
        self.graphicsView_signal = ZoomableGraphicView(Decoder)
        self.graphicsView_signal.setObjectName("graphicsView_signal")
        self.gridLayout_2.addWidget(self.graphicsView_signal, 2, 0, 1, 2)
        self.graphicsView_decoded = ZoomableGraphicView(Decoder)
        self.graphicsView_decoded.setObjectName("graphicsView_decoded")
        self.gridLayout_2.addWidget(self.graphicsView_decoded, 3, 0, 1, 2)
        self.verticalLayout_4.addLayout(self.gridLayout_2)

        self.retranslateUi(Decoder)
        self.optionWidget.setCurrentIndex(5)

    def retranslateUi(self, Decoder):
        _translate = QtCore.QCoreApplication.translate
        Decoder.setWindowTitle(_translate("Decoder", "Decoding"))
        self.combobox_decodings.setItemText(
            0, _translate("Decoder", "Non Return to Zero (NRZ)"))
        self.combobox_decodings.setItemText(1, _translate("Decoder", "Empty"))
        self.delete_decoding.setText(_translate("Decoder", "Delete"))
        self.saveas.setText(_translate("Decoder", "Save as..."))
        self.label_8.setText(_translate("Decoder", "Base Functions"))
        self.label_9.setText(_translate("Decoder", "Additional Functions"))
        self.label.setText(_translate("Decoder", "Decoder"))
        self.gb_infoandoptions.setTitle(
            _translate("Decoder", "Information and Options"))
        self.info.setText(
            _translate(
                "Decoder",
                "Please drag functions from the categories base and additional to the decoding process (Decoder). You can reorder functions by drag and drop and remove functions by dropping them outside the Decoder box. Click on every function for detailed information."
            ))
        self.label_5.setText(_translate("Decoder", "Number of redundant bits"))
        self.label_6.setText(
            _translate("Decoder", "Carrier (\'1_\' -> 1_1_1_...)"))
        self.label_10.setText(_translate("Decoder", "Rows"))
        self.label_11.setText(_translate("Decoder", "Decoder"))
        self.btnChooseDecoder.setText(_translate("Decoder", "..."))
        self.label_12.setText(_translate("Decoder", "Encoder"))
        self.btnChooseEncoder.setText(_translate("Decoder", "..."))
        self.label_13.setText(
            _translate("Decoder", "Synchronization bytes (hex coded)"))
        self.label_14.setText(
            _translate("Decoder",
                       "Data whitening polynomial (LFSR, hex, w/o first bit)"))
        self.datawhitening_overwrite_crc.setText(
            _translate(
                "Decoder",
                "Overwrite CRC16 field with correct value when encoding"))
        self.cutmark.setText(_translate("Decoder", "1010"))
        self.label_15.setText(_translate("Decoder", "Sequence"))
        self.rB_delbefore.setText(_translate("Decoder", "&Cut before"))
        self.rB_delafter.setText(_translate("Decoder", "Cut afte&r"))
        self.rB_delbeforepos.setText(_translate("Decoder", "Cut before"))
        self.rB_delafterpos.setText(_translate("Decoder", "Cut after"))
        self.label_16.setText(_translate("Decoder", "Position (in bit)"))
        self.label_17.setText(
            _translate("Decoder",
                       "Maximum (<=) length of 1-sequence for: Low (0)"))
        self.label_18.setText(
            _translate("Decoder",
                       "Minimum (>=) length of 1-sequence for: High (1)"))
        self.label_19.setText(
            _translate("Decoder",
                       "Number of 0s between 1-sequences (just for encoding)"))
        self.label_3.setText(_translate("Decoder", "Decoded Bits:"))
        self.combobox_signals.setItemText(0, _translate("Decoder", "Test"))
        self.decoding_errors_label.setText(
            _translate("Decoder", "[Decoding Errors = 0]"))
        self.label_2.setText(_translate("Decoder", "Signal {0,1}:"))
Esempio n. 2
0
class Ui_DialogModulation(object):
    def setupUi(self, DialogModulation):
        DialogModulation.setObjectName("DialogModulation")
        DialogModulation.resize(977, 1041)
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(":/icons/icons/modulation.svg"),
                       QtGui.QIcon.Normal, QtGui.QIcon.Off)
        DialogModulation.setWindowIcon(icon)
        self.verticalLayout = QtWidgets.QVBoxLayout(DialogModulation)
        self.verticalLayout.setObjectName("verticalLayout")
        self.gridLayout_5 = QtWidgets.QGridLayout()
        self.gridLayout_5.setObjectName("gridLayout_5")
        self.comboBoxCustomModulations = QtWidgets.QComboBox(DialogModulation)
        self.comboBoxCustomModulations.setEditable(True)
        self.comboBoxCustomModulations.setInsertPolicy(
            QtWidgets.QComboBox.InsertAtCurrent)
        self.comboBoxCustomModulations.setSizeAdjustPolicy(
            QtWidgets.QComboBox.AdjustToContents)
        self.comboBoxCustomModulations.setObjectName(
            "comboBoxCustomModulations")
        self.comboBoxCustomModulations.addItem("")
        self.gridLayout_5.addWidget(self.comboBoxCustomModulations, 0, 0, 1, 1)
        self.btnAddModulation = QtWidgets.QToolButton(DialogModulation)
        icon = QtGui.QIcon.fromTheme("list-add")
        self.btnAddModulation.setIcon(icon)
        self.btnAddModulation.setObjectName("btnAddModulation")
        self.gridLayout_5.addWidget(self.btnAddModulation, 0, 1, 1, 1)
        self.btnRemoveModulation = QtWidgets.QToolButton(DialogModulation)
        icon = QtGui.QIcon.fromTheme("list-remove")
        self.btnRemoveModulation.setIcon(icon)
        self.btnRemoveModulation.setObjectName("btnRemoveModulation")
        self.gridLayout_5.addWidget(self.btnRemoveModulation, 0, 2, 1, 1)
        self.verticalLayout.addLayout(self.gridLayout_5)
        self.scrollArea = QtWidgets.QScrollArea(DialogModulation)
        self.scrollArea.setFrameShape(QtWidgets.QFrame.NoFrame)
        self.scrollArea.setWidgetResizable(True)
        self.scrollArea.setObjectName("scrollArea")
        self.scrollAreaWidgetContents_2 = QtWidgets.QWidget()
        self.scrollAreaWidgetContents_2.setGeometry(
            QtCore.QRect(0, 0, 965, 984))
        self.scrollAreaWidgetContents_2.setObjectName(
            "scrollAreaWidgetContents_2")
        self.gridLayout_7 = QtWidgets.QGridLayout(
            self.scrollAreaWidgetContents_2)
        self.gridLayout_7.setObjectName("gridLayout_7")
        self.label_5 = QtWidgets.QLabel(self.scrollAreaWidgetContents_2)
        font = QtGui.QFont()
        font.setBold(True)
        font.setWeight(75)
        self.label_5.setFont(font)
        self.label_5.setObjectName("label_5")
        self.gridLayout_7.addWidget(self.label_5, 2, 0, 1, 1)
        self.lEqual = QtWidgets.QLabel(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.lEqual.sizePolicy().hasHeightForWidth())
        self.lEqual.setSizePolicy(sizePolicy)
        self.lEqual.setMaximumSize(QtCore.QSize(32, 32))
        self.lEqual.setText("")
        self.lEqual.setPixmap(QtGui.QPixmap(":/icons/icons/equals.svg"))
        self.lEqual.setScaledContents(True)
        self.lEqual.setAlignment(QtCore.Qt.AlignCenter)
        self.lEqual.setObjectName("lEqual")
        self.gridLayout_7.addWidget(self.lEqual, 4, 2, 1, 1)
        self.label_6 = QtWidgets.QLabel(self.scrollAreaWidgetContents_2)
        font = QtGui.QFont()
        font.setBold(True)
        font.setWeight(75)
        self.label_6.setFont(font)
        self.label_6.setObjectName("label_6")
        self.gridLayout_7.addWidget(self.label_6, 4, 0, 1, 1)
        spacerItem = QtWidgets.QSpacerItem(40, 20,
                                           QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_7.addItem(spacerItem, 8, 1, 1, 1)
        self.label_7 = QtWidgets.QLabel(self.scrollAreaWidgetContents_2)
        font = QtGui.QFont()
        font.setBold(True)
        font.setWeight(75)
        self.label_7.setFont(font)
        self.label_7.setObjectName("label_7")
        self.gridLayout_7.addWidget(self.label_7, 8, 0, 1, 1)
        spacerItem1 = QtWidgets.QSpacerItem(40, 20,
                                            QtWidgets.QSizePolicy.Expanding,
                                            QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_7.addItem(spacerItem1, 2, 3, 1, 1)
        spacerItem2 = QtWidgets.QSpacerItem(40, 20,
                                            QtWidgets.QSizePolicy.Expanding,
                                            QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_7.addItem(spacerItem2, 4, 1, 1, 1)
        self.label_4 = QtWidgets.QLabel(self.scrollAreaWidgetContents_2)
        font = QtGui.QFont()
        font.setBold(True)
        font.setWeight(75)
        self.label_4.setFont(font)
        self.label_4.setObjectName("label_4")
        self.gridLayout_7.addWidget(self.label_4, 0, 0, 1, 1)
        self.gVOriginalSignal = ZoomAndDropableGraphicView(
            self.scrollAreaWidgetContents_2)
        self.gVOriginalSignal.setVerticalScrollBarPolicy(
            QtCore.Qt.ScrollBarAlwaysOff)
        self.gVOriginalSignal.setHorizontalScrollBarPolicy(
            QtCore.Qt.ScrollBarAlwaysOn)
        self.gVOriginalSignal.setRenderHints(
            QtGui.QPainter.Antialiasing
            | QtGui.QPainter.HighQualityAntialiasing)
        self.gVOriginalSignal.setDragMode(QtWidgets.QGraphicsView.NoDrag)
        self.gVOriginalSignal.setObjectName("gVOriginalSignal")
        self.gridLayout_7.addWidget(self.gVOriginalSignal, 9, 1, 1, 3)
        self.scrollArea_5 = QtWidgets.QScrollArea(
            self.scrollAreaWidgetContents_2)
        self.scrollArea_5.setFrameShape(QtWidgets.QFrame.NoFrame)
        self.scrollArea_5.setWidgetResizable(True)
        self.scrollArea_5.setObjectName("scrollArea_5")
        self.scrollAreaWidgetContents_5 = QtWidgets.QWidget()
        self.scrollAreaWidgetContents_5.setGeometry(
            QtCore.QRect(0, 0, 400, 330))
        self.scrollAreaWidgetContents_5.setObjectName(
            "scrollAreaWidgetContents_5")
        self.gridLayout_4 = QtWidgets.QGridLayout(
            self.scrollAreaWidgetContents_5)
        self.gridLayout_4.setObjectName("gridLayout_4")
        self.lCurrentSearchResult = QtWidgets.QLabel(
            self.scrollAreaWidgetContents_5)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.lCurrentSearchResult.sizePolicy().hasHeightForWidth())
        self.lCurrentSearchResult.setSizePolicy(sizePolicy)
        self.lCurrentSearchResult.setMinimumSize(QtCore.QSize(0, 0))
        self.lCurrentSearchResult.setMaximumSize(
            QtCore.QSize(16777215, 16777215))
        self.lCurrentSearchResult.setAlignment(QtCore.Qt.AlignCenter)
        self.lCurrentSearchResult.setObjectName("lCurrentSearchResult")
        self.gridLayout_4.addWidget(self.lCurrentSearchResult, 3, 1, 1, 2)
        self.cbShowDataBitsOnly = QtWidgets.QCheckBox(
            self.scrollAreaWidgetContents_5)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.cbShowDataBitsOnly.sizePolicy().hasHeightForWidth())
        self.cbShowDataBitsOnly.setSizePolicy(sizePolicy)
        self.cbShowDataBitsOnly.setMinimumSize(QtCore.QSize(0, 0))
        self.cbShowDataBitsOnly.setMaximumSize(QtCore.QSize(
            16777215, 16777215))
        self.cbShowDataBitsOnly.setObjectName("cbShowDataBitsOnly")
        self.gridLayout_4.addWidget(self.cbShowDataBitsOnly, 2, 0, 1, 5)
        self.btnSearchPrev = QtWidgets.QPushButton(
            self.scrollAreaWidgetContents_5)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.btnSearchPrev.sizePolicy().hasHeightForWidth())
        self.btnSearchPrev.setSizePolicy(sizePolicy)
        self.btnSearchPrev.setMaximumSize(QtCore.QSize(16777215, 16777215))
        self.btnSearchPrev.setText("")
        icon = QtGui.QIcon.fromTheme("go-previous")
        self.btnSearchPrev.setIcon(icon)
        self.btnSearchPrev.setObjectName("btnSearchPrev")
        self.gridLayout_4.addWidget(self.btnSearchPrev, 3, 0, 1, 1)
        self.lTotalSearchresults = QtWidgets.QLabel(
            self.scrollAreaWidgetContents_5)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.lTotalSearchresults.sizePolicy().hasHeightForWidth())
        self.lTotalSearchresults.setSizePolicy(sizePolicy)
        self.lTotalSearchresults.setMaximumSize(
            QtCore.QSize(16777215, 16777215))
        self.lTotalSearchresults.setAlignment(QtCore.Qt.AlignCenter)
        self.lTotalSearchresults.setObjectName("lTotalSearchresults")
        self.gridLayout_4.addWidget(self.lTotalSearchresults, 3, 4, 1, 1)
        self.treeViewSignals = ModulatorTreeView(
            self.scrollAreaWidgetContents_5)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.treeViewSignals.sizePolicy().hasHeightForWidth())
        self.treeViewSignals.setSizePolicy(sizePolicy)
        self.treeViewSignals.setProperty("showDropIndicator", True)
        self.treeViewSignals.setDragEnabled(True)
        self.treeViewSignals.setDragDropMode(
            QtWidgets.QAbstractItemView.DragOnly)
        self.treeViewSignals.setHeaderHidden(True)
        self.treeViewSignals.setObjectName("treeViewSignals")
        self.gridLayout_4.addWidget(self.treeViewSignals, 0, 0, 1, 6)
        self.lSlash = QtWidgets.QLabel(self.scrollAreaWidgetContents_5)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.lSlash.sizePolicy().hasHeightForWidth())
        self.lSlash.setSizePolicy(sizePolicy)
        self.lSlash.setMaximumSize(QtCore.QSize(7, 16777215))
        self.lSlash.setObjectName("lSlash")
        self.gridLayout_4.addWidget(self.lSlash, 3, 3, 1, 1)
        self.btnSearchNext = QtWidgets.QPushButton(
            self.scrollAreaWidgetContents_5)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.btnSearchNext.sizePolicy().hasHeightForWidth())
        self.btnSearchNext.setSizePolicy(sizePolicy)
        self.btnSearchNext.setMaximumSize(QtCore.QSize(16777215, 16777215))
        self.btnSearchNext.setText("")
        icon = QtGui.QIcon.fromTheme("go-next")
        self.btnSearchNext.setIcon(icon)
        self.btnSearchNext.setObjectName("btnSearchNext")
        self.gridLayout_4.addWidget(self.btnSearchNext, 3, 5, 1, 1)
        self.chkBoxLockSIV = QtWidgets.QCheckBox(
            self.scrollAreaWidgetContents_5)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.chkBoxLockSIV.sizePolicy().hasHeightForWidth())
        self.chkBoxLockSIV.setSizePolicy(sizePolicy)
        self.chkBoxLockSIV.setObjectName("chkBoxLockSIV")
        self.gridLayout_4.addWidget(self.chkBoxLockSIV, 1, 0, 1, 5)
        self.scrollArea_5.setWidget(self.scrollAreaWidgetContents_5)
        self.gridLayout_7.addWidget(self.scrollArea_5, 9, 0, 1, 1)
        self.horizontalLayout = QtWidgets.QHBoxLayout()
        self.horizontalLayout.setObjectName("horizontalLayout")
        self.lSamplesInViewModulatedText = QtWidgets.QLabel(
            self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.lSamplesInViewModulatedText.sizePolicy().hasHeightForWidth())
        self.lSamplesInViewModulatedText.setSizePolicy(sizePolicy)
        self.lSamplesInViewModulatedText.setObjectName(
            "lSamplesInViewModulatedText")
        self.horizontalLayout.addWidget(self.lSamplesInViewModulatedText)
        self.lSamplesInViewModulated = QtWidgets.QLabel(
            self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Maximum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.lSamplesInViewModulated.sizePolicy().hasHeightForWidth())
        self.lSamplesInViewModulated.setSizePolicy(sizePolicy)
        self.lSamplesInViewModulated.setObjectName("lSamplesInViewModulated")
        self.horizontalLayout.addWidget(self.lSamplesInViewModulated)
        self.label_9 = QtWidgets.QLabel(self.scrollAreaWidgetContents_2)
        self.label_9.setObjectName("label_9")
        self.horizontalLayout.addWidget(self.label_9)
        self.lModulatedSelectedSamples = QtWidgets.QLabel(
            self.scrollAreaWidgetContents_2)
        self.lModulatedSelectedSamples.setObjectName(
            "lModulatedSelectedSamples")
        self.horizontalLayout.addWidget(self.lModulatedSelectedSamples)
        self.gridLayout_7.addLayout(self.horizontalLayout, 6, 1, 1, 1)
        self.scrollArea_3 = QtWidgets.QScrollArea(
            self.scrollAreaWidgetContents_2)
        self.scrollArea_3.setFrameShape(QtWidgets.QFrame.NoFrame)
        self.scrollArea_3.setWidgetResizable(True)
        self.scrollArea_3.setObjectName("scrollArea_3")
        self.scrollAreaWidgetContents_3 = QtWidgets.QWidget()
        self.scrollAreaWidgetContents_3.setGeometry(
            QtCore.QRect(0, 0, 380, 141))
        self.scrollAreaWidgetContents_3.setObjectName(
            "scrollAreaWidgetContents_3")
        self.gridLayout_2 = QtWidgets.QGridLayout(
            self.scrollAreaWidgetContents_3)
        self.gridLayout_2.setObjectName("gridLayout_2")
        self.spinBoxSampleRate = KillerDoubleSpinBox(
            self.scrollAreaWidgetContents_3)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.spinBoxSampleRate.sizePolicy().hasHeightForWidth())
        self.spinBoxSampleRate.setSizePolicy(sizePolicy)
        self.spinBoxSampleRate.setDecimals(3)
        self.spinBoxSampleRate.setMinimum(0.001)
        self.spinBoxSampleRate.setMaximum(999999999.0)
        self.spinBoxSampleRate.setObjectName("spinBoxSampleRate")
        self.gridLayout_2.addWidget(self.spinBoxSampleRate, 2, 1, 1, 1)
        spacerItem3 = QtWidgets.QSpacerItem(20, 40,
                                            QtWidgets.QSizePolicy.Minimum,
                                            QtWidgets.QSizePolicy.Expanding)
        self.gridLayout_2.addItem(spacerItem3, 3, 0, 1, 1)
        self.label_3 = QtWidgets.QLabel(self.scrollAreaWidgetContents_3)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.label_3.sizePolicy().hasHeightForWidth())
        self.label_3.setSizePolicy(sizePolicy)
        self.label_3.setObjectName("label_3")
        self.gridLayout_2.addWidget(self.label_3, 2, 0, 1, 1)
        self.label = QtWidgets.QLabel(self.scrollAreaWidgetContents_3)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.label.sizePolicy().hasHeightForWidth())
        self.label.setSizePolicy(sizePolicy)
        self.label.setObjectName("label")
        self.gridLayout_2.addWidget(self.label, 1, 0, 1, 1)
        self.spinBoxSamplesPerSymbol = QtWidgets.QSpinBox(
            self.scrollAreaWidgetContents_3)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.spinBoxSamplesPerSymbol.sizePolicy().hasHeightForWidth())
        self.spinBoxSamplesPerSymbol.setSizePolicy(sizePolicy)
        self.spinBoxSamplesPerSymbol.setMinimum(1)
        self.spinBoxSamplesPerSymbol.setMaximum(999999)
        self.spinBoxSamplesPerSymbol.setObjectName("spinBoxSamplesPerSymbol")
        self.gridLayout_2.addWidget(self.spinBoxSamplesPerSymbol, 1, 1, 1, 1)
        self.linEdDataBits = QtWidgets.QLineEdit(
            self.scrollAreaWidgetContents_3)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.linEdDataBits.sizePolicy().hasHeightForWidth())
        self.linEdDataBits.setSizePolicy(sizePolicy)
        self.linEdDataBits.setObjectName("linEdDataBits")
        self.gridLayout_2.addWidget(self.linEdDataBits, 0, 0, 1, 2)
        self.scrollArea_3.setWidget(self.scrollAreaWidgetContents_3)
        self.gridLayout_7.addWidget(self.scrollArea_3, 3, 0, 1, 1)
        self.scrollArea_2 = QtWidgets.QScrollArea(
            self.scrollAreaWidgetContents_2)
        self.scrollArea_2.setFrameShape(QtWidgets.QFrame.NoFrame)
        self.scrollArea_2.setWidgetResizable(True)
        self.scrollArea_2.setObjectName("scrollArea_2")
        self.scrollAreaWidgetContents = QtWidgets.QWidget()
        self.scrollAreaWidgetContents.setGeometry(QtCore.QRect(0, 0, 380, 143))
        self.scrollAreaWidgetContents.setObjectName("scrollAreaWidgetContents")
        self.gridLayout = QtWidgets.QGridLayout(self.scrollAreaWidgetContents)
        self.gridLayout.setObjectName("gridLayout")
        self.lCarrierFreq = QtWidgets.QLabel(self.scrollAreaWidgetContents)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.lCarrierFreq.sizePolicy().hasHeightForWidth())
        self.lCarrierFreq.setSizePolicy(sizePolicy)
        self.lCarrierFreq.setObjectName("lCarrierFreq")
        self.gridLayout.addWidget(self.lCarrierFreq, 0, 0, 1, 1)
        self.doubleSpinBoxCarrierFreq = KillerDoubleSpinBox(
            self.scrollAreaWidgetContents)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.doubleSpinBoxCarrierFreq.sizePolicy().hasHeightForWidth())
        self.doubleSpinBoxCarrierFreq.setSizePolicy(sizePolicy)
        self.doubleSpinBoxCarrierFreq.setSuffix("")
        self.doubleSpinBoxCarrierFreq.setDecimals(3)
        self.doubleSpinBoxCarrierFreq.setMinimum(0.0)
        self.doubleSpinBoxCarrierFreq.setMaximum(99999999999.0)
        self.doubleSpinBoxCarrierFreq.setObjectName("doubleSpinBoxCarrierFreq")
        self.gridLayout.addWidget(self.doubleSpinBoxCarrierFreq, 0, 1, 1, 1)
        self.label_2 = QtWidgets.QLabel(self.scrollAreaWidgetContents)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.label_2.sizePolicy().hasHeightForWidth())
        self.label_2.setSizePolicy(sizePolicy)
        self.label_2.setObjectName("label_2")
        self.gridLayout.addWidget(self.label_2, 1, 0, 1, 1)
        self.doubleSpinBoxCarrierPhase = QtWidgets.QDoubleSpinBox(
            self.scrollAreaWidgetContents)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.doubleSpinBoxCarrierPhase.sizePolicy().hasHeightForWidth())
        self.doubleSpinBoxCarrierPhase.setSizePolicy(sizePolicy)
        self.doubleSpinBoxCarrierPhase.setDecimals(3)
        self.doubleSpinBoxCarrierPhase.setMaximum(360.0)
        self.doubleSpinBoxCarrierPhase.setObjectName(
            "doubleSpinBoxCarrierPhase")
        self.gridLayout.addWidget(self.doubleSpinBoxCarrierPhase, 1, 1, 1, 1)
        self.btnAutoDetect = QtWidgets.QPushButton(
            self.scrollAreaWidgetContents)
        self.btnAutoDetect.setEnabled(False)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.btnAutoDetect.sizePolicy().hasHeightForWidth())
        self.btnAutoDetect.setSizePolicy(sizePolicy)
        self.btnAutoDetect.setObjectName("btnAutoDetect")
        self.gridLayout.addWidget(self.btnAutoDetect, 2, 0, 1, 2)
        spacerItem4 = QtWidgets.QSpacerItem(20, 40,
                                            QtWidgets.QSizePolicy.Minimum,
                                            QtWidgets.QSizePolicy.Expanding)
        self.gridLayout.addItem(spacerItem4, 3, 0, 1, 1)
        self.scrollArea_2.setWidget(self.scrollAreaWidgetContents)
        self.gridLayout_7.addWidget(self.scrollArea_2, 1, 0, 1, 1)
        self.lPlus = QtWidgets.QLabel(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.lPlus.sizePolicy().hasHeightForWidth())
        self.lPlus.setSizePolicy(sizePolicy)
        self.lPlus.setMaximumSize(QtCore.QSize(32, 32))
        self.lPlus.setText("")
        self.lPlus.setPixmap(QtGui.QPixmap(":/icons/icons/plus.svg"))
        self.lPlus.setScaledContents(True)
        self.lPlus.setAlignment(QtCore.Qt.AlignCenter)
        self.lPlus.setObjectName("lPlus")
        self.gridLayout_7.addWidget(self.lPlus, 2, 2, 1, 1)
        self.gVCarrier = ZoomableGraphicView(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.gVCarrier.sizePolicy().hasHeightForWidth())
        self.gVCarrier.setSizePolicy(sizePolicy)
        self.gVCarrier.setAcceptDrops(False)
        self.gVCarrier.setVerticalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOff)
        self.gVCarrier.setHorizontalScrollBarPolicy(
            QtCore.Qt.ScrollBarAlwaysOn)
        self.gVCarrier.setRenderHints(QtGui.QPainter.Antialiasing
                                      | QtGui.QPainter.HighQualityAntialiasing)
        self.gVCarrier.setDragMode(QtWidgets.QGraphicsView.NoDrag)
        self.gVCarrier.setObjectName("gVCarrier")
        self.gridLayout_7.addWidget(self.gVCarrier, 1, 1, 1, 3)
        spacerItem5 = QtWidgets.QSpacerItem(40, 20,
                                            QtWidgets.QSizePolicy.Expanding,
                                            QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_7.addItem(spacerItem5, 2, 1, 1, 1)
        self.gVModulated = ZoomableGraphicView(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.gVModulated.sizePolicy().hasHeightForWidth())
        self.gVModulated.setSizePolicy(sizePolicy)
        self.gVModulated.setAcceptDrops(False)
        self.gVModulated.setVerticalScrollBarPolicy(
            QtCore.Qt.ScrollBarAlwaysOff)
        self.gVModulated.setHorizontalScrollBarPolicy(
            QtCore.Qt.ScrollBarAlwaysOn)
        self.gVModulated.setRenderHints(
            QtGui.QPainter.Antialiasing
            | QtGui.QPainter.HighQualityAntialiasing)
        self.gVModulated.setDragMode(QtWidgets.QGraphicsView.NoDrag)
        self.gVModulated.setObjectName("gVModulated")
        self.gridLayout_7.addWidget(self.gVModulated, 5, 1, 1, 3)
        self.gVData = ZoomableGraphicView(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.gVData.sizePolicy().hasHeightForWidth())
        self.gVData.setSizePolicy(sizePolicy)
        self.gVData.setAcceptDrops(False)
        self.gVData.setVerticalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOff)
        self.gVData.setHorizontalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOn)
        self.gVData.setRenderHints(QtGui.QPainter.Antialiasing
                                   | QtGui.QPainter.HighQualityAntialiasing)
        self.gVData.setDragMode(QtWidgets.QGraphicsView.NoDrag)
        self.gVData.setObjectName("gVData")
        self.gridLayout_7.addWidget(self.gVData, 3, 1, 1, 3)
        self.scrollArea_4 = QtWidgets.QScrollArea(
            self.scrollAreaWidgetContents_2)
        self.scrollArea_4.setFrameShape(QtWidgets.QFrame.NoFrame)
        self.scrollArea_4.setWidgetResizable(True)
        self.scrollArea_4.setObjectName("scrollArea_4")
        self.scrollAreaWidgetContents_4 = QtWidgets.QWidget()
        self.scrollAreaWidgetContents_4.setGeometry(
            QtCore.QRect(0, 0, 400, 227))
        self.scrollAreaWidgetContents_4.setObjectName(
            "scrollAreaWidgetContents_4")
        self.gridLayout_3 = QtWidgets.QGridLayout(
            self.scrollAreaWidgetContents_4)
        self.gridLayout_3.setObjectName("gridLayout_3")
        self.spinBoxBitsPerSymbol = QtWidgets.QSpinBox(
            self.scrollAreaWidgetContents_4)
        self.spinBoxBitsPerSymbol.setMinimum(1)
        self.spinBoxBitsPerSymbol.setMaximum(10)
        self.spinBoxBitsPerSymbol.setObjectName("spinBoxBitsPerSymbol")
        self.gridLayout_3.addWidget(self.spinBoxBitsPerSymbol, 1, 1, 1, 1)
        self.spinBoxGaussBT = QtWidgets.QDoubleSpinBox(
            self.scrollAreaWidgetContents_4)
        self.spinBoxGaussBT.setMinimum(0.01)
        self.spinBoxGaussBT.setMaximum(0.99)
        self.spinBoxGaussBT.setSingleStep(0.01)
        self.spinBoxGaussBT.setObjectName("spinBoxGaussBT")
        self.gridLayout_3.addWidget(self.spinBoxGaussBT, 3, 1, 1, 1)
        self.lGaussWidth = QtWidgets.QLabel(self.scrollAreaWidgetContents_4)
        self.lGaussWidth.setObjectName("lGaussWidth")
        self.gridLayout_3.addWidget(self.lGaussWidth, 4, 0, 1, 1)
        self.lGaussBT = QtWidgets.QLabel(self.scrollAreaWidgetContents_4)
        self.lGaussBT.setObjectName("lGaussBT")
        self.gridLayout_3.addWidget(self.lGaussBT, 3, 0, 1, 1)
        self.spinBoxGaussFilterWidth = QtWidgets.QDoubleSpinBox(
            self.scrollAreaWidgetContents_4)
        self.spinBoxGaussFilterWidth.setMinimum(0.01)
        self.spinBoxGaussFilterWidth.setMaximum(100.0)
        self.spinBoxGaussFilterWidth.setSingleStep(0.01)
        self.spinBoxGaussFilterWidth.setProperty("value", 1.0)
        self.spinBoxGaussFilterWidth.setObjectName("spinBoxGaussFilterWidth")
        self.gridLayout_3.addWidget(self.spinBoxGaussFilterWidth, 4, 1, 1, 1)
        self.labelBitsPerSymbol = QtWidgets.QLabel(
            self.scrollAreaWidgetContents_4)
        self.labelBitsPerSymbol.setObjectName("labelBitsPerSymbol")
        self.gridLayout_3.addWidget(self.labelBitsPerSymbol, 1, 0, 1, 1)
        spacerItem6 = QtWidgets.QSpacerItem(20, 40,
                                            QtWidgets.QSizePolicy.Minimum,
                                            QtWidgets.QSizePolicy.Expanding)
        self.gridLayout_3.addItem(spacerItem6, 5, 0, 1, 1)
        spacerItem7 = QtWidgets.QSpacerItem(20, 40,
                                            QtWidgets.QSizePolicy.Minimum,
                                            QtWidgets.QSizePolicy.Expanding)
        self.gridLayout_3.addItem(spacerItem7, 5, 1, 1, 1)
        self.lineEditParameters = QtWidgets.QLineEdit(
            self.scrollAreaWidgetContents_4)
        self.lineEditParameters.setClearButtonEnabled(False)
        self.lineEditParameters.setObjectName("lineEditParameters")
        self.gridLayout_3.addWidget(self.lineEditParameters, 2, 1, 1, 1)
        self.comboBoxModulationType = QtWidgets.QComboBox(
            self.scrollAreaWidgetContents_4)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.comboBoxModulationType.sizePolicy().hasHeightForWidth())
        self.comboBoxModulationType.setSizePolicy(sizePolicy)
        self.comboBoxModulationType.setMaximumSize(
            QtCore.QSize(16777215, 16777215))
        self.comboBoxModulationType.setObjectName("comboBoxModulationType")
        self.comboBoxModulationType.addItem("")
        self.comboBoxModulationType.addItem("")
        self.comboBoxModulationType.addItem("")
        self.comboBoxModulationType.addItem("")
        self.gridLayout_3.addWidget(self.comboBoxModulationType, 0, 0, 1, 2)
        self.labelParameters = QtWidgets.QLabel(
            self.scrollAreaWidgetContents_4)
        self.labelParameters.setObjectName("labelParameters")
        self.gridLayout_3.addWidget(self.labelParameters, 2, 0, 1, 1)
        self.scrollArea_4.setWidget(self.scrollAreaWidgetContents_4)
        self.gridLayout_7.addWidget(self.scrollArea_4, 5, 0, 1, 1)
        spacerItem8 = QtWidgets.QSpacerItem(40, 20,
                                            QtWidgets.QSizePolicy.Expanding,
                                            QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_7.addItem(spacerItem8, 4, 3, 1, 1)
        spacerItem9 = QtWidgets.QSpacerItem(40, 20,
                                            QtWidgets.QSizePolicy.Expanding,
                                            QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_7.addItem(spacerItem9, 8, 3, 1, 1)
        self.lEqual_qm = QtWidgets.QLabel(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.lEqual_qm.sizePolicy().hasHeightForWidth())
        self.lEqual_qm.setSizePolicy(sizePolicy)
        self.lEqual_qm.setMaximumSize(QtCore.QSize(32, 32))
        self.lEqual_qm.setText("")
        self.lEqual_qm.setPixmap(QtGui.QPixmap(":/icons/icons/equals_qm.svg"))
        self.lEqual_qm.setScaledContents(True)
        self.lEqual_qm.setAlignment(QtCore.Qt.AlignCenter)
        self.lEqual_qm.setObjectName("lEqual_qm")
        self.gridLayout_7.addWidget(self.lEqual_qm, 8, 2, 1, 1)
        self.horizontalLayout_2 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_2.setObjectName("horizontalLayout_2")
        self.lSamplesInViewOrigSignalText = QtWidgets.QLabel(
            self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.lSamplesInViewOrigSignalText.sizePolicy().hasHeightForWidth())
        self.lSamplesInViewOrigSignalText.setSizePolicy(sizePolicy)
        self.lSamplesInViewOrigSignalText.setObjectName(
            "lSamplesInViewOrigSignalText")
        self.horizontalLayout_2.addWidget(self.lSamplesInViewOrigSignalText)
        self.lSamplesInViewOrigSignal = QtWidgets.QLabel(
            self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.lSamplesInViewOrigSignal.sizePolicy().hasHeightForWidth())
        self.lSamplesInViewOrigSignal.setSizePolicy(sizePolicy)
        self.lSamplesInViewOrigSignal.setObjectName("lSamplesInViewOrigSignal")
        self.horizontalLayout_2.addWidget(self.lSamplesInViewOrigSignal)
        self.label_10 = QtWidgets.QLabel(self.scrollAreaWidgetContents_2)
        self.label_10.setObjectName("label_10")
        self.horizontalLayout_2.addWidget(self.label_10)
        self.lOriginalSignalSamplesSelected = QtWidgets.QLabel(
            self.scrollAreaWidgetContents_2)
        self.lOriginalSignalSamplesSelected.setObjectName(
            "lOriginalSignalSamplesSelected")
        self.horizontalLayout_2.addWidget(self.lOriginalSignalSamplesSelected)
        self.gridLayout_7.addLayout(self.horizontalLayout_2, 10, 1, 1, 1)
        self.gridLayout_7.setRowStretch(1, 1)
        self.gridLayout_7.setRowStretch(3, 1)
        self.gridLayout_7.setRowStretch(5, 1)
        self.gridLayout_7.setRowStretch(8, 1)
        self.scrollArea.setWidget(self.scrollAreaWidgetContents_2)
        self.verticalLayout.addWidget(self.scrollArea)

        self.retranslateUi(DialogModulation)
        DialogModulation.setTabOrder(self.btnAddModulation, self.scrollArea_2)
        DialogModulation.setTabOrder(self.scrollArea_2,
                                     self.doubleSpinBoxCarrierFreq)
        DialogModulation.setTabOrder(self.doubleSpinBoxCarrierFreq,
                                     self.doubleSpinBoxCarrierPhase)
        DialogModulation.setTabOrder(self.doubleSpinBoxCarrierPhase,
                                     self.btnAutoDetect)
        DialogModulation.setTabOrder(self.btnAutoDetect, self.scrollArea_3)
        DialogModulation.setTabOrder(self.scrollArea_3, self.linEdDataBits)
        DialogModulation.setTabOrder(self.linEdDataBits,
                                     self.spinBoxSamplesPerSymbol)
        DialogModulation.setTabOrder(self.spinBoxSamplesPerSymbol,
                                     self.spinBoxSampleRate)
        DialogModulation.setTabOrder(self.spinBoxSampleRate, self.scrollArea_4)
        DialogModulation.setTabOrder(self.scrollArea_4,
                                     self.comboBoxModulationType)
        DialogModulation.setTabOrder(self.comboBoxModulationType,
                                     self.spinBoxBitsPerSymbol)
        DialogModulation.setTabOrder(self.spinBoxBitsPerSymbol,
                                     self.lineEditParameters)
        DialogModulation.setTabOrder(self.lineEditParameters,
                                     self.spinBoxGaussBT)
        DialogModulation.setTabOrder(self.spinBoxGaussBT,
                                     self.spinBoxGaussFilterWidth)
        DialogModulation.setTabOrder(self.spinBoxGaussFilterWidth,
                                     self.scrollArea_5)
        DialogModulation.setTabOrder(self.scrollArea_5, self.treeViewSignals)
        DialogModulation.setTabOrder(self.treeViewSignals, self.chkBoxLockSIV)
        DialogModulation.setTabOrder(self.chkBoxLockSIV, self.gVCarrier)
        DialogModulation.setTabOrder(self.gVCarrier, self.gVData)
        DialogModulation.setTabOrder(self.gVData, self.gVModulated)
        DialogModulation.setTabOrder(self.gVModulated, self.gVOriginalSignal)
        DialogModulation.setTabOrder(self.gVOriginalSignal,
                                     self.cbShowDataBitsOnly)
        DialogModulation.setTabOrder(self.cbShowDataBitsOnly,
                                     self.btnSearchPrev)
        DialogModulation.setTabOrder(self.btnSearchPrev, self.btnSearchNext)
        DialogModulation.setTabOrder(self.btnSearchNext,
                                     self.btnRemoveModulation)
        DialogModulation.setTabOrder(self.btnRemoveModulation,
                                     self.comboBoxCustomModulations)
        DialogModulation.setTabOrder(self.comboBoxCustomModulations,
                                     self.scrollArea)

    def retranslateUi(self, DialogModulation):
        _translate = QtCore.QCoreApplication.translate
        DialogModulation.setWindowTitle(
            _translate("DialogModulation", "Modulation"))
        self.comboBoxCustomModulations.setItemText(
            0, _translate("DialogModulation", "My Modulation"))
        self.btnAddModulation.setText(_translate("DialogModulation", "..."))
        self.btnRemoveModulation.setText(_translate("DialogModulation", "..."))
        self.label_5.setText(_translate("DialogModulation", "Data (raw bits)"))
        self.label_6.setText(_translate("DialogModulation", "Modulation"))
        self.label_7.setText(
            _translate("DialogModulation", "Original Signal (drag&drop)"))
        self.label_4.setText(_translate("DialogModulation", "Carrier"))
        self.lCurrentSearchResult.setText(_translate("DialogModulation", "-"))
        self.cbShowDataBitsOnly.setText(
            _translate("DialogModulation", "Show Only Data Sequence\n"
                       "(10)"))
        self.lTotalSearchresults.setText(_translate("DialogModulation", "-"))
        self.lSlash.setText(_translate("DialogModulation", "/"))
        self.chkBoxLockSIV.setText(
            _translate("DialogModulation", "Lock view to original signal"))
        self.lSamplesInViewModulatedText.setText(
            _translate("DialogModulation", "Samples in View:"))
        self.lSamplesInViewModulated.setToolTip(
            _translate(
                "DialogModulation",
                "<html><head/><body><p>Shown Samples in View:</p><p><span style=\" font-weight:600; color:#ff0000;\">Red</span> - if samples in view differ from original signal</p><p><span style=\" font-weight:600;\">Normal</span> - if samples in view are equal to the original signal</p></body></html>"
            ))
        self.lSamplesInViewModulated.setText(
            _translate("DialogModulation", "101010121"))
        self.label_9.setText(
            _translate("DialogModulation", "Samples selected:"))
        self.lModulatedSelectedSamples.setText(
            _translate("DialogModulation", "0"))
        self.label_3.setText(
            _translate("DialogModulation", "Sample Rate (Sps):"))
        self.label.setText(
            _translate("DialogModulation", "Samples per Symbol:"))
        self.linEdDataBits.setPlaceholderText(
            _translate("DialogModulation", "Enter Data Bits here"))
        self.lCarrierFreq.setText(_translate("DialogModulation", "Frequency:"))
        self.label_2.setText(_translate("DialogModulation", "Phase:"))
        self.doubleSpinBoxCarrierPhase.setSuffix(
            _translate("DialogModulation", "°"))
        self.btnAutoDetect.setToolTip(
            _translate(
                "DialogModulation",
                "<html><head/><body><p>Auto detect the frequency based on the original signal. You have to select a signal (<span style=\" font-weight:600;\">bottom of this window</span>) to use this feature.</p><p><br/></p><p>Select a signal by dragging it from the tree and dropping it on the graphics pane to the right.</p></body></html>"
            ))
        self.btnAutoDetect.setText(
            _translate("DialogModulation", "Auto detect from original signal"))
        self.lGaussWidth.setText(
            _translate("DialogModulation", "Gauss filter width:"))
        self.lGaussBT.setText(_translate("DialogModulation", "Gauss BT:"))
        self.labelBitsPerSymbol.setText(
            _translate("DialogModulation", "Bits per Symbol:"))
        self.comboBoxModulationType.setItemText(
            0, _translate("DialogModulation", "Amplitude Shift Keying (ASK)"))
        self.comboBoxModulationType.setItemText(
            1, _translate("DialogModulation", "Frequency Shift Keying (FSK)"))
        self.comboBoxModulationType.setItemText(
            2,
            _translate("DialogModulation",
                       "Gaussian Frequency Shift Keying (GFSK)"))
        self.comboBoxModulationType.setItemText(
            3, _translate("DialogModulation", "Phase Shift Keying (PSK)"))
        self.labelParameters.setText(
            _translate("DialogModulation", "Parameters:"))
        self.lSamplesInViewOrigSignalText.setText(
            _translate("DialogModulation", "Samples in View:"))
        self.lSamplesInViewOrigSignal.setToolTip(
            _translate(
                "DialogModulation",
                "<html><head/><body><p>Shown Samples in View:</p><p><span style=\" font-weight:600; color:#ff0000;\">Red</span> - if samples in view differ from original signal</p><p><span style=\" font-weight:600;\">Normal</span> - if samples in view are equal to the original signal</p></body></html>"
            ))
        self.lSamplesInViewOrigSignal.setText(
            _translate("DialogModulation", "0"))
        self.label_10.setText(
            _translate("DialogModulation", "Samples selected:"))
        self.lOriginalSignalSamplesSelected.setText(
            _translate("DialogModulation", "0"))
Esempio n. 3
0
class Ui_Decoder(object):
    def setupUi(self, Decoder):
        Decoder.setObjectName("Decoder")
        Decoder.setWindowModality(QtCore.Qt.WindowModal)
        Decoder.resize(1018, 570)
        Decoder.setModal(True)
        self.verticalLayout_4 = QtWidgets.QVBoxLayout(Decoder)
        self.verticalLayout_4.setObjectName("verticalLayout_4")
        self.horizontalLayout_2 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_2.setObjectName("horizontalLayout_2")
        self.combobox_decodings = QtWidgets.QComboBox(Decoder)
        self.combobox_decodings.setObjectName("combobox_decodings")
        self.combobox_decodings.addItem("")
        self.combobox_decodings.addItem("")
        self.horizontalLayout_2.addWidget(self.combobox_decodings)
        self.delete_decoding = QtWidgets.QPushButton(Decoder)
        self.delete_decoding.setObjectName("delete_decoding")
        self.horizontalLayout_2.addWidget(self.delete_decoding)
        self.saveas = QtWidgets.QPushButton(Decoder)
        self.saveas.setObjectName("saveas")
        self.horizontalLayout_2.addWidget(self.saveas)
        spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
        self.horizontalLayout_2.addItem(spacerItem)
        self.verticalLayout_4.addLayout(self.horizontalLayout_2)
        self.horizontalLayout = QtWidgets.QHBoxLayout()
        self.horizontalLayout.setObjectName("horizontalLayout")
        self.verticalLayout_2 = QtWidgets.QVBoxLayout()
        self.verticalLayout_2.setObjectName("verticalLayout_2")
        self.label_8 = QtWidgets.QLabel(Decoder)
        self.label_8.setObjectName("label_8")
        self.verticalLayout_2.addWidget(self.label_8)
        self.basefunctions = QtWidgets.QListWidget(Decoder)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.basefunctions.sizePolicy().hasHeightForWidth())
        self.basefunctions.setSizePolicy(sizePolicy)
        self.basefunctions.setDragEnabled(True)
        self.basefunctions.setDragDropMode(QtWidgets.QAbstractItemView.DragOnly)
        self.basefunctions.setObjectName("basefunctions")
        self.verticalLayout_2.addWidget(self.basefunctions)
        self.label_9 = QtWidgets.QLabel(Decoder)
        self.label_9.setObjectName("label_9")
        self.verticalLayout_2.addWidget(self.label_9)
        self.additionalfunctions = QtWidgets.QListWidget(Decoder)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.additionalfunctions.sizePolicy().hasHeightForWidth())
        self.additionalfunctions.setSizePolicy(sizePolicy)
        self.additionalfunctions.setDragEnabled(True)
        self.additionalfunctions.setDragDropMode(QtWidgets.QAbstractItemView.DragOnly)
        self.additionalfunctions.setObjectName("additionalfunctions")
        self.verticalLayout_2.addWidget(self.additionalfunctions)
        self.horizontalLayout.addLayout(self.verticalLayout_2)
        spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Minimum)
        self.horizontalLayout.addItem(spacerItem1)
        self.verticalLayout = QtWidgets.QVBoxLayout()
        self.verticalLayout.setObjectName("verticalLayout")
        self.label = QtWidgets.QLabel(Decoder)
        font = QtGui.QFont()
        font.setPointSize(11)
        font.setBold(True)
        font.setWeight(75)
        self.label.setFont(font)
        self.label.setAlignment(QtCore.Qt.AlignCenter)
        self.label.setObjectName("label")
        self.verticalLayout.addWidget(self.label)
        self.label_4 = QtWidgets.QLabel(Decoder)
        font = QtGui.QFont()
        font.setItalic(True)
        font.setStrikeOut(False)
        self.label_4.setFont(font)
        self.label_4.setAlignment(QtCore.Qt.AlignCenter)
        self.label_4.setObjectName("label_4")
        self.verticalLayout.addWidget(self.label_4)
        self.decoderchain = ListWidget(Decoder)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.decoderchain.sizePolicy().hasHeightForWidth())
        self.decoderchain.setSizePolicy(sizePolicy)
        self.decoderchain.setAcceptDrops(True)
        self.decoderchain.setDragEnabled(True)
        self.decoderchain.setDragDropMode(QtWidgets.QAbstractItemView.DragDrop)
        self.decoderchain.setDefaultDropAction(QtCore.Qt.MoveAction)
        self.decoderchain.setTextElideMode(QtCore.Qt.ElideMiddle)
        self.decoderchain.setResizeMode(QtWidgets.QListView.Fixed)
        self.decoderchain.setViewMode(QtWidgets.QListView.ListMode)
        self.decoderchain.setObjectName("decoderchain")
        self.verticalLayout.addWidget(self.decoderchain)
        self.label_7 = QtWidgets.QLabel(Decoder)
        font = QtGui.QFont()
        font.setItalic(True)
        self.label_7.setFont(font)
        self.label_7.setAlignment(QtCore.Qt.AlignCenter)
        self.label_7.setObjectName("label_7")
        self.verticalLayout.addWidget(self.label_7)
        self.horizontalLayout.addLayout(self.verticalLayout)
        spacerItem2 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Minimum)
        self.horizontalLayout.addItem(spacerItem2)
        self.verticalLayout_3 = QtWidgets.QVBoxLayout()
        self.verticalLayout_3.setObjectName("verticalLayout_3")
        self.gb_infoandoptions = QtWidgets.QGroupBox(Decoder)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.gb_infoandoptions.sizePolicy().hasHeightForWidth())
        self.gb_infoandoptions.setSizePolicy(sizePolicy)
        self.gb_infoandoptions.setObjectName("gb_infoandoptions")
        self.verticalLayout_5 = QtWidgets.QVBoxLayout(self.gb_infoandoptions)
        self.verticalLayout_5.setObjectName("verticalLayout_5")
        self.info = QtWidgets.QLabel(self.gb_infoandoptions)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.info.sizePolicy().hasHeightForWidth())
        self.info.setSizePolicy(sizePolicy)
        font = QtGui.QFont()
        font.setItalic(True)
        self.info.setFont(font)
        self.info.setTextFormat(QtCore.Qt.PlainText)
        self.info.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignTop)
        self.info.setWordWrap(True)
        self.info.setObjectName("info")
        self.verticalLayout_5.addWidget(self.info)
        self.optionWidget = QtWidgets.QStackedWidget(self.gb_infoandoptions)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.optionWidget.sizePolicy().hasHeightForWidth())
        self.optionWidget.setSizePolicy(sizePolicy)
        self.optionWidget.setObjectName("optionWidget")
        self.page_empty = QtWidgets.QWidget()
        self.page_empty.setObjectName("page_empty")
        self.optionWidget.addWidget(self.page_empty)
        self.page_redundancy = QtWidgets.QWidget()
        self.page_redundancy.setObjectName("page_redundancy")
        self.multiple = QtWidgets.QSpinBox(self.page_redundancy)
        self.multiple.setGeometry(QtCore.QRect(0, 0, 56, 23))
        self.multiple.setMinimum(2)
        self.multiple.setObjectName("multiple")
        self.label_5 = QtWidgets.QLabel(self.page_redundancy)
        self.label_5.setGeometry(QtCore.QRect(60, 0, 171, 21))
        self.label_5.setObjectName("label_5")
        self.optionWidget.addWidget(self.page_redundancy)
        self.page_carrier = QtWidgets.QWidget()
        self.page_carrier.setObjectName("page_carrier")
        self.carrier = QtWidgets.QLineEdit(self.page_carrier)
        self.carrier.setGeometry(QtCore.QRect(0, 0, 113, 23))
        self.carrier.setObjectName("carrier")
        self.label_6 = QtWidgets.QLabel(self.page_carrier)
        self.label_6.setGeometry(QtCore.QRect(120, 0, 171, 21))
        self.label_6.setObjectName("label_6")
        self.optionWidget.addWidget(self.page_carrier)
        self.page_substitution = QtWidgets.QWidget()
        self.page_substitution.setObjectName("page_substitution")
        self.gridLayout = QtWidgets.QGridLayout(self.page_substitution)
        self.gridLayout.setContentsMargins(0, 0, 0, 0)
        self.gridLayout.setObjectName("gridLayout")
        self.substitution_rows = QtWidgets.QSpinBox(self.page_substitution)
        self.substitution_rows.setMinimum(1)
        self.substitution_rows.setMaximum(1000)
        self.substitution_rows.setProperty("value", 4)
        self.substitution_rows.setObjectName("substitution_rows")
        self.gridLayout.addWidget(self.substitution_rows, 0, 0, 1, 1)
        self.label_10 = QtWidgets.QLabel(self.page_substitution)
        self.label_10.setObjectName("label_10")
        self.gridLayout.addWidget(self.label_10, 0, 1, 1, 1)
        self.substitution = QtWidgets.QTableWidget(self.page_substitution)
        self.substitution.setVerticalScrollMode(QtWidgets.QAbstractItemView.ScrollPerPixel)
        self.substitution.setHorizontalScrollMode(QtWidgets.QAbstractItemView.ScrollPerPixel)
        self.substitution.setObjectName("substitution")
        self.substitution.setColumnCount(0)
        self.substitution.setRowCount(0)
        self.gridLayout.addWidget(self.substitution, 1, 0, 1, 2)
        self.optionWidget.addWidget(self.page_substitution)
        self.page_external = QtWidgets.QWidget()
        self.page_external.setObjectName("page_external")
        self.verticalLayout_6 = QtWidgets.QVBoxLayout(self.page_external)
        self.verticalLayout_6.setContentsMargins(0, 0, 0, 0)
        self.verticalLayout_6.setObjectName("verticalLayout_6")
        self.horizontalLayout_3 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_3.setObjectName("horizontalLayout_3")
        self.label_11 = QtWidgets.QLabel(self.page_external)
        self.label_11.setObjectName("label_11")
        self.horizontalLayout_3.addWidget(self.label_11)
        self.external_decoder = QtWidgets.QLineEdit(self.page_external)
        self.external_decoder.setObjectName("external_decoder")
        self.horizontalLayout_3.addWidget(self.external_decoder)
        self.btnChooseDecoder = QtWidgets.QToolButton(self.page_external)
        self.btnChooseDecoder.setObjectName("btnChooseDecoder")
        self.horizontalLayout_3.addWidget(self.btnChooseDecoder)
        self.verticalLayout_6.addLayout(self.horizontalLayout_3)
        self.horizontalLayout_4 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_4.setObjectName("horizontalLayout_4")
        self.label_12 = QtWidgets.QLabel(self.page_external)
        self.label_12.setObjectName("label_12")
        self.horizontalLayout_4.addWidget(self.label_12)
        self.external_encoder = QtWidgets.QLineEdit(self.page_external)
        self.external_encoder.setObjectName("external_encoder")
        self.horizontalLayout_4.addWidget(self.external_encoder)
        self.btnChooseEncoder = QtWidgets.QToolButton(self.page_external)
        self.btnChooseEncoder.setObjectName("btnChooseEncoder")
        self.horizontalLayout_4.addWidget(self.btnChooseEncoder)
        self.verticalLayout_6.addLayout(self.horizontalLayout_4)
        spacerItem3 = QtWidgets.QSpacerItem(20, 158, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
        self.verticalLayout_6.addItem(spacerItem3)
        self.optionWidget.addWidget(self.page_external)
        self.page_data_whitening = QtWidgets.QWidget()
        self.page_data_whitening.setObjectName("page_data_whitening")
        self.datawhitening_sync = QtWidgets.QLineEdit(self.page_data_whitening)
        self.datawhitening_sync.setGeometry(QtCore.QRect(0, 0, 171, 23))
        self.datawhitening_sync.setObjectName("datawhitening_sync")
        self.label_13 = QtWidgets.QLabel(self.page_data_whitening)
        self.label_13.setGeometry(QtCore.QRect(180, 0, 231, 20))
        self.label_13.setObjectName("label_13")
        self.datawhitening_polynomial = QtWidgets.QLineEdit(self.page_data_whitening)
        self.datawhitening_polynomial.setGeometry(QtCore.QRect(0, 30, 171, 23))
        self.datawhitening_polynomial.setObjectName("datawhitening_polynomial")
        self.label_14 = QtWidgets.QLabel(self.page_data_whitening)
        self.label_14.setGeometry(QtCore.QRect(180, 30, 341, 21))
        self.label_14.setObjectName("label_14")
        self.optionWidget.addWidget(self.page_data_whitening)
        self.page_cut = QtWidgets.QWidget()
        self.page_cut.setObjectName("page_cut")
        self.cutmark = QtWidgets.QLineEdit(self.page_cut)
        self.cutmark.setGeometry(QtCore.QRect(0, 30, 181, 31))
        self.cutmark.setObjectName("cutmark")
        self.label_15 = QtWidgets.QLabel(self.page_cut)
        self.label_15.setGeometry(QtCore.QRect(190, 30, 121, 31))
        self.label_15.setObjectName("label_15")
        self.rB_delbefore = QtWidgets.QRadioButton(self.page_cut)
        self.rB_delbefore.setGeometry(QtCore.QRect(0, 0, 131, 23))
        self.rB_delbefore.setObjectName("rB_delbefore")
        self.rB_delafter = QtWidgets.QRadioButton(self.page_cut)
        self.rB_delafter.setGeometry(QtCore.QRect(150, 0, 111, 23))
        self.rB_delafter.setObjectName("rB_delafter")
        self.rB_delbeforepos = QtWidgets.QRadioButton(self.page_cut)
        self.rB_delbeforepos.setGeometry(QtCore.QRect(0, 70, 111, 23))
        self.rB_delbeforepos.setObjectName("rB_delbeforepos")
        self.rB_delafterpos = QtWidgets.QRadioButton(self.page_cut)
        self.rB_delafterpos.setGeometry(QtCore.QRect(150, 70, 111, 23))
        self.rB_delafterpos.setObjectName("rB_delafterpos")
        self.cutmark2 = QtWidgets.QSpinBox(self.page_cut)
        self.cutmark2.setGeometry(QtCore.QRect(0, 100, 181, 33))
        self.cutmark2.setMaximum(1000)
        self.cutmark2.setObjectName("cutmark2")
        self.label_16 = QtWidgets.QLabel(self.page_cut)
        self.label_16.setGeometry(QtCore.QRect(190, 100, 121, 31))
        self.label_16.setObjectName("label_16")
        self.optionWidget.addWidget(self.page_cut)
        self.page_morse = QtWidgets.QWidget()
        self.page_morse.setObjectName("page_morse")
        self.label_17 = QtWidgets.QLabel(self.page_morse)
        self.label_17.setGeometry(QtCore.QRect(70, 10, 341, 21))
        self.label_17.setObjectName("label_17")
        self.morse_low = QtWidgets.QSpinBox(self.page_morse)
        self.morse_low.setGeometry(QtCore.QRect(10, 10, 56, 23))
        self.morse_low.setMinimum(1)
        self.morse_low.setProperty("value", 1)
        self.morse_low.setObjectName("morse_low")
        self.label_18 = QtWidgets.QLabel(self.page_morse)
        self.label_18.setGeometry(QtCore.QRect(70, 40, 351, 21))
        self.label_18.setObjectName("label_18")
        self.morse_high = QtWidgets.QSpinBox(self.page_morse)
        self.morse_high.setGeometry(QtCore.QRect(10, 40, 56, 23))
        self.morse_high.setMinimum(1)
        self.morse_high.setProperty("value", 3)
        self.morse_high.setObjectName("morse_high")
        self.label_19 = QtWidgets.QLabel(self.page_morse)
        self.label_19.setGeometry(QtCore.QRect(70, 70, 371, 21))
        self.label_19.setObjectName("label_19")
        self.morse_wait = QtWidgets.QSpinBox(self.page_morse)
        self.morse_wait.setGeometry(QtCore.QRect(10, 70, 56, 23))
        self.morse_wait.setMinimum(1)
        self.morse_wait.setProperty("value", 1)
        self.morse_wait.setObjectName("morse_wait")
        self.optionWidget.addWidget(self.page_morse)
        self.verticalLayout_5.addWidget(self.optionWidget)
        self.optionWidget.raise_()
        self.info.raise_()
        self.verticalLayout_3.addWidget(self.gb_infoandoptions)
        self.horizontalLayout.addLayout(self.verticalLayout_3)
        self.verticalLayout_4.addLayout(self.horizontalLayout)
        self.gridLayout_2 = QtWidgets.QGridLayout()
        self.gridLayout_2.setObjectName("gridLayout_2")
        self.label_3 = QtWidgets.QLabel(Decoder)
        self.label_3.setObjectName("label_3")
        self.gridLayout_2.addWidget(self.label_3, 4, 0, 1, 1)
        self.combobox_signals = QtWidgets.QComboBox(Decoder)
        self.combobox_signals.setObjectName("combobox_signals")
        self.combobox_signals.addItem("")
        self.gridLayout_2.addWidget(self.combobox_signals, 1, 0, 1, 1)
        self.output = QtWidgets.QLineEdit(Decoder)
        self.output.setReadOnly(True)
        self.output.setObjectName("output")
        self.gridLayout_2.addWidget(self.output, 5, 0, 1, 2)
        self.decoding_errors_label = QtWidgets.QLabel(Decoder)
        self.decoding_errors_label.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
        self.decoding_errors_label.setObjectName("decoding_errors_label")
        self.gridLayout_2.addWidget(self.decoding_errors_label, 4, 1, 1, 1)
        self.label_2 = QtWidgets.QLabel(Decoder)
        self.label_2.setObjectName("label_2")
        self.gridLayout_2.addWidget(self.label_2, 0, 0, 1, 1)
        self.inpt = QtWidgets.QLineEdit(Decoder)
        self.inpt.setInputMethodHints(QtCore.Qt.ImhDigitsOnly)
        self.inpt.setObjectName("inpt")
        self.gridLayout_2.addWidget(self.inpt, 1, 1, 1, 1)
        spacerItem4 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_2.addItem(spacerItem4, 0, 1, 1, 1)
        self.graphicsView_signal = ZoomableGraphicView(Decoder)
        self.graphicsView_signal.setObjectName("graphicsView_signal")
        self.gridLayout_2.addWidget(self.graphicsView_signal, 2, 0, 1, 2)
        self.graphicsView_decoded = ZoomableGraphicView(Decoder)
        self.graphicsView_decoded.setObjectName("graphicsView_decoded")
        self.gridLayout_2.addWidget(self.graphicsView_decoded, 3, 0, 1, 2)
        self.verticalLayout_4.addLayout(self.gridLayout_2)

        self.retranslateUi(Decoder)
        self.optionWidget.setCurrentIndex(5)
        QtCore.QMetaObject.connectSlotsByName(Decoder)

    def retranslateUi(self, Decoder):
        _translate = QtCore.QCoreApplication.translate
        Decoder.setWindowTitle(_translate("Decoder", "Decoding"))
        self.combobox_decodings.setItemText(0, _translate("Decoder", "Non Return to Zero (NRZ)"))
        self.combobox_decodings.setItemText(1, _translate("Decoder", "Empty"))
        self.delete_decoding.setText(_translate("Decoder", "Delete"))
        self.saveas.setText(_translate("Decoder", "Save as..."))
        self.label_8.setText(_translate("Decoder", "Base Functions"))
        self.label_9.setText(_translate("Decoder", "Additional Functions"))
        self.label.setText(_translate("Decoder", "Decoder"))
        self.label_4.setText(_translate("Decoder", "Signal"))
        self.label_7.setText(_translate("Decoder", "Decoded Bits"))
        self.gb_infoandoptions.setTitle(_translate("Decoder", "Information and Options"))
        self.info.setText(_translate("Decoder", "Please drag functions from the categories base and additional to the decoding process (Decoder). You can reorder functions by drag and drop and remove functions by dropping them outside the Decoder box. Click on every function for detailed information."))
        self.label_5.setText(_translate("Decoder", "Number of redundant bits"))
        self.label_6.setText(_translate("Decoder", "Carrier (\'1_\' -> 1_1_1_...)"))
        self.label_10.setText(_translate("Decoder", "Rows"))
        self.label_11.setText(_translate("Decoder", "Decoder"))
        self.btnChooseDecoder.setText(_translate("Decoder", "..."))
        self.label_12.setText(_translate("Decoder", "Encoder"))
        self.btnChooseEncoder.setText(_translate("Decoder", "..."))
        self.label_13.setText(_translate("Decoder", "Synchronization bytes (hex coded)"))
        self.label_14.setText(_translate("Decoder", "Data whitening polynomial (LFSR, hex, w/o first bit)"))
        self.cutmark.setText(_translate("Decoder", "1010"))
        self.label_15.setText(_translate("Decoder", "Sequence"))
        self.rB_delbefore.setText(_translate("Decoder", "&Cut before"))
        self.rB_delafter.setText(_translate("Decoder", "Cut afte&r"))
        self.rB_delbeforepos.setText(_translate("Decoder", "Cut before"))
        self.rB_delafterpos.setText(_translate("Decoder", "Cut after"))
        self.label_16.setText(_translate("Decoder", "Position (in bit)"))
        self.label_17.setText(_translate("Decoder", "Maximum (<=) length of 1-sequence for: Low (0)"))
        self.label_18.setText(_translate("Decoder", "Minimum (>=) length of 1-sequence for: High (1)"))
        self.label_19.setText(_translate("Decoder", "Number of 0s between 1-sequences (just for encoding)"))
        self.label_3.setText(_translate("Decoder", "Decoded Bits:"))
        self.combobox_signals.setItemText(0, _translate("Decoder", "Test"))
        self.decoding_errors_label.setText(_translate("Decoder", "[Decoding Errors = 0]"))
        self.label_2.setText(_translate("Decoder", "Signal {0,1}:"))
Esempio n. 4
0
class Ui_Decoder(object):
    def setupUi(self, Decoder):
        Decoder.setObjectName("Decoder")
        Decoder.setWindowModality(QtCore.Qt.WindowModal)
        Decoder.resize(923, 685)
        Decoder.setModal(True)
        self.verticalLayout_4 = QtWidgets.QVBoxLayout(Decoder)
        self.verticalLayout_4.setObjectName("verticalLayout_4")
        self.horizontalLayout_2 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_2.setObjectName("horizontalLayout_2")
        self.combobox_decodings = QtWidgets.QComboBox(Decoder)
        self.combobox_decodings.setObjectName("combobox_decodings")
        self.combobox_decodings.addItem("")
        self.combobox_decodings.addItem("")
        self.horizontalLayout_2.addWidget(self.combobox_decodings)
        self.delete_decoding = QtWidgets.QPushButton(Decoder)
        self.delete_decoding.setObjectName("delete_decoding")
        self.horizontalLayout_2.addWidget(self.delete_decoding)
        self.saveas = QtWidgets.QPushButton(Decoder)
        self.saveas.setObjectName("saveas")
        self.horizontalLayout_2.addWidget(self.saveas)
        spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
        self.horizontalLayout_2.addItem(spacerItem)
        self.verticalLayout_4.addLayout(self.horizontalLayout_2)
        self.horizontalLayout = QtWidgets.QHBoxLayout()
        self.horizontalLayout.setObjectName("horizontalLayout")
        self.verticalLayout_2 = QtWidgets.QVBoxLayout()
        self.verticalLayout_2.setObjectName("verticalLayout_2")
        self.label_8 = QtWidgets.QLabel(Decoder)
        self.label_8.setObjectName("label_8")
        self.verticalLayout_2.addWidget(self.label_8)
        self.basefunctions = QtWidgets.QListWidget(Decoder)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.basefunctions.sizePolicy().hasHeightForWidth())
        self.basefunctions.setSizePolicy(sizePolicy)
        font = QtGui.QFont()
        font.setBold(False)
        font.setWeight(50)
        self.basefunctions.setFont(font)
        self.basefunctions.setDragEnabled(True)
        self.basefunctions.setDragDropMode(QtWidgets.QAbstractItemView.DragOnly)
        self.basefunctions.setObjectName("basefunctions")
        self.verticalLayout_2.addWidget(self.basefunctions)
        self.label_9 = QtWidgets.QLabel(Decoder)
        self.label_9.setObjectName("label_9")
        self.verticalLayout_2.addWidget(self.label_9)
        self.additionalfunctions = QtWidgets.QListWidget(Decoder)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.additionalfunctions.sizePolicy().hasHeightForWidth())
        self.additionalfunctions.setSizePolicy(sizePolicy)
        self.additionalfunctions.setDragEnabled(True)
        self.additionalfunctions.setDragDropMode(QtWidgets.QAbstractItemView.DragOnly)
        self.additionalfunctions.setObjectName("additionalfunctions")
        self.verticalLayout_2.addWidget(self.additionalfunctions)
        self.horizontalLayout.addLayout(self.verticalLayout_2)
        spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Minimum)
        self.horizontalLayout.addItem(spacerItem1)
        self.verticalLayout = QtWidgets.QVBoxLayout()
        self.verticalLayout.setObjectName("verticalLayout")
        self.label = QtWidgets.QLabel(Decoder)
        font = QtGui.QFont()
        font.setPointSize(11)
        font.setBold(True)
        font.setWeight(75)
        self.label.setFont(font)
        self.label.setAlignment(QtCore.Qt.AlignCenter)
        self.label.setObjectName("label")
        self.verticalLayout.addWidget(self.label)
        self.label_4 = QtWidgets.QLabel(Decoder)
        font = QtGui.QFont()
        font.setItalic(True)
        font.setStrikeOut(False)
        self.label_4.setFont(font)
        self.label_4.setAlignment(QtCore.Qt.AlignCenter)
        self.label_4.setObjectName("label_4")
        self.verticalLayout.addWidget(self.label_4)
        self.decoderchain = ListWidget(Decoder)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.decoderchain.sizePolicy().hasHeightForWidth())
        self.decoderchain.setSizePolicy(sizePolicy)
        self.decoderchain.setAcceptDrops(True)
        self.decoderchain.setDragEnabled(True)
        self.decoderchain.setDragDropMode(QtWidgets.QAbstractItemView.DragDrop)
        self.decoderchain.setDefaultDropAction(QtCore.Qt.MoveAction)
        self.decoderchain.setTextElideMode(QtCore.Qt.ElideMiddle)
        self.decoderchain.setResizeMode(QtWidgets.QListView.Fixed)
        self.decoderchain.setViewMode(QtWidgets.QListView.ListMode)
        self.decoderchain.setObjectName("decoderchain")
        self.verticalLayout.addWidget(self.decoderchain)
        self.label_7 = QtWidgets.QLabel(Decoder)
        font = QtGui.QFont()
        font.setItalic(True)
        self.label_7.setFont(font)
        self.label_7.setAlignment(QtCore.Qt.AlignCenter)
        self.label_7.setObjectName("label_7")
        self.verticalLayout.addWidget(self.label_7)
        self.horizontalLayout.addLayout(self.verticalLayout)
        spacerItem2 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Minimum)
        self.horizontalLayout.addItem(spacerItem2)
        self.verticalLayout_3 = QtWidgets.QVBoxLayout()
        self.verticalLayout_3.setObjectName("verticalLayout_3")
        self.gb_infoandoptions = QtWidgets.QGroupBox(Decoder)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.gb_infoandoptions.sizePolicy().hasHeightForWidth())
        self.gb_infoandoptions.setSizePolicy(sizePolicy)
        self.gb_infoandoptions.setObjectName("gb_infoandoptions")
        self.verticalLayout_5 = QtWidgets.QVBoxLayout(self.gb_infoandoptions)
        self.verticalLayout_5.setObjectName("verticalLayout_5")
        self.info = QtWidgets.QLabel(self.gb_infoandoptions)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.info.sizePolicy().hasHeightForWidth())
        self.info.setSizePolicy(sizePolicy)
        font = QtGui.QFont()
        font.setItalic(True)
        self.info.setFont(font)
        self.info.setTextFormat(QtCore.Qt.PlainText)
        self.info.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignTop)
        self.info.setWordWrap(True)
        self.info.setObjectName("info")
        self.verticalLayout_5.addWidget(self.info)
        self.optionWidget = QtWidgets.QStackedWidget(self.gb_infoandoptions)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.optionWidget.sizePolicy().hasHeightForWidth())
        self.optionWidget.setSizePolicy(sizePolicy)
        self.optionWidget.setObjectName("optionWidget")
        self.page_empty = QtWidgets.QWidget()
        self.page_empty.setObjectName("page_empty")
        self.optionWidget.addWidget(self.page_empty)
        self.page_redundancy = QtWidgets.QWidget()
        self.page_redundancy.setObjectName("page_redundancy")
        self.multiple = QtWidgets.QSpinBox(self.page_redundancy)
        self.multiple.setGeometry(QtCore.QRect(0, 0, 56, 23))
        self.multiple.setMinimum(2)
        self.multiple.setObjectName("multiple")
        self.label_5 = QtWidgets.QLabel(self.page_redundancy)
        self.label_5.setGeometry(QtCore.QRect(60, 0, 171, 21))
        self.label_5.setObjectName("label_5")
        self.optionWidget.addWidget(self.page_redundancy)
        self.page_carrier = QtWidgets.QWidget()
        self.page_carrier.setObjectName("page_carrier")
        self.carrier = QtWidgets.QLineEdit(self.page_carrier)
        self.carrier.setGeometry(QtCore.QRect(0, 0, 113, 23))
        self.carrier.setObjectName("carrier")
        self.label_6 = QtWidgets.QLabel(self.page_carrier)
        self.label_6.setGeometry(QtCore.QRect(120, 0, 171, 21))
        self.label_6.setObjectName("label_6")
        self.optionWidget.addWidget(self.page_carrier)
        self.page_substitution = QtWidgets.QWidget()
        self.page_substitution.setObjectName("page_substitution")
        self.gridLayout = QtWidgets.QGridLayout(self.page_substitution)
        self.gridLayout.setObjectName("gridLayout")
        self.substitution_rows = QtWidgets.QSpinBox(self.page_substitution)
        self.substitution_rows.setMinimum(1)
        self.substitution_rows.setMaximum(1000)
        self.substitution_rows.setProperty("value", 4)
        self.substitution_rows.setObjectName("substitution_rows")
        self.gridLayout.addWidget(self.substitution_rows, 0, 0, 1, 1)
        self.label_10 = QtWidgets.QLabel(self.page_substitution)
        self.label_10.setObjectName("label_10")
        self.gridLayout.addWidget(self.label_10, 0, 1, 1, 1)
        self.substitution = QtWidgets.QTableWidget(self.page_substitution)
        self.substitution.setVerticalScrollMode(QtWidgets.QAbstractItemView.ScrollPerPixel)
        self.substitution.setHorizontalScrollMode(QtWidgets.QAbstractItemView.ScrollPerPixel)
        self.substitution.setObjectName("substitution")
        self.substitution.setColumnCount(0)
        self.substitution.setRowCount(0)
        self.gridLayout.addWidget(self.substitution, 1, 0, 1, 2)
        self.optionWidget.addWidget(self.page_substitution)
        self.page_external = QtWidgets.QWidget()
        self.page_external.setObjectName("page_external")
        self.external_decoder = QtWidgets.QLineEdit(self.page_external)
        self.external_decoder.setGeometry(QtCore.QRect(0, 0, 291, 23))
        self.external_decoder.setObjectName("external_decoder")
        self.external_encoder = QtWidgets.QLineEdit(self.page_external)
        self.external_encoder.setGeometry(QtCore.QRect(0, 30, 291, 23))
        self.external_encoder.setObjectName("external_encoder")
        self.label_11 = QtWidgets.QLabel(self.page_external)
        self.label_11.setGeometry(QtCore.QRect(300, 0, 71, 21))
        self.label_11.setObjectName("label_11")
        self.label_12 = QtWidgets.QLabel(self.page_external)
        self.label_12.setGeometry(QtCore.QRect(300, 30, 71, 21))
        self.label_12.setObjectName("label_12")
        self.optionWidget.addWidget(self.page_external)
        self.page_data_whitening = QtWidgets.QWidget()
        self.page_data_whitening.setObjectName("page_data_whitening")
        self.datawhitening_sync = QtWidgets.QLineEdit(self.page_data_whitening)
        self.datawhitening_sync.setGeometry(QtCore.QRect(0, 0, 171, 23))
        self.datawhitening_sync.setObjectName("datawhitening_sync")
        self.label_13 = QtWidgets.QLabel(self.page_data_whitening)
        self.label_13.setGeometry(QtCore.QRect(180, 0, 231, 20))
        self.label_13.setObjectName("label_13")
        self.datawhitening_polynomial = QtWidgets.QLineEdit(self.page_data_whitening)
        self.datawhitening_polynomial.setGeometry(QtCore.QRect(0, 30, 171, 23))
        self.datawhitening_polynomial.setObjectName("datawhitening_polynomial")
        self.label_14 = QtWidgets.QLabel(self.page_data_whitening)
        self.label_14.setGeometry(QtCore.QRect(180, 30, 291, 21))
        self.label_14.setObjectName("label_14")
        self.datawhitening_applycrc = QtWidgets.QCheckBox(self.page_data_whitening)
        self.datawhitening_applycrc.setGeometry(QtCore.QRect(0, 60, 261, 21))
        self.datawhitening_applycrc.setObjectName("datawhitening_applycrc")
        self.datawhitening_preamble_rm = QtWidgets.QCheckBox(self.page_data_whitening)
        self.datawhitening_preamble_rm.setGeometry(QtCore.QRect(0, 80, 221, 21))
        self.datawhitening_preamble_rm.setObjectName("datawhitening_preamble_rm")
        self.datawhitening_sync_rm = QtWidgets.QCheckBox(self.page_data_whitening)
        self.datawhitening_sync_rm.setGeometry(QtCore.QRect(0, 100, 261, 21))
        self.datawhitening_sync_rm.setObjectName("datawhitening_sync_rm")
        self.datawhitening_crc_rm = QtWidgets.QCheckBox(self.page_data_whitening)
        self.datawhitening_crc_rm.setGeometry(QtCore.QRect(0, 120, 131, 21))
        self.datawhitening_crc_rm.setObjectName("datawhitening_crc_rm")
        self.optionWidget.addWidget(self.page_data_whitening)
        self.verticalLayout_5.addWidget(self.optionWidget)
        self.optionWidget.raise_()
        self.info.raise_()
        self.verticalLayout_3.addWidget(self.gb_infoandoptions)
        self.horizontalLayout.addLayout(self.verticalLayout_3)
        self.verticalLayout_4.addLayout(self.horizontalLayout)
        self.gridLayout_2 = QtWidgets.QGridLayout()
        self.gridLayout_2.setObjectName("gridLayout_2")
        self.label_3 = QtWidgets.QLabel(Decoder)
        self.label_3.setObjectName("label_3")
        self.gridLayout_2.addWidget(self.label_3, 4, 0, 1, 1)
        self.combobox_signals = QtWidgets.QComboBox(Decoder)
        self.combobox_signals.setObjectName("combobox_signals")
        self.combobox_signals.addItem("")
        self.gridLayout_2.addWidget(self.combobox_signals, 1, 0, 1, 1)
        self.output = QtWidgets.QLineEdit(Decoder)
        self.output.setReadOnly(True)
        self.output.setObjectName("output")
        self.gridLayout_2.addWidget(self.output, 5, 0, 1, 2)
        self.decoding_errors_label = QtWidgets.QLabel(Decoder)
        self.decoding_errors_label.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
        self.decoding_errors_label.setObjectName("decoding_errors_label")
        self.gridLayout_2.addWidget(self.decoding_errors_label, 4, 1, 1, 1)
        self.label_2 = QtWidgets.QLabel(Decoder)
        self.label_2.setObjectName("label_2")
        self.gridLayout_2.addWidget(self.label_2, 0, 0, 1, 1)
        self.inpt = QtWidgets.QLineEdit(Decoder)
        self.inpt.setInputMethodHints(QtCore.Qt.ImhDigitsOnly)
        self.inpt.setObjectName("inpt")
        self.gridLayout_2.addWidget(self.inpt, 1, 1, 1, 1)
        spacerItem3 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_2.addItem(spacerItem3, 0, 1, 1, 1)
        self.graphicsView_signal = ZoomableGraphicView(Decoder)
        self.graphicsView_signal.setMinimumSize(QtCore.QSize(0, 0))
        self.graphicsView_signal.setObjectName("graphicsView_signal")
        self.gridLayout_2.addWidget(self.graphicsView_signal, 2, 0, 1, 2)
        self.graphicsView_decoded = ZoomableGraphicView(Decoder)
        self.graphicsView_decoded.setMinimumSize(QtCore.QSize(0, 0))
        self.graphicsView_decoded.setObjectName("graphicsView_decoded")
        self.gridLayout_2.addWidget(self.graphicsView_decoded, 3, 0, 1, 2)
        self.verticalLayout_4.addLayout(self.gridLayout_2)

        self.retranslateUi(Decoder)
        self.optionWidget.setCurrentIndex(5)
        QtCore.QMetaObject.connectSlotsByName(Decoder)

    def retranslateUi(self, Decoder):
        _translate = QtCore.QCoreApplication.translate
        Decoder.setWindowTitle(_translate("Decoder", "Decoding"))
        self.combobox_decodings.setItemText(0, _translate("Decoder", "Non Return to Zero (NRZ)"))
        self.combobox_decodings.setItemText(1, _translate("Decoder", "Empty"))
        self.delete_decoding.setText(_translate("Decoder", "Delete"))
        self.saveas.setText(_translate("Decoder", "Save as..."))
        self.label_8.setText(_translate("Decoder", "Base Functions"))
        self.label_9.setText(_translate("Decoder", "Additional Functions"))
        self.label.setText(_translate("Decoder", "Decoder"))
        self.label_4.setText(_translate("Decoder", "Signal"))
        self.label_7.setText(_translate("Decoder", "Decoded Bits"))
        self.gb_infoandoptions.setTitle(_translate("Decoder", "Information and Options"))
        self.info.setText(_translate("Decoder", "Please drag functions from the categories base and additional to the decoding process (Decoder). You can reorder functions by drag and drop and remove functions by dropping them outside the Decoder box. Click on every function for detailed information."))
        self.label_5.setText(_translate("Decoder", "Number of redundant bits"))
        self.label_6.setText(_translate("Decoder", "Carrier (\'1\' -> 1_1_1_1...)"))
        self.label_10.setText(_translate("Decoder", "Rows"))
        self.label_11.setText(_translate("Decoder", "Decoder"))
        self.label_12.setText(_translate("Decoder", "Encoder"))
        self.label_13.setText(_translate("Decoder", "Synchronization bytes (hex coded)"))
        self.label_14.setText(_translate("Decoder", "Data whitening polynomial (LFSR, hex coded)"))
        self.datawhitening_applycrc.setText(_translate("Decoder", "Compute and apply CRC-16 via XOR"))
        self.datawhitening_preamble_rm.setText(_translate("Decoder", "Remove Preamble (1010...)"))
        self.datawhitening_sync_rm.setText(_translate("Decoder", "Remove Synchronization bytes"))
        self.datawhitening_crc_rm.setText(_translate("Decoder", "Remove CRC-16"))
        self.label_3.setText(_translate("Decoder", "Decoded Bits:"))
        self.combobox_signals.setItemText(0, _translate("Decoder", "Test"))
        self.decoding_errors_label.setText(_translate("Decoder", "[Decoding Errors = 0]"))
        self.label_2.setText(_translate("Decoder", "Signal {0,1}:"))
Esempio n. 5
0
class Ui_DialogModulation(object):
    def setupUi(self, DialogModulation):
        DialogModulation.setObjectName("DialogModulation")
        DialogModulation.resize(1006, 1041)
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(":/icons/data/icons/modulation.svg"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        DialogModulation.setWindowIcon(icon)
        self.verticalLayout = QtWidgets.QVBoxLayout(DialogModulation)
        self.verticalLayout.setObjectName("verticalLayout")
        self.gridLayout_5 = QtWidgets.QGridLayout()
        self.gridLayout_5.setObjectName("gridLayout_5")
        self.comboBoxCustomModulations = QtWidgets.QComboBox(DialogModulation)
        self.comboBoxCustomModulations.setEditable(True)
        self.comboBoxCustomModulations.setInsertPolicy(QtWidgets.QComboBox.InsertAtCurrent)
        self.comboBoxCustomModulations.setSizeAdjustPolicy(QtWidgets.QComboBox.AdjustToContents)
        self.comboBoxCustomModulations.setObjectName("comboBoxCustomModulations")
        self.comboBoxCustomModulations.addItem("")
        self.gridLayout_5.addWidget(self.comboBoxCustomModulations, 0, 0, 1, 1)
        self.btnAddModulation = QtWidgets.QToolButton(DialogModulation)
        icon = QtGui.QIcon.fromTheme("list-add")
        self.btnAddModulation.setIcon(icon)
        self.btnAddModulation.setObjectName("btnAddModulation")
        self.gridLayout_5.addWidget(self.btnAddModulation, 0, 1, 1, 1)
        self.btnRemoveModulation = QtWidgets.QToolButton(DialogModulation)
        icon = QtGui.QIcon.fromTheme("list-remove")
        self.btnRemoveModulation.setIcon(icon)
        self.btnRemoveModulation.setObjectName("btnRemoveModulation")
        self.gridLayout_5.addWidget(self.btnRemoveModulation, 0, 2, 1, 1)
        self.verticalLayout.addLayout(self.gridLayout_5)
        self.scrollArea = QtWidgets.QScrollArea(DialogModulation)
        self.scrollArea.setFrameShape(QtWidgets.QFrame.NoFrame)
        self.scrollArea.setWidgetResizable(True)
        self.scrollArea.setObjectName("scrollArea")
        self.scrollAreaWidgetContents_2 = QtWidgets.QWidget()
        self.scrollAreaWidgetContents_2.setGeometry(QtCore.QRect(0, 0, 984, 976))
        self.scrollAreaWidgetContents_2.setObjectName("scrollAreaWidgetContents_2")
        self.gridLayout_7 = QtWidgets.QGridLayout(self.scrollAreaWidgetContents_2)
        self.gridLayout_7.setContentsMargins(0, 0, 0, 0)
        self.gridLayout_7.setObjectName("gridLayout_7")
        self.lPlus = QtWidgets.QLabel(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.lPlus.sizePolicy().hasHeightForWidth())
        self.lPlus.setSizePolicy(sizePolicy)
        self.lPlus.setMaximumSize(QtCore.QSize(32, 32))
        self.lPlus.setText("")
        self.lPlus.setPixmap(QtGui.QPixmap(":/icons/data/icons/plus.svg"))
        self.lPlus.setScaledContents(True)
        self.lPlus.setAlignment(QtCore.Qt.AlignCenter)
        self.lPlus.setObjectName("lPlus")
        self.gridLayout_7.addWidget(self.lPlus, 2, 2, 1, 1)
        self.gridLayout_2 = QtWidgets.QGridLayout()
        self.gridLayout_2.setObjectName("gridLayout_2")
        self.spinBoxBitLength = QtWidgets.QSpinBox(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.spinBoxBitLength.sizePolicy().hasHeightForWidth())
        self.spinBoxBitLength.setSizePolicy(sizePolicy)
        self.spinBoxBitLength.setMinimum(1)
        self.spinBoxBitLength.setMaximum(999999)
        self.spinBoxBitLength.setObjectName("spinBoxBitLength")
        self.gridLayout_2.addWidget(self.spinBoxBitLength, 3, 1, 1, 1)
        self.spinBoxSampleRate = KillerDoubleSpinBox(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.spinBoxSampleRate.sizePolicy().hasHeightForWidth())
        self.spinBoxSampleRate.setSizePolicy(sizePolicy)
        self.spinBoxSampleRate.setDecimals(3)
        self.spinBoxSampleRate.setMinimum(0.001)
        self.spinBoxSampleRate.setMaximum(999999999.0)
        self.spinBoxSampleRate.setObjectName("spinBoxSampleRate")
        self.gridLayout_2.addWidget(self.spinBoxSampleRate, 4, 1, 1, 1)
        self.label = QtWidgets.QLabel(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label.sizePolicy().hasHeightForWidth())
        self.label.setSizePolicy(sizePolicy)
        self.label.setObjectName("label")
        self.gridLayout_2.addWidget(self.label, 3, 0, 1, 1)
        self.label_3 = QtWidgets.QLabel(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_3.sizePolicy().hasHeightForWidth())
        self.label_3.setSizePolicy(sizePolicy)
        self.label_3.setObjectName("label_3")
        self.gridLayout_2.addWidget(self.label_3, 4, 0, 1, 1)
        spacerItem = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
        self.gridLayout_2.addItem(spacerItem, 5, 0, 1, 1)
        self.linEdDataBits = QtWidgets.QLineEdit(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.linEdDataBits.sizePolicy().hasHeightForWidth())
        self.linEdDataBits.setSizePolicy(sizePolicy)
        self.linEdDataBits.setObjectName("linEdDataBits")
        self.gridLayout_2.addWidget(self.linEdDataBits, 0, 0, 1, 1)
        self.btnRestoreBits = QtWidgets.QPushButton(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.btnRestoreBits.sizePolicy().hasHeightForWidth())
        self.btnRestoreBits.setSizePolicy(sizePolicy)
        self.btnRestoreBits.setObjectName("btnRestoreBits")
        self.gridLayout_2.addWidget(self.btnRestoreBits, 0, 1, 1, 1)
        self.gridLayout_7.addLayout(self.gridLayout_2, 3, 0, 1, 1)
        spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_7.addItem(spacerItem1, 2, 3, 1, 1)
        self.lEqual = QtWidgets.QLabel(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.lEqual.sizePolicy().hasHeightForWidth())
        self.lEqual.setSizePolicy(sizePolicy)
        self.lEqual.setMaximumSize(QtCore.QSize(32, 32))
        self.lEqual.setText("")
        self.lEqual.setPixmap(QtGui.QPixmap(":/icons/data/icons/equals.svg"))
        self.lEqual.setScaledContents(True)
        self.lEqual.setAlignment(QtCore.Qt.AlignCenter)
        self.lEqual.setObjectName("lEqual")
        self.gridLayout_7.addWidget(self.lEqual, 4, 2, 1, 1)
        self.label_5 = QtWidgets.QLabel(self.scrollAreaWidgetContents_2)
        font = QtGui.QFont()
        font.setBold(True)
        font.setWeight(75)
        self.label_5.setFont(font)
        self.label_5.setObjectName("label_5")
        self.gridLayout_7.addWidget(self.label_5, 2, 0, 1, 1)
        spacerItem2 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_7.addItem(spacerItem2, 4, 1, 1, 1)
        self.label_4 = QtWidgets.QLabel(self.scrollAreaWidgetContents_2)
        font = QtGui.QFont()
        font.setBold(True)
        font.setWeight(75)
        self.label_4.setFont(font)
        self.label_4.setObjectName("label_4")
        self.gridLayout_7.addWidget(self.label_4, 0, 0, 1, 1)
        self.gVData = ZoomableGraphicView(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.gVData.sizePolicy().hasHeightForWidth())
        self.gVData.setSizePolicy(sizePolicy)
        self.gVData.setAcceptDrops(False)
        self.gVData.setVerticalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOff)
        self.gVData.setHorizontalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOn)
        self.gVData.setRenderHints(QtGui.QPainter.Antialiasing|QtGui.QPainter.HighQualityAntialiasing)
        self.gVData.setDragMode(QtWidgets.QGraphicsView.NoDrag)
        self.gVData.setObjectName("gVData")
        self.gridLayout_7.addWidget(self.gVData, 3, 1, 1, 3)
        spacerItem3 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_7.addItem(spacerItem3, 4, 3, 1, 1)
        self.lEqual_qm = QtWidgets.QLabel(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.lEqual_qm.sizePolicy().hasHeightForWidth())
        self.lEqual_qm.setSizePolicy(sizePolicy)
        self.lEqual_qm.setMaximumSize(QtCore.QSize(32, 32))
        self.lEqual_qm.setText("")
        self.lEqual_qm.setPixmap(QtGui.QPixmap(":/icons/data/icons/equals_qm.svg"))
        self.lEqual_qm.setScaledContents(True)
        self.lEqual_qm.setAlignment(QtCore.Qt.AlignCenter)
        self.lEqual_qm.setObjectName("lEqual_qm")
        self.gridLayout_7.addWidget(self.lEqual_qm, 7, 2, 1, 1)
        spacerItem4 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_7.addItem(spacerItem4, 2, 1, 1, 1)
        self.gridLayout_6 = QtWidgets.QGridLayout()
        self.gridLayout_6.setObjectName("gridLayout_6")
        self.cbShowDataBitsOnly = QtWidgets.QCheckBox(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.cbShowDataBitsOnly.sizePolicy().hasHeightForWidth())
        self.cbShowDataBitsOnly.setSizePolicy(sizePolicy)
        self.cbShowDataBitsOnly.setMinimumSize(QtCore.QSize(0, 0))
        self.cbShowDataBitsOnly.setMaximumSize(QtCore.QSize(16777215, 16777215))
        self.cbShowDataBitsOnly.setObjectName("cbShowDataBitsOnly")
        self.gridLayout_6.addWidget(self.cbShowDataBitsOnly, 2, 0, 1, 2)
        self.treeViewSignals = ModulatorTreeView(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.treeViewSignals.sizePolicy().hasHeightForWidth())
        self.treeViewSignals.setSizePolicy(sizePolicy)
        self.treeViewSignals.setProperty("showDropIndicator", True)
        self.treeViewSignals.setDragEnabled(True)
        self.treeViewSignals.setDragDropMode(QtWidgets.QAbstractItemView.DragOnly)
        self.treeViewSignals.setHeaderHidden(True)
        self.treeViewSignals.setObjectName("treeViewSignals")
        self.gridLayout_6.addWidget(self.treeViewSignals, 0, 0, 1, 2)
        self.lSamplesInViewOrigSignalText = QtWidgets.QLabel(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.lSamplesInViewOrigSignalText.sizePolicy().hasHeightForWidth())
        self.lSamplesInViewOrigSignalText.setSizePolicy(sizePolicy)
        self.lSamplesInViewOrigSignalText.setObjectName("lSamplesInViewOrigSignalText")
        self.gridLayout_6.addWidget(self.lSamplesInViewOrigSignalText, 5, 0, 1, 1)
        self.lOriginalSignalSamplesSelected = QtWidgets.QLabel(self.scrollAreaWidgetContents_2)
        self.lOriginalSignalSamplesSelected.setObjectName("lOriginalSignalSamplesSelected")
        self.gridLayout_6.addWidget(self.lOriginalSignalSamplesSelected, 6, 1, 1, 1)
        self.label_10 = QtWidgets.QLabel(self.scrollAreaWidgetContents_2)
        self.label_10.setObjectName("label_10")
        self.gridLayout_6.addWidget(self.label_10, 6, 0, 1, 1)
        self.lSamplesInViewOrigSignal = QtWidgets.QLabel(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.lSamplesInViewOrigSignal.sizePolicy().hasHeightForWidth())
        self.lSamplesInViewOrigSignal.setSizePolicy(sizePolicy)
        self.lSamplesInViewOrigSignal.setObjectName("lSamplesInViewOrigSignal")
        self.gridLayout_6.addWidget(self.lSamplesInViewOrigSignal, 5, 1, 1, 1)
        self.gridLayout_4 = QtWidgets.QGridLayout()
        self.gridLayout_4.setObjectName("gridLayout_4")
        self.btnSearchPrev = QtWidgets.QPushButton(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.btnSearchPrev.sizePolicy().hasHeightForWidth())
        self.btnSearchPrev.setSizePolicy(sizePolicy)
        self.btnSearchPrev.setMaximumSize(QtCore.QSize(16777215, 16777215))
        self.btnSearchPrev.setText("")
        icon = QtGui.QIcon.fromTheme("go-previous")
        self.btnSearchPrev.setIcon(icon)
        self.btnSearchPrev.setObjectName("btnSearchPrev")
        self.gridLayout_4.addWidget(self.btnSearchPrev, 0, 0, 1, 1)
        self.lCurrentSearchResult = QtWidgets.QLabel(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.lCurrentSearchResult.sizePolicy().hasHeightForWidth())
        self.lCurrentSearchResult.setSizePolicy(sizePolicy)
        self.lCurrentSearchResult.setMinimumSize(QtCore.QSize(0, 0))
        self.lCurrentSearchResult.setMaximumSize(QtCore.QSize(16777215, 16777215))
        self.lCurrentSearchResult.setAlignment(QtCore.Qt.AlignCenter)
        self.lCurrentSearchResult.setObjectName("lCurrentSearchResult")
        self.gridLayout_4.addWidget(self.lCurrentSearchResult, 0, 1, 1, 1)
        self.lSlash = QtWidgets.QLabel(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.lSlash.sizePolicy().hasHeightForWidth())
        self.lSlash.setSizePolicy(sizePolicy)
        self.lSlash.setMaximumSize(QtCore.QSize(7, 16777215))
        self.lSlash.setObjectName("lSlash")
        self.gridLayout_4.addWidget(self.lSlash, 0, 2, 1, 1)
        self.lTotalSearchresults = QtWidgets.QLabel(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.lTotalSearchresults.sizePolicy().hasHeightForWidth())
        self.lTotalSearchresults.setSizePolicy(sizePolicy)
        self.lTotalSearchresults.setMaximumSize(QtCore.QSize(16777215, 16777215))
        self.lTotalSearchresults.setAlignment(QtCore.Qt.AlignCenter)
        self.lTotalSearchresults.setObjectName("lTotalSearchresults")
        self.gridLayout_4.addWidget(self.lTotalSearchresults, 0, 3, 1, 1)
        self.btnSearchNext = QtWidgets.QPushButton(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.btnSearchNext.sizePolicy().hasHeightForWidth())
        self.btnSearchNext.setSizePolicy(sizePolicy)
        self.btnSearchNext.setMaximumSize(QtCore.QSize(16777215, 16777215))
        self.btnSearchNext.setText("")
        icon = QtGui.QIcon.fromTheme("go-next")
        self.btnSearchNext.setIcon(icon)
        self.btnSearchNext.setObjectName("btnSearchNext")
        self.gridLayout_4.addWidget(self.btnSearchNext, 0, 4, 1, 1)
        self.gridLayout_6.addLayout(self.gridLayout_4, 4, 0, 1, 2)
        self.chkBoxLockSIV = QtWidgets.QCheckBox(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.chkBoxLockSIV.sizePolicy().hasHeightForWidth())
        self.chkBoxLockSIV.setSizePolicy(sizePolicy)
        self.chkBoxLockSIV.setObjectName("chkBoxLockSIV")
        self.gridLayout_6.addWidget(self.chkBoxLockSIV, 1, 0, 1, 2)
        self.gridLayout_7.addLayout(self.gridLayout_6, 8, 0, 1, 1)
        spacerItem5 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_7.addItem(spacerItem5, 7, 3, 1, 1)
        self.gVOriginalSignal = ZoomAndDropableGraphicView(self.scrollAreaWidgetContents_2)
        self.gVOriginalSignal.setVerticalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOff)
        self.gVOriginalSignal.setHorizontalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOn)
        self.gVOriginalSignal.setRenderHints(QtGui.QPainter.Antialiasing|QtGui.QPainter.HighQualityAntialiasing)
        self.gVOriginalSignal.setDragMode(QtWidgets.QGraphicsView.NoDrag)
        self.gVOriginalSignal.setObjectName("gVOriginalSignal")
        self.gridLayout_7.addWidget(self.gVOriginalSignal, 8, 1, 1, 3)
        self.gVCarrier = ZoomableGraphicView(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.gVCarrier.sizePolicy().hasHeightForWidth())
        self.gVCarrier.setSizePolicy(sizePolicy)
        self.gVCarrier.setAcceptDrops(False)
        self.gVCarrier.setVerticalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOff)
        self.gVCarrier.setHorizontalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOn)
        self.gVCarrier.setRenderHints(QtGui.QPainter.Antialiasing|QtGui.QPainter.HighQualityAntialiasing)
        self.gVCarrier.setDragMode(QtWidgets.QGraphicsView.NoDrag)
        self.gVCarrier.setObjectName("gVCarrier")
        self.gridLayout_7.addWidget(self.gVCarrier, 1, 1, 1, 3)
        self.gridLayout = QtWidgets.QGridLayout()
        self.gridLayout.setObjectName("gridLayout")
        self.btnAutoDetect = QtWidgets.QPushButton(self.scrollAreaWidgetContents_2)
        self.btnAutoDetect.setEnabled(False)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.btnAutoDetect.sizePolicy().hasHeightForWidth())
        self.btnAutoDetect.setSizePolicy(sizePolicy)
        self.btnAutoDetect.setObjectName("btnAutoDetect")
        self.gridLayout.addWidget(self.btnAutoDetect, 2, 0, 1, 2)
        self.label_2 = QtWidgets.QLabel(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_2.sizePolicy().hasHeightForWidth())
        self.label_2.setSizePolicy(sizePolicy)
        self.label_2.setObjectName("label_2")
        self.gridLayout.addWidget(self.label_2, 1, 0, 1, 1)
        self.doubleSpinBoxCarrierPhase = QtWidgets.QDoubleSpinBox(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.doubleSpinBoxCarrierPhase.sizePolicy().hasHeightForWidth())
        self.doubleSpinBoxCarrierPhase.setSizePolicy(sizePolicy)
        self.doubleSpinBoxCarrierPhase.setDecimals(3)
        self.doubleSpinBoxCarrierPhase.setMaximum(360.0)
        self.doubleSpinBoxCarrierPhase.setObjectName("doubleSpinBoxCarrierPhase")
        self.gridLayout.addWidget(self.doubleSpinBoxCarrierPhase, 1, 1, 1, 1)
        self.lCarrierFreq = QtWidgets.QLabel(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.lCarrierFreq.sizePolicy().hasHeightForWidth())
        self.lCarrierFreq.setSizePolicy(sizePolicy)
        self.lCarrierFreq.setObjectName("lCarrierFreq")
        self.gridLayout.addWidget(self.lCarrierFreq, 0, 0, 1, 1)
        self.doubleSpinBoxCarrierFreq = KillerDoubleSpinBox(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.doubleSpinBoxCarrierFreq.sizePolicy().hasHeightForWidth())
        self.doubleSpinBoxCarrierFreq.setSizePolicy(sizePolicy)
        self.doubleSpinBoxCarrierFreq.setSuffix("")
        self.doubleSpinBoxCarrierFreq.setDecimals(3)
        self.doubleSpinBoxCarrierFreq.setMinimum(0.0)
        self.doubleSpinBoxCarrierFreq.setMaximum(99999999999.0)
        self.doubleSpinBoxCarrierFreq.setObjectName("doubleSpinBoxCarrierFreq")
        self.gridLayout.addWidget(self.doubleSpinBoxCarrierFreq, 0, 1, 1, 1)
        spacerItem6 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
        self.gridLayout.addItem(spacerItem6, 3, 0, 1, 1)
        self.gridLayout_7.addLayout(self.gridLayout, 1, 0, 1, 1)
        self.gVModulated = ZoomableGraphicView(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.gVModulated.sizePolicy().hasHeightForWidth())
        self.gVModulated.setSizePolicy(sizePolicy)
        self.gVModulated.setAcceptDrops(False)
        self.gVModulated.setVerticalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOff)
        self.gVModulated.setHorizontalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOn)
        self.gVModulated.setRenderHints(QtGui.QPainter.Antialiasing|QtGui.QPainter.HighQualityAntialiasing)
        self.gVModulated.setDragMode(QtWidgets.QGraphicsView.NoDrag)
        self.gVModulated.setObjectName("gVModulated")
        self.gridLayout_7.addWidget(self.gVModulated, 5, 1, 1, 3)
        self.label_7 = QtWidgets.QLabel(self.scrollAreaWidgetContents_2)
        font = QtGui.QFont()
        font.setBold(True)
        font.setWeight(75)
        self.label_7.setFont(font)
        self.label_7.setObjectName("label_7")
        self.gridLayout_7.addWidget(self.label_7, 7, 0, 1, 1)
        spacerItem7 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
        self.gridLayout_7.addItem(spacerItem7, 7, 1, 1, 1)
        self.btnSaveAndClose = QtWidgets.QPushButton(self.scrollAreaWidgetContents_2)
        self.btnSaveAndClose.setObjectName("btnSaveAndClose")
        self.gridLayout_7.addWidget(self.btnSaveAndClose, 9, 0, 1, 4)
        self.label_6 = QtWidgets.QLabel(self.scrollAreaWidgetContents_2)
        font = QtGui.QFont()
        font.setBold(True)
        font.setWeight(75)
        self.label_6.setFont(font)
        self.label_6.setObjectName("label_6")
        self.gridLayout_7.addWidget(self.label_6, 4, 0, 1, 1)
        self.gridLayout_3 = QtWidgets.QGridLayout()
        self.gridLayout_3.setObjectName("gridLayout_3")
        spacerItem8 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
        self.gridLayout_3.addItem(spacerItem8, 10, 1, 1, 1)
        self.spinBoxGaussBT = QtWidgets.QDoubleSpinBox(self.scrollAreaWidgetContents_2)
        self.spinBoxGaussBT.setMinimum(0.01)
        self.spinBoxGaussBT.setMaximum(0.99)
        self.spinBoxGaussBT.setSingleStep(0.01)
        self.spinBoxGaussBT.setObjectName("spinBoxGaussBT")
        self.gridLayout_3.addWidget(self.spinBoxGaussBT, 3, 1, 1, 2)
        self.lGaussBT = QtWidgets.QLabel(self.scrollAreaWidgetContents_2)
        self.lGaussBT.setObjectName("lGaussBT")
        self.gridLayout_3.addWidget(self.lGaussBT, 3, 0, 1, 1)
        self.spinBoxGaussFilterWidth = QtWidgets.QDoubleSpinBox(self.scrollAreaWidgetContents_2)
        self.spinBoxGaussFilterWidth.setMinimum(0.01)
        self.spinBoxGaussFilterWidth.setMaximum(100.0)
        self.spinBoxGaussFilterWidth.setSingleStep(0.01)
        self.spinBoxGaussFilterWidth.setProperty("value", 1.0)
        self.spinBoxGaussFilterWidth.setObjectName("spinBoxGaussFilterWidth")
        self.gridLayout_3.addWidget(self.spinBoxGaussFilterWidth, 4, 1, 1, 2)
        self.label_9 = QtWidgets.QLabel(self.scrollAreaWidgetContents_2)
        self.label_9.setObjectName("label_9")
        self.gridLayout_3.addWidget(self.label_9, 8, 0, 1, 1)
        self.lParameterfor0 = QtWidgets.QLabel(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.lParameterfor0.sizePolicy().hasHeightForWidth())
        self.lParameterfor0.setSizePolicy(sizePolicy)
        self.lParameterfor0.setObjectName("lParameterfor0")
        self.gridLayout_3.addWidget(self.lParameterfor0, 1, 0, 1, 1)
        self.spinBoxParameter1 = KillerDoubleSpinBox(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.spinBoxParameter1.sizePolicy().hasHeightForWidth())
        self.spinBoxParameter1.setSizePolicy(sizePolicy)
        self.spinBoxParameter1.setDecimals(3)
        self.spinBoxParameter1.setMinimum(0.001)
        self.spinBoxParameter1.setMaximum(999999999.99)
        self.spinBoxParameter1.setObjectName("spinBoxParameter1")
        self.gridLayout_3.addWidget(self.spinBoxParameter1, 2, 1, 1, 2)
        self.lModulatedSelectedSamples = QtWidgets.QLabel(self.scrollAreaWidgetContents_2)
        self.lModulatedSelectedSamples.setObjectName("lModulatedSelectedSamples")
        self.gridLayout_3.addWidget(self.lModulatedSelectedSamples, 8, 1, 1, 2)
        self.lGaussWidth = QtWidgets.QLabel(self.scrollAreaWidgetContents_2)
        self.lGaussWidth.setObjectName("lGaussWidth")
        self.gridLayout_3.addWidget(self.lGaussWidth, 4, 0, 1, 1)
        self.lSamplesInViewModulatedText = QtWidgets.QLabel(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.lSamplesInViewModulatedText.sizePolicy().hasHeightForWidth())
        self.lSamplesInViewModulatedText.setSizePolicy(sizePolicy)
        self.lSamplesInViewModulatedText.setObjectName("lSamplesInViewModulatedText")
        self.gridLayout_3.addWidget(self.lSamplesInViewModulatedText, 5, 0, 1, 1)
        self.lSamplesInViewModulated = QtWidgets.QLabel(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Maximum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.lSamplesInViewModulated.sizePolicy().hasHeightForWidth())
        self.lSamplesInViewModulated.setSizePolicy(sizePolicy)
        self.lSamplesInViewModulated.setObjectName("lSamplesInViewModulated")
        self.gridLayout_3.addWidget(self.lSamplesInViewModulated, 5, 1, 1, 2)
        self.comboBoxModulationType = QtWidgets.QComboBox(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.comboBoxModulationType.sizePolicy().hasHeightForWidth())
        self.comboBoxModulationType.setSizePolicy(sizePolicy)
        self.comboBoxModulationType.setMaximumSize(QtCore.QSize(16777215, 16777215))
        self.comboBoxModulationType.setObjectName("comboBoxModulationType")
        self.comboBoxModulationType.addItem("")
        self.comboBoxModulationType.addItem("")
        self.comboBoxModulationType.addItem("")
        self.comboBoxModulationType.addItem("")
        self.gridLayout_3.addWidget(self.comboBoxModulationType, 0, 0, 1, 3)
        self.spinBoxParameter0 = KillerDoubleSpinBox(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.spinBoxParameter0.sizePolicy().hasHeightForWidth())
        self.spinBoxParameter0.setSizePolicy(sizePolicy)
        self.spinBoxParameter0.setDecimals(3)
        self.spinBoxParameter0.setMinimum(0.001)
        self.spinBoxParameter0.setMaximum(999999999.99)
        self.spinBoxParameter0.setObjectName("spinBoxParameter0")
        self.gridLayout_3.addWidget(self.spinBoxParameter0, 1, 1, 1, 2)
        self.lParameterfor1 = QtWidgets.QLabel(self.scrollAreaWidgetContents_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.lParameterfor1.sizePolicy().hasHeightForWidth())
        self.lParameterfor1.setSizePolicy(sizePolicy)
        self.lParameterfor1.setObjectName("lParameterfor1")
        self.gridLayout_3.addWidget(self.lParameterfor1, 2, 0, 1, 1)
        spacerItem9 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
        self.gridLayout_3.addItem(spacerItem9, 10, 0, 1, 1)
        self.gridLayout_7.addLayout(self.gridLayout_3, 5, 0, 1, 1)
        self.scrollArea.setWidget(self.scrollAreaWidgetContents_2)
        self.verticalLayout.addWidget(self.scrollArea)

        self.retranslateUi(DialogModulation)
        QtCore.QMetaObject.connectSlotsByName(DialogModulation)
        DialogModulation.setTabOrder(self.comboBoxCustomModulations, self.btnAddModulation)
        DialogModulation.setTabOrder(self.btnAddModulation, self.btnRemoveModulation)
        DialogModulation.setTabOrder(self.btnRemoveModulation, self.scrollArea)
        DialogModulation.setTabOrder(self.scrollArea, self.doubleSpinBoxCarrierFreq)
        DialogModulation.setTabOrder(self.doubleSpinBoxCarrierFreq, self.doubleSpinBoxCarrierPhase)
        DialogModulation.setTabOrder(self.doubleSpinBoxCarrierPhase, self.btnAutoDetect)
        DialogModulation.setTabOrder(self.btnAutoDetect, self.linEdDataBits)
        DialogModulation.setTabOrder(self.linEdDataBits, self.spinBoxBitLength)
        DialogModulation.setTabOrder(self.spinBoxBitLength, self.spinBoxSampleRate)
        DialogModulation.setTabOrder(self.spinBoxSampleRate, self.comboBoxModulationType)
        DialogModulation.setTabOrder(self.comboBoxModulationType, self.spinBoxParameter0)
        DialogModulation.setTabOrder(self.spinBoxParameter0, self.spinBoxParameter1)
        DialogModulation.setTabOrder(self.spinBoxParameter1, self.spinBoxGaussBT)
        DialogModulation.setTabOrder(self.spinBoxGaussBT, self.spinBoxGaussFilterWidth)
        DialogModulation.setTabOrder(self.spinBoxGaussFilterWidth, self.treeViewSignals)
        DialogModulation.setTabOrder(self.treeViewSignals, self.chkBoxLockSIV)
        DialogModulation.setTabOrder(self.chkBoxLockSIV, self.cbShowDataBitsOnly)
        DialogModulation.setTabOrder(self.cbShowDataBitsOnly, self.btnSearchPrev)
        DialogModulation.setTabOrder(self.btnSearchPrev, self.btnSearchNext)
        DialogModulation.setTabOrder(self.btnSearchNext, self.btnSaveAndClose)
        DialogModulation.setTabOrder(self.btnSaveAndClose, self.gVCarrier)
        DialogModulation.setTabOrder(self.gVCarrier, self.gVData)
        DialogModulation.setTabOrder(self.gVData, self.gVModulated)
        DialogModulation.setTabOrder(self.gVModulated, self.gVOriginalSignal)

    def retranslateUi(self, DialogModulation):
        _translate = QtCore.QCoreApplication.translate
        DialogModulation.setWindowTitle(_translate("DialogModulation", "Modulation"))
        self.comboBoxCustomModulations.setItemText(0, _translate("DialogModulation", "My Modulation"))
        self.btnAddModulation.setText(_translate("DialogModulation", "..."))
        self.btnRemoveModulation.setText(_translate("DialogModulation", "..."))
        self.label.setText(_translate("DialogModulation", "Bit Length:"))
        self.label_3.setText(_translate("DialogModulation", "Sample Rate (Sps):"))
        self.linEdDataBits.setPlaceholderText(_translate("DialogModulation", "Enter Data Bits here"))
        self.btnRestoreBits.setText(_translate("DialogModulation", "Restore"))
        self.label_5.setText(_translate("DialogModulation", "Data (raw bits)"))
        self.label_4.setText(_translate("DialogModulation", "Carrier"))
        self.cbShowDataBitsOnly.setText(_translate("DialogModulation", "Show Only Data Sequence\n"
"(10)"))
        self.lSamplesInViewOrigSignalText.setText(_translate("DialogModulation", "Samples in View:"))
        self.lOriginalSignalSamplesSelected.setText(_translate("DialogModulation", "0"))
        self.label_10.setText(_translate("DialogModulation", "Samples selected:"))
        self.lSamplesInViewOrigSignal.setToolTip(_translate("DialogModulation", "<html><head/><body><p>Shown Samples in View:</p><p><span style=\" font-weight:600; color:#ff0000;\">Red</span> - if samples in view differ from original signal</p><p><span style=\" font-weight:600;\">Normal</span> - if samples in view are equal to the original signal</p></body></html>"))
        self.lSamplesInViewOrigSignal.setText(_translate("DialogModulation", "0"))
        self.lCurrentSearchResult.setText(_translate("DialogModulation", "-"))
        self.lSlash.setText(_translate("DialogModulation", "/"))
        self.lTotalSearchresults.setText(_translate("DialogModulation", "-"))
        self.chkBoxLockSIV.setText(_translate("DialogModulation", "Lock view to original signal"))
        self.btnAutoDetect.setToolTip(_translate("DialogModulation", "<html><head/><body><p>Auto detect the frequency based on the original signal. You have to select a signal (<span style=\" font-weight:600;\">bottom of this window</span>) to use this feature.</p><p><br/></p><p>Select a signal by dragging it from the tree and dropping it on the graphics pane to the right.</p></body></html>"))
        self.btnAutoDetect.setText(_translate("DialogModulation", "Auto detect from original signal"))
        self.label_2.setText(_translate("DialogModulation", "Phase:"))
        self.doubleSpinBoxCarrierPhase.setSuffix(_translate("DialogModulation", "°"))
        self.lCarrierFreq.setText(_translate("DialogModulation", "Frequency:"))
        self.label_7.setText(_translate("DialogModulation", "Original Signal (drag&drop)"))
        self.btnSaveAndClose.setText(_translate("DialogModulation", "Save and Close"))
        self.label_6.setText(_translate("DialogModulation", "Modulation"))
        self.lGaussBT.setText(_translate("DialogModulation", "Gauss BT:"))
        self.label_9.setText(_translate("DialogModulation", "Samples selected:"))
        self.lParameterfor0.setText(_translate("DialogModulation", "Amplitude for 0:"))
        self.lModulatedSelectedSamples.setText(_translate("DialogModulation", "0"))
        self.lGaussWidth.setText(_translate("DialogModulation", "Gauss filter width:"))
        self.lSamplesInViewModulatedText.setText(_translate("DialogModulation", "Samples in View:"))
        self.lSamplesInViewModulated.setToolTip(_translate("DialogModulation", "<html><head/><body><p>Shown Samples in View:</p><p><span style=\" font-weight:600; color:#ff0000;\">Red</span> - if samples in view differ from original signal</p><p><span style=\" font-weight:600;\">Normal</span> - if samples in view are equal to the original signal</p></body></html>"))
        self.lSamplesInViewModulated.setText(_translate("DialogModulation", "101010121"))
        self.comboBoxModulationType.setItemText(0, _translate("DialogModulation", "Amplitude Shift Keying (ASK)"))
        self.comboBoxModulationType.setItemText(1, _translate("DialogModulation", "Frequency Shift Keying (FSK)"))
        self.comboBoxModulationType.setItemText(2, _translate("DialogModulation", "Gaussian Frequency Shift Keying (GFSK)"))
        self.comboBoxModulationType.setItemText(3, _translate("DialogModulation", "Phase Shift Keying (PSK)"))
        self.lParameterfor1.setText(_translate("DialogModulation", "Amplitude for 1:"))
Esempio n. 6
0
class Ui_DialogModulation(object):
    def setupUi(self, DialogModulation):
        DialogModulation.setObjectName("DialogModulation")
        DialogModulation.resize(1031, 1050)
        self.horizontalLayout = QtWidgets.QHBoxLayout(DialogModulation)
        self.horizontalLayout.setObjectName("horizontalLayout")
        self.gridLayout_7 = QtWidgets.QGridLayout()
        self.gridLayout_7.setObjectName("gridLayout_7")
        self.lPlus = QtWidgets.QLabel(DialogModulation)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.lPlus.sizePolicy().hasHeightForWidth())
        self.lPlus.setSizePolicy(sizePolicy)
        self.lPlus.setMaximumSize(QtCore.QSize(30, 30))
        self.lPlus.setText("")
        self.lPlus.setPixmap(QtGui.QPixmap(":/icons/data/icons/plus.png"))
        self.lPlus.setScaledContents(True)
        self.lPlus.setAlignment(QtCore.Qt.AlignCenter)
        self.lPlus.setObjectName("lPlus")
        self.gridLayout_7.addWidget(self.lPlus, 3, 1, 1, 1)
        self.gridLayout_5 = QtWidgets.QGridLayout()
        self.gridLayout_5.setObjectName("gridLayout_5")
        self.comboBoxCustomModulations = QtWidgets.QComboBox(DialogModulation)
        self.comboBoxCustomModulations.setEditable(True)
        self.comboBoxCustomModulations.setInsertPolicy(
            QtWidgets.QComboBox.InsertAtCurrent)
        self.comboBoxCustomModulations.setSizeAdjustPolicy(
            QtWidgets.QComboBox.AdjustToContents)
        self.comboBoxCustomModulations.setObjectName(
            "comboBoxCustomModulations")
        self.comboBoxCustomModulations.addItem("")
        self.gridLayout_5.addWidget(self.comboBoxCustomModulations, 0, 0, 1, 1)
        self.btnAddModulation = QtWidgets.QToolButton(DialogModulation)
        icon = QtGui.QIcon.fromTheme("list-add")
        self.btnAddModulation.setIcon(icon)
        self.btnAddModulation.setObjectName("btnAddModulation")
        self.gridLayout_5.addWidget(self.btnAddModulation, 0, 1, 1, 1)
        self.btnRemoveModulation = QtWidgets.QToolButton(DialogModulation)
        icon = QtGui.QIcon.fromTheme("list-remove")
        self.btnRemoveModulation.setIcon(icon)
        self.btnRemoveModulation.setObjectName("btnRemoveModulation")
        self.gridLayout_5.addWidget(self.btnRemoveModulation, 0, 2, 1, 1)
        self.gridLayout_7.addLayout(self.gridLayout_5, 0, 0, 1, 1)
        self.label_4 = QtWidgets.QLabel(DialogModulation)
        font = QtGui.QFont()
        font.setBold(True)
        font.setWeight(75)
        self.label_4.setFont(font)
        self.label_4.setObjectName("label_4")
        self.gridLayout_7.addWidget(self.label_4, 1, 0, 1, 1)
        self.gridLayout = QtWidgets.QGridLayout()
        self.gridLayout.setObjectName("gridLayout")
        self.lCarrierFreq = QtWidgets.QLabel(DialogModulation)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.lCarrierFreq.sizePolicy().hasHeightForWidth())
        self.lCarrierFreq.setSizePolicy(sizePolicy)
        self.lCarrierFreq.setObjectName("lCarrierFreq")
        self.gridLayout.addWidget(self.lCarrierFreq, 0, 0, 1, 1)
        self.doubleSpinBoxCarrierFreq = KillerDoubleSpinBox(DialogModulation)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.doubleSpinBoxCarrierFreq.sizePolicy().hasHeightForWidth())
        self.doubleSpinBoxCarrierFreq.setSizePolicy(sizePolicy)
        self.doubleSpinBoxCarrierFreq.setSuffix("")
        self.doubleSpinBoxCarrierFreq.setDecimals(3)
        self.doubleSpinBoxCarrierFreq.setMinimum(0.0)
        self.doubleSpinBoxCarrierFreq.setMaximum(99999999999.0)
        self.doubleSpinBoxCarrierFreq.setObjectName("doubleSpinBoxCarrierFreq")
        self.gridLayout.addWidget(self.doubleSpinBoxCarrierFreq, 0, 1, 1, 1)
        self.label_2 = QtWidgets.QLabel(DialogModulation)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.label_2.sizePolicy().hasHeightForWidth())
        self.label_2.setSizePolicy(sizePolicy)
        self.label_2.setObjectName("label_2")
        self.gridLayout.addWidget(self.label_2, 1, 0, 1, 1)
        self.doubleSpinBoxCarrierPhase = QtWidgets.QDoubleSpinBox(
            DialogModulation)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.doubleSpinBoxCarrierPhase.sizePolicy().hasHeightForWidth())
        self.doubleSpinBoxCarrierPhase.setSizePolicy(sizePolicy)
        self.doubleSpinBoxCarrierPhase.setDecimals(3)
        self.doubleSpinBoxCarrierPhase.setMaximum(360.0)
        self.doubleSpinBoxCarrierPhase.setObjectName(
            "doubleSpinBoxCarrierPhase")
        self.gridLayout.addWidget(self.doubleSpinBoxCarrierPhase, 1, 1, 1, 1)
        self.btnAutoDetect = QtWidgets.QPushButton(DialogModulation)
        self.btnAutoDetect.setEnabled(False)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.btnAutoDetect.sizePolicy().hasHeightForWidth())
        self.btnAutoDetect.setSizePolicy(sizePolicy)
        self.btnAutoDetect.setObjectName("btnAutoDetect")
        self.gridLayout.addWidget(self.btnAutoDetect, 2, 0, 1, 2)
        self.gridLayout_7.addLayout(self.gridLayout, 2, 0, 1, 1)
        self.label_5 = QtWidgets.QLabel(DialogModulation)
        font = QtGui.QFont()
        font.setBold(True)
        font.setWeight(75)
        self.label_5.setFont(font)
        self.label_5.setObjectName("label_5")
        self.gridLayout_7.addWidget(self.label_5, 3, 0, 1, 1)
        self.gridLayout_2 = QtWidgets.QGridLayout()
        self.gridLayout_2.setObjectName("gridLayout_2")
        self.linEdDataBits = QtWidgets.QLineEdit(DialogModulation)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.linEdDataBits.sizePolicy().hasHeightForWidth())
        self.linEdDataBits.setSizePolicy(sizePolicy)
        self.linEdDataBits.setObjectName("linEdDataBits")
        self.gridLayout_2.addWidget(self.linEdDataBits, 0, 0, 1, 2)
        self.label = QtWidgets.QLabel(DialogModulation)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.label.sizePolicy().hasHeightForWidth())
        self.label.setSizePolicy(sizePolicy)
        self.label.setObjectName("label")
        self.gridLayout_2.addWidget(self.label, 3, 0, 1, 1)
        self.spinBoxBitLength = QtWidgets.QSpinBox(DialogModulation)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.spinBoxBitLength.sizePolicy().hasHeightForWidth())
        self.spinBoxBitLength.setSizePolicy(sizePolicy)
        self.spinBoxBitLength.setMinimum(1)
        self.spinBoxBitLength.setMaximum(999999)
        self.spinBoxBitLength.setObjectName("spinBoxBitLength")
        self.gridLayout_2.addWidget(self.spinBoxBitLength, 3, 1, 1, 1)
        self.label_3 = QtWidgets.QLabel(DialogModulation)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.label_3.sizePolicy().hasHeightForWidth())
        self.label_3.setSizePolicy(sizePolicy)
        self.label_3.setObjectName("label_3")
        self.gridLayout_2.addWidget(self.label_3, 4, 0, 1, 1)
        self.spinBoxSampleRate = KillerDoubleSpinBox(DialogModulation)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.spinBoxSampleRate.sizePolicy().hasHeightForWidth())
        self.spinBoxSampleRate.setSizePolicy(sizePolicy)
        self.spinBoxSampleRate.setDecimals(3)
        self.spinBoxSampleRate.setMinimum(0.001)
        self.spinBoxSampleRate.setMaximum(999999999.0)
        self.spinBoxSampleRate.setObjectName("spinBoxSampleRate")
        self.gridLayout_2.addWidget(self.spinBoxSampleRate, 4, 1, 1, 1)
        self.btnRestoreBits = QtWidgets.QPushButton(DialogModulation)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.btnRestoreBits.sizePolicy().hasHeightForWidth())
        self.btnRestoreBits.setSizePolicy(sizePolicy)
        self.btnRestoreBits.setObjectName("btnRestoreBits")
        self.gridLayout_2.addWidget(self.btnRestoreBits, 2, 0, 1, 2)
        self.label_8 = QtWidgets.QLabel(DialogModulation)
        self.label_8.setStyleSheet("color:orange")
        self.label_8.setAlignment(QtCore.Qt.AlignCenter)
        self.label_8.setObjectName("label_8")
        self.gridLayout_2.addWidget(self.label_8, 1, 0, 1, 2)
        self.gridLayout_7.addLayout(self.gridLayout_2, 4, 0, 1, 1)
        self.label_6 = QtWidgets.QLabel(DialogModulation)
        font = QtGui.QFont()
        font.setBold(True)
        font.setWeight(75)
        self.label_6.setFont(font)
        self.label_6.setObjectName("label_6")
        self.gridLayout_7.addWidget(self.label_6, 5, 0, 1, 1)
        self.label_7 = QtWidgets.QLabel(DialogModulation)
        font = QtGui.QFont()
        font.setBold(True)
        font.setWeight(75)
        self.label_7.setFont(font)
        self.label_7.setObjectName("label_7")
        self.gridLayout_7.addWidget(self.label_7, 7, 0, 1, 1)
        self.gridLayout_6 = QtWidgets.QGridLayout()
        self.gridLayout_6.setObjectName("gridLayout_6")
        self.treeViewSignals = ModulatorTreeView(DialogModulation)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.treeViewSignals.sizePolicy().hasHeightForWidth())
        self.treeViewSignals.setSizePolicy(sizePolicy)
        self.treeViewSignals.setProperty("showDropIndicator", True)
        self.treeViewSignals.setDragEnabled(True)
        self.treeViewSignals.setDragDropMode(
            QtWidgets.QAbstractItemView.DragOnly)
        self.treeViewSignals.setHeaderHidden(True)
        self.treeViewSignals.setObjectName("treeViewSignals")
        self.gridLayout_6.addWidget(self.treeViewSignals, 0, 0, 1, 2)
        self.cbShowDataBitsOnly = QtWidgets.QCheckBox(DialogModulation)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.cbShowDataBitsOnly.sizePolicy().hasHeightForWidth())
        self.cbShowDataBitsOnly.setSizePolicy(sizePolicy)
        self.cbShowDataBitsOnly.setMinimumSize(QtCore.QSize(0, 0))
        self.cbShowDataBitsOnly.setMaximumSize(QtCore.QSize(
            16777215, 16777215))
        self.cbShowDataBitsOnly.setObjectName("cbShowDataBitsOnly")
        self.gridLayout_6.addWidget(self.cbShowDataBitsOnly, 1, 0, 1, 2)
        self.gridLayout_4 = QtWidgets.QGridLayout()
        self.gridLayout_4.setObjectName("gridLayout_4")
        self.btnSearchPrev = QtWidgets.QPushButton(DialogModulation)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.btnSearchPrev.sizePolicy().hasHeightForWidth())
        self.btnSearchPrev.setSizePolicy(sizePolicy)
        self.btnSearchPrev.setMaximumSize(QtCore.QSize(16777215, 16777215))
        self.btnSearchPrev.setText("")
        icon = QtGui.QIcon.fromTheme("go-previous")
        self.btnSearchPrev.setIcon(icon)
        self.btnSearchPrev.setObjectName("btnSearchPrev")
        self.gridLayout_4.addWidget(self.btnSearchPrev, 0, 0, 1, 1)
        self.lCurrentSearchResult = QtWidgets.QLabel(DialogModulation)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.lCurrentSearchResult.sizePolicy().hasHeightForWidth())
        self.lCurrentSearchResult.setSizePolicy(sizePolicy)
        self.lCurrentSearchResult.setMinimumSize(QtCore.QSize(0, 0))
        self.lCurrentSearchResult.setMaximumSize(
            QtCore.QSize(16777215, 16777215))
        self.lCurrentSearchResult.setAlignment(QtCore.Qt.AlignCenter)
        self.lCurrentSearchResult.setObjectName("lCurrentSearchResult")
        self.gridLayout_4.addWidget(self.lCurrentSearchResult, 0, 1, 1, 1)
        self.lSlash = QtWidgets.QLabel(DialogModulation)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.lSlash.sizePolicy().hasHeightForWidth())
        self.lSlash.setSizePolicy(sizePolicy)
        self.lSlash.setMaximumSize(QtCore.QSize(7, 16777215))
        self.lSlash.setObjectName("lSlash")
        self.gridLayout_4.addWidget(self.lSlash, 0, 2, 1, 1)
        self.lTotalSearchresults = QtWidgets.QLabel(DialogModulation)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.lTotalSearchresults.sizePolicy().hasHeightForWidth())
        self.lTotalSearchresults.setSizePolicy(sizePolicy)
        self.lTotalSearchresults.setMaximumSize(
            QtCore.QSize(16777215, 16777215))
        self.lTotalSearchresults.setAlignment(QtCore.Qt.AlignCenter)
        self.lTotalSearchresults.setObjectName("lTotalSearchresults")
        self.gridLayout_4.addWidget(self.lTotalSearchresults, 0, 3, 1, 1)
        self.btnSearchNext = QtWidgets.QPushButton(DialogModulation)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.btnSearchNext.sizePolicy().hasHeightForWidth())
        self.btnSearchNext.setSizePolicy(sizePolicy)
        self.btnSearchNext.setMaximumSize(QtCore.QSize(16777215, 16777215))
        self.btnSearchNext.setText("")
        icon = QtGui.QIcon.fromTheme("go-next")
        self.btnSearchNext.setIcon(icon)
        self.btnSearchNext.setObjectName("btnSearchNext")
        self.gridLayout_4.addWidget(self.btnSearchNext, 0, 4, 1, 1)
        self.gridLayout_6.addLayout(self.gridLayout_4, 2, 0, 1, 2)
        self.lSamplesInViewOrigSignalText = QtWidgets.QLabel(DialogModulation)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.lSamplesInViewOrigSignalText.sizePolicy().hasHeightForWidth())
        self.lSamplesInViewOrigSignalText.setSizePolicy(sizePolicy)
        self.lSamplesInViewOrigSignalText.setObjectName(
            "lSamplesInViewOrigSignalText")
        self.gridLayout_6.addWidget(self.lSamplesInViewOrigSignalText, 3, 0, 1,
                                    1)
        self.lSamplesInViewOrigSignal = QtWidgets.QLabel(DialogModulation)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.lSamplesInViewOrigSignal.sizePolicy().hasHeightForWidth())
        self.lSamplesInViewOrigSignal.setSizePolicy(sizePolicy)
        self.lSamplesInViewOrigSignal.setObjectName("lSamplesInViewOrigSignal")
        self.gridLayout_6.addWidget(self.lSamplesInViewOrigSignal, 3, 1, 1, 1)
        self.label_10 = QtWidgets.QLabel(DialogModulation)
        self.label_10.setObjectName("label_10")
        self.gridLayout_6.addWidget(self.label_10, 4, 0, 1, 1)
        self.lOriginalSignalSamplesSelected = QtWidgets.QLabel(
            DialogModulation)
        self.lOriginalSignalSamplesSelected.setObjectName(
            "lOriginalSignalSamplesSelected")
        self.gridLayout_6.addWidget(self.lOriginalSignalSamplesSelected, 4, 1,
                                    1, 1)
        self.gridLayout_7.addLayout(self.gridLayout_6, 8, 0, 1, 1)
        self.btnSaveAndClose = QtWidgets.QPushButton(DialogModulation)
        self.btnSaveAndClose.setObjectName("btnSaveAndClose")
        self.gridLayout_7.addWidget(self.btnSaveAndClose, 9, 0, 1, 2)
        self.gVOriginalSignal = ZoomAndDropableGraphicView(DialogModulation)
        self.gVOriginalSignal.setVerticalScrollBarPolicy(
            QtCore.Qt.ScrollBarAlwaysOff)
        self.gVOriginalSignal.setHorizontalScrollBarPolicy(
            QtCore.Qt.ScrollBarAlwaysOn)
        self.gVOriginalSignal.setRenderHints(
            QtGui.QPainter.Antialiasing
            | QtGui.QPainter.HighQualityAntialiasing)
        self.gVOriginalSignal.setDragMode(QtWidgets.QGraphicsView.NoDrag)
        self.gVOriginalSignal.setObjectName("gVOriginalSignal")
        self.gridLayout_7.addWidget(self.gVOriginalSignal, 8, 1, 1, 1)
        self.gVModulated = ZoomableGraphicView(DialogModulation)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.gVModulated.sizePolicy().hasHeightForWidth())
        self.gVModulated.setSizePolicy(sizePolicy)
        self.gVModulated.setAcceptDrops(False)
        self.gVModulated.setVerticalScrollBarPolicy(
            QtCore.Qt.ScrollBarAlwaysOff)
        self.gVModulated.setHorizontalScrollBarPolicy(
            QtCore.Qt.ScrollBarAlwaysOn)
        self.gVModulated.setRenderHints(
            QtGui.QPainter.Antialiasing
            | QtGui.QPainter.HighQualityAntialiasing)
        self.gVModulated.setDragMode(QtWidgets.QGraphicsView.NoDrag)
        self.gVModulated.setObjectName("gVModulated")
        self.gridLayout_7.addWidget(self.gVModulated, 6, 1, 1, 1)
        self.gVData = ZoomableGraphicView(DialogModulation)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.gVData.sizePolicy().hasHeightForWidth())
        self.gVData.setSizePolicy(sizePolicy)
        self.gVData.setAcceptDrops(False)
        self.gVData.setVerticalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOff)
        self.gVData.setHorizontalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOn)
        self.gVData.setRenderHints(QtGui.QPainter.Antialiasing
                                   | QtGui.QPainter.HighQualityAntialiasing)
        self.gVData.setDragMode(QtWidgets.QGraphicsView.NoDrag)
        self.gVData.setObjectName("gVData")
        self.gridLayout_7.addWidget(self.gVData, 4, 1, 1, 1)
        self.gVCarrier = ZoomableGraphicView(DialogModulation)
        self.gVCarrier.setAcceptDrops(False)
        self.gVCarrier.setVerticalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOff)
        self.gVCarrier.setHorizontalScrollBarPolicy(
            QtCore.Qt.ScrollBarAlwaysOn)
        self.gVCarrier.setRenderHints(QtGui.QPainter.Antialiasing
                                      | QtGui.QPainter.HighQualityAntialiasing)
        self.gVCarrier.setDragMode(QtWidgets.QGraphicsView.NoDrag)
        self.gVCarrier.setObjectName("gVCarrier")
        self.gridLayout_7.addWidget(self.gVCarrier, 1, 1, 2, 1)
        self.lEqual = QtWidgets.QLabel(DialogModulation)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.lEqual.sizePolicy().hasHeightForWidth())
        self.lEqual.setSizePolicy(sizePolicy)
        self.lEqual.setMaximumSize(QtCore.QSize(30, 30))
        self.lEqual.setText("")
        self.lEqual.setPixmap(
            QtGui.QPixmap(":/icons/data/icons/equals_generator.png"))
        self.lEqual.setScaledContents(True)
        self.lEqual.setAlignment(QtCore.Qt.AlignCenter)
        self.lEqual.setObjectName("lEqual")
        self.gridLayout_7.addWidget(self.lEqual, 5, 1, 1, 1)
        self.gridLayout_3 = QtWidgets.QGridLayout()
        self.gridLayout_3.setObjectName("gridLayout_3")
        self.spinBoxGaussBT = QtWidgets.QDoubleSpinBox(DialogModulation)
        self.spinBoxGaussBT.setMinimum(0.01)
        self.spinBoxGaussBT.setMaximum(0.99)
        self.spinBoxGaussBT.setSingleStep(0.01)
        self.spinBoxGaussBT.setObjectName("spinBoxGaussBT")
        self.gridLayout_3.addWidget(self.spinBoxGaussBT, 3, 1, 1, 2)
        self.spinBoxParameter1 = KillerDoubleSpinBox(DialogModulation)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.spinBoxParameter1.sizePolicy().hasHeightForWidth())
        self.spinBoxParameter1.setSizePolicy(sizePolicy)
        self.spinBoxParameter1.setDecimals(3)
        self.spinBoxParameter1.setMinimum(0.001)
        self.spinBoxParameter1.setMaximum(999999999.99)
        self.spinBoxParameter1.setObjectName("spinBoxParameter1")
        self.gridLayout_3.addWidget(self.spinBoxParameter1, 2, 1, 1, 2)
        self.lParameterfor1 = QtWidgets.QLabel(DialogModulation)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.lParameterfor1.sizePolicy().hasHeightForWidth())
        self.lParameterfor1.setSizePolicy(sizePolicy)
        self.lParameterfor1.setObjectName("lParameterfor1")
        self.gridLayout_3.addWidget(self.lParameterfor1, 2, 0, 1, 1)
        self.lParameterfor0 = QtWidgets.QLabel(DialogModulation)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.lParameterfor0.sizePolicy().hasHeightForWidth())
        self.lParameterfor0.setSizePolicy(sizePolicy)
        self.lParameterfor0.setObjectName("lParameterfor0")
        self.gridLayout_3.addWidget(self.lParameterfor0, 1, 0, 1, 1)
        self.chkBoxLockSIV = QtWidgets.QCheckBox(DialogModulation)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.chkBoxLockSIV.sizePolicy().hasHeightForWidth())
        self.chkBoxLockSIV.setSizePolicy(sizePolicy)
        self.chkBoxLockSIV.setObjectName("chkBoxLockSIV")
        self.gridLayout_3.addWidget(self.chkBoxLockSIV, 9, 0, 1, 3)
        spacerItem = QtWidgets.QSpacerItem(20, 40,
                                           QtWidgets.QSizePolicy.Minimum,
                                           QtWidgets.QSizePolicy.Expanding)
        self.gridLayout_3.addItem(spacerItem, 10, 1, 1, 1)
        self.comboBoxModulationType = QtWidgets.QComboBox(DialogModulation)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.comboBoxModulationType.sizePolicy().hasHeightForWidth())
        self.comboBoxModulationType.setSizePolicy(sizePolicy)
        self.comboBoxModulationType.setMaximumSize(
            QtCore.QSize(16777215, 16777215))
        self.comboBoxModulationType.setObjectName("comboBoxModulationType")
        self.comboBoxModulationType.addItem("")
        self.comboBoxModulationType.addItem("")
        self.comboBoxModulationType.addItem("")
        self.comboBoxModulationType.addItem("")
        self.gridLayout_3.addWidget(self.comboBoxModulationType, 0, 0, 1, 3)
        self.spinBoxParameter0 = KillerDoubleSpinBox(DialogModulation)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.spinBoxParameter0.sizePolicy().hasHeightForWidth())
        self.spinBoxParameter0.setSizePolicy(sizePolicy)
        self.spinBoxParameter0.setDecimals(3)
        self.spinBoxParameter0.setMinimum(0.001)
        self.spinBoxParameter0.setMaximum(999999999.99)
        self.spinBoxParameter0.setObjectName("spinBoxParameter0")
        self.gridLayout_3.addWidget(self.spinBoxParameter0, 1, 1, 1, 2)
        self.lSamplesInViewModulatedText = QtWidgets.QLabel(DialogModulation)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.lSamplesInViewModulatedText.sizePolicy().hasHeightForWidth())
        self.lSamplesInViewModulatedText.setSizePolicy(sizePolicy)
        self.lSamplesInViewModulatedText.setObjectName(
            "lSamplesInViewModulatedText")
        self.gridLayout_3.addWidget(self.lSamplesInViewModulatedText, 5, 0, 1,
                                    1)
        self.lSamplesInViewModulated = QtWidgets.QLabel(DialogModulation)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Maximum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.lSamplesInViewModulated.sizePolicy().hasHeightForWidth())
        self.lSamplesInViewModulated.setSizePolicy(sizePolicy)
        self.lSamplesInViewModulated.setObjectName("lSamplesInViewModulated")
        self.gridLayout_3.addWidget(self.lSamplesInViewModulated, 5, 1, 1, 2)
        self.label_9 = QtWidgets.QLabel(DialogModulation)
        self.label_9.setObjectName("label_9")
        self.gridLayout_3.addWidget(self.label_9, 8, 0, 1, 1)
        self.lModulatedSelectedSamples = QtWidgets.QLabel(DialogModulation)
        self.lModulatedSelectedSamples.setObjectName(
            "lModulatedSelectedSamples")
        self.gridLayout_3.addWidget(self.lModulatedSelectedSamples, 8, 1, 1, 2)
        self.lGaussBT = QtWidgets.QLabel(DialogModulation)
        self.lGaussBT.setObjectName("lGaussBT")
        self.gridLayout_3.addWidget(self.lGaussBT, 3, 0, 1, 1)
        self.lGaussWidth = QtWidgets.QLabel(DialogModulation)
        self.lGaussWidth.setObjectName("lGaussWidth")
        self.gridLayout_3.addWidget(self.lGaussWidth, 4, 0, 1, 1)
        self.spinBoxGaussFilterWidth = QtWidgets.QDoubleSpinBox(
            DialogModulation)
        self.spinBoxGaussFilterWidth.setMinimum(0.01)
        self.spinBoxGaussFilterWidth.setMaximum(100.0)
        self.spinBoxGaussFilterWidth.setSingleStep(0.01)
        self.spinBoxGaussFilterWidth.setProperty("value", 1.0)
        self.spinBoxGaussFilterWidth.setObjectName("spinBoxGaussFilterWidth")
        self.gridLayout_3.addWidget(self.spinBoxGaussFilterWidth, 4, 1, 1, 2)
        self.gridLayout_7.addLayout(self.gridLayout_3, 6, 0, 1, 1)
        self.horizontalLayout.addLayout(self.gridLayout_7)

        self.retranslateUi(DialogModulation)
        QtCore.QMetaObject.connectSlotsByName(DialogModulation)

    def retranslateUi(self, DialogModulation):
        _translate = QtCore.QCoreApplication.translate
        DialogModulation.setWindowTitle(
            _translate("DialogModulation", "Modulation"))
        self.comboBoxCustomModulations.setItemText(
            0, _translate("DialogModulation", "My Modulation"))
        self.btnAddModulation.setText(_translate("DialogModulation", "..."))
        self.btnRemoveModulation.setText(_translate("DialogModulation", "..."))
        self.label_4.setText(_translate("DialogModulation", "Carrier"))
        self.lCarrierFreq.setText(_translate("DialogModulation", "Frequency:"))
        self.label_2.setText(_translate("DialogModulation", "Phase:"))
        self.doubleSpinBoxCarrierPhase.setSuffix(
            _translate("DialogModulation", "°"))
        self.btnAutoDetect.setToolTip(
            _translate(
                "DialogModulation",
                "<html><head/><body><p>Auto detect the frequency based on the original signal. You have to select a signal (<span style=\" font-weight:600;\">bottom of this window</span>) to use this feature.</p><p><br/></p><p>Select a signal by dragging it from the tree and dropping it on the graphics pane to the right.</p></body></html>"
            ))
        self.btnAutoDetect.setText(
            _translate("DialogModulation", "Auto detect from original signal"))
        self.label_5.setText(_translate("DialogModulation", "Data"))
        self.linEdDataBits.setPlaceholderText(
            _translate("DialogModulation", "Enter Data Bits here"))
        self.label.setText(_translate("DialogModulation", "Bit Length:"))
        self.label_3.setText(
            _translate("DialogModulation", "Sample Rate (Sps):"))
        self.btnRestoreBits.setText(
            _translate("DialogModulation", "Restore Bits"))
        self.label_8.setText(
            _translate("DialogModulation", "You compare raw bits."))
        self.label_6.setText(_translate("DialogModulation", "Modulation"))
        self.label_7.setText(
            _translate("DialogModulation", "Original Signal (drag&drop)"))
        self.cbShowDataBitsOnly.setText(
            _translate("DialogModulation", "Show Only Data Sequence\n"
                       "(10)"))
        self.lCurrentSearchResult.setText(_translate("DialogModulation", "-"))
        self.lSlash.setText(_translate("DialogModulation", "/"))
        self.lTotalSearchresults.setText(_translate("DialogModulation", "-"))
        self.lSamplesInViewOrigSignalText.setText(
            _translate("DialogModulation", "Samples in View:"))
        self.lSamplesInViewOrigSignal.setToolTip(
            _translate(
                "DialogModulation",
                "<html><head/><body><p>Shown Samples in View:</p><p><span style=\" font-weight:600; color:#ff0000;\">Red</span> - if samples in view differ from original signal</p><p><span style=\" font-weight:600;\">Normal</span> - if samples in view are equal to the original signal</p></body></html>"
            ))
        self.lSamplesInViewOrigSignal.setText(
            _translate("DialogModulation", "0"))
        self.label_10.setText(
            _translate("DialogModulation", "Samples selected:"))
        self.lOriginalSignalSamplesSelected.setText(
            _translate("DialogModulation", "0"))
        self.btnSaveAndClose.setText(
            _translate("DialogModulation", "Save and Close"))
        self.lParameterfor1.setText(
            _translate("DialogModulation", "Amplitude for 1:"))
        self.lParameterfor0.setText(
            _translate("DialogModulation", "Amplitude for 0:"))
        self.chkBoxLockSIV.setText(
            _translate("DialogModulation", "Lock SIV to original signal"))
        self.comboBoxModulationType.setItemText(
            0, _translate("DialogModulation", "Amplitude Shift Keying (ASK)"))
        self.comboBoxModulationType.setItemText(
            1, _translate("DialogModulation", "Frequency Shift Keying (FSK)"))
        self.comboBoxModulationType.setItemText(
            2,
            _translate("DialogModulation",
                       "Gaussian Frequency Shift Keying (GFSK)"))
        self.comboBoxModulationType.setItemText(
            3, _translate("DialogModulation", "Phase Shift Keying (PSK)"))
        self.lSamplesInViewModulatedText.setText(
            _translate("DialogModulation", "Samples in View:"))
        self.lSamplesInViewModulated.setToolTip(
            _translate(
                "DialogModulation",
                "<html><head/><body><p>Shown Samples in View:</p><p><span style=\" font-weight:600; color:#ff0000;\">Red</span> - if samples in view differ from original signal</p><p><span style=\" font-weight:600;\">Normal</span> - if samples in view are equal to the original signal</p></body></html>"
            ))
        self.lSamplesInViewModulated.setText(
            _translate("DialogModulation", "101010121"))
        self.label_9.setText(
            _translate("DialogModulation", "Samples selected:"))
        self.lModulatedSelectedSamples.setText(
            _translate("DialogModulation", "0"))
        self.lGaussBT.setText(_translate("DialogModulation", "Gauss BT:"))
        self.lGaussWidth.setText(
            _translate("DialogModulation", "Gauss filter width:"))