class Ui_SendRecvDialog(object): def setupUi(self, SendRecvDialog): SendRecvDialog.setObjectName("SendRecvDialog") # SendRecvDialog.setWindowModality(QtCore.Qt.NonModal) SendRecvDialog.resize(1081, 596) SendRecvDialog.setMouseTracking(False) self.verticalLayout = QtWidgets.QVBoxLayout(SendRecvDialog) self.verticalLayout.setObjectName("verticalLayout") self.splitter = QtWidgets.QSplitter(SendRecvDialog) self.splitter.setStyleSheet( "QSplitter::handle:horizontal {\n" "margin: 4px 0px;\n" " background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, \n" "stop:0 rgba(255, 255, 255, 0), \n" "stop:0.5 rgba(100, 100, 100, 100), \n" "stop:1 rgba(255, 255, 255, 0));\n" "image: url(:/icons/icons/splitter_handle_vertical.svg);\n" "}") self.splitter.setOrientation(QtCore.Qt.Horizontal) # self.splitter.setStretchFactor(1,1) self.splitter.setObjectName("splitter") self.scrollArea = QtWidgets.QScrollArea(self.splitter) 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, 621, 101)) self.scrollAreaWidgetContents_2.setObjectName( "scrollAreaWidgetContents_2") self.verticalLayout_8 = QtWidgets.QVBoxLayout( self.scrollAreaWidgetContents_2) self.verticalLayout_8.setObjectName("verticalLayout_8") self.groupBox = QtWidgets.QGroupBox(self.scrollAreaWidgetContents_2) self.groupBox.setStyleSheet("QGroupBox\n" "{\n" " border: none;\n" "}") self.groupBox.setTitle("") self.groupBox.setObjectName("groupBox") self.gridLayout_2 = QtWidgets.QGridLayout(self.groupBox) self.gridLayout_2.setContentsMargins(-1, 0, -1, -1) self.gridLayout_2.setObjectName("gridLayout_2") self.progressBarMessage = QtWidgets.QProgressBar(self.groupBox) self.progressBarMessage.setProperty("value", 0) self.progressBarMessage.setObjectName("progressBarMessage") self.gridLayout_2.addWidget(self.progressBarMessage, 19, 0, 1, 1) self.labelCurrentMessage = QtWidgets.QLabel(self.groupBox) self.labelCurrentMessage.setObjectName("labelCurrentMessage") self.gridLayout_2.addWidget(self.labelCurrentMessage, 18, 0, 1, 1) self.lReceiveBufferFullText = QtWidgets.QLabel(self.groupBox) self.lReceiveBufferFullText.setObjectName("lReceiveBufferFullText") self.gridLayout_2.addWidget(self.lReceiveBufferFullText, 7, 0, 1, 1) self.lReceiveBufferFullText.hide() self.progressBarSample = QtWidgets.QProgressBar(self.groupBox) self.progressBarSample.setProperty("value", 0) self.progressBarSample.setObjectName("progressBarSample") self.gridLayout_2.addWidget(self.progressBarSample, 21, 0, 1, 1) self.lSamplesSentText = QtWidgets.QLabel(self.groupBox) self.lSamplesSentText.setObjectName("lSamplesSentText") self.gridLayout_2.addWidget(self.lSamplesSentText, 20, 0, 1, 1) self.lTimeText = QtWidgets.QLabel(self.groupBox) self.lTimeText.setObjectName("lTimeText") self.gridLayout_2.addWidget(self.lTimeText, 12, 0, 1, 1) self.lSamplesCapturedText = QtWidgets.QLabel(self.groupBox) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.lSamplesCapturedText.sizePolicy().hasHeightForWidth()) self.lSamplesCapturedText.setSizePolicy(sizePolicy) self.lSamplesCapturedText.setObjectName("lSamplesCapturedText") self.gridLayout_2.addWidget(self.lSamplesCapturedText, 5, 0, 1, 1) self.lSignalSizeText = QtWidgets.QLabel(self.groupBox) font = QtGui.QFont() font.setBold(True) font.setWeight(75) self.lSignalSizeText.setFont(font) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.lSignalSizeText.sizePolicy().hasHeightForWidth()) self.lSignalSizeText.setSizePolicy(sizePolicy) self.lSignalSizeText.setObjectName("lSignalSizeText") self.gridLayout_2.addWidget(self.lSignalSizeText, 9, 0, 1, 1) self.lSamplesCaptured = QtWidgets.QLabel(self.groupBox) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.lSamplesCaptured.sizePolicy().hasHeightForWidth()) self.lSamplesCaptured.setSizePolicy(sizePolicy) font = QtGui.QFont() font.setBold(True) font.setWeight(100) self.lSamplesCaptured.setFont(font) self.lSamplesCaptured.setAlignment(QtCore.Qt.AlignCenter) self.lSamplesCaptured.setObjectName("lSamplesCaptured") self.gridLayout_2.addWidget(self.lSamplesCaptured, 6, 0, 1, 2) self.lTime = QtWidgets.QLabel(self.groupBox) font = QtGui.QFont() font.setBold(True) font.setWeight(100) self.lTime.setFont(font) self.lTime.setAlignment(QtCore.Qt.AlignCenter) self.lTime.setObjectName("lTime") self.gridLayout_2.addWidget(self.lTime, 15, 0, 1, 2) self.lSignalSize = QtWidgets.QLabel(self.groupBox) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.lSignalSize.sizePolicy().hasHeightForWidth()) self.lSignalSize.setSizePolicy(sizePolicy) font = QtGui.QFont() font.setBold(True) font.setWeight(75) self.lSignalSize.setFont(font) self.lSignalSize.setAlignment(QtCore.Qt.AlignCenter) self.lSignalSize.setObjectName("lSignalSize") self.gridLayout_2.addWidget(self.lSignalSize, 11, 0, 1, 2) self.lblRepeatText = QtWidgets.QLabel(self.groupBox) self.lblRepeatText.setObjectName("lblRepeatText") self.gridLayout_2.addWidget(self.lblRepeatText, 16, 0, 1, 1) self.lblCurrentRepeatValue = QtWidgets.QLabel(self.groupBox) font = QtGui.QFont() font.setBold(True) font.setWeight(75) self.lblCurrentRepeatValue.setFont(font) self.lblCurrentRepeatValue.setAlignment(QtCore.Qt.AlignCenter) self.lblCurrentRepeatValue.setObjectName("lblCurrentRepeatValue") self.gridLayout_2.addWidget(self.lblCurrentRepeatValue, 17, 0, 1, 1) self.labelReceiveBufferFull = QtWidgets.QLabel(self.groupBox) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.labelReceiveBufferFull.sizePolicy().hasHeightForWidth()) self.labelReceiveBufferFull.setSizePolicy(sizePolicy) font = QtGui.QFont() font.setBold(True) font.setWeight(75) self.labelReceiveBufferFull.setFont(font) self.labelReceiveBufferFull.setAlignment(QtCore.Qt.AlignCenter) self.labelReceiveBufferFull.setObjectName("labelReceiveBufferFull") self.gridLayout_2.addWidget(self.labelReceiveBufferFull, 8, 0, 1, 1) self.labelReceiveBufferFull.hide() self.horizontalLayout = QtWidgets.QHBoxLayout() self.horizontalLayout.setObjectName("horizontalLayout") # spacerItem = QtWidgets.QSpacerItem(0, 0, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) # self.horizontalLayout.addItem(spacerItem) self.btnStart = QtWidgets.QToolButton() self.btnStart.setMinimumSize(QtCore.QSize(25, 25)) icon = QtGui.QIcon.fromTheme("media-record") self.btnStart.setIcon(icon) self.btnStart.setIconSize(QtCore.QSize(25, 25)) # self.btnStart.setToolButtonStyle(QtCore.Qt.ToolButtonTextUnderIcon) self.btnStart.setObjectName("btnStart") self.horizontalLayout.addWidget(self.btnStart) self.btnSave = QtWidgets.QToolButton(self.groupBox) self.btnSave.setMinimumSize(QtCore.QSize(64, 64)) icon = QtGui.QIcon.fromTheme("document-save") self.btnSave.setIcon(icon) self.btnSave.setIconSize(QtCore.QSize(32, 32)) self.btnSave.setToolButtonStyle(QtCore.Qt.ToolButtonTextUnderIcon) self.btnSave.setObjectName("btnSave") self.horizontalLayout.addWidget(self.btnSave) self.btnStop = QtWidgets.QToolButton(self.groupBox) self.btnStop.setMinimumSize(QtCore.QSize(25, 25)) icon = QtGui.QIcon.fromTheme("media-playback-stop") self.btnStop.setIcon(icon) self.btnStop.setIconSize(QtCore.QSize(25, 25)) # self.btnStop.setToolButtonStyle(QtCore.Qt.ToolButtonTextUnderIcon) self.btnStop.setObjectName("btnStop") self.horizontalLayout.addWidget(self.btnStop) self.btnClear = QtWidgets.QToolButton(self.groupBox) self.btnClear.setMinimumSize(QtCore.QSize(25, 25)) icon = QtGui.QIcon.fromTheme("view-refresh") self.btnClear.setIcon(icon) self.btnClear.setIconSize(QtCore.QSize(25, 25)) # self.btnClear.setToolButtonStyle(QtCore.Qt.ToolButtonTextUnderIcon) self.btnClear.setObjectName("btnClear") self.horizontalLayout.addWidget(self.btnClear) # ----------------------SAVE FILE not setting ----------------- self.btnSetting = QtWidgets.QToolButton(self.groupBox) self.btnSetting.setMinimumSize(QtCore.QSize(25, 25)) icon = QtGui.QIcon.fromTheme("document-save") self.btnSetting.setIcon(icon) self.btnSetting.setIconSize(QtCore.QSize(25, 25)) self.btnSetting.setCheckable(True) # self.btnSetting.setToolButtonStyle(QtCore.Qt.ToolButtonTextUnderIcon) self.btnSetting.setObjectName("btnSetting") self.horizontalLayout.addWidget(self.btnSetting) self.btnConf = QtWidgets.QToolButton(self.groupBox) self.btnConf.setMinimumSize(QtCore.QSize(25, 25)) icon = QtGui.QIcon.fromTheme("emblem-system") self.btnConf.setIcon(icon) self.btnConf.setIconSize(QtCore.QSize(25, 25)) self.btnConf.setObjectName("btnConf") self.horizontalLayout.addWidget(self.btnConf) self.btnRecordIQ = QtWidgets.QPushButton(self.groupBox) self.btnRecordIQ.setMaximumSize(QtCore.QSize(100, 35)) self.btnRecordIQ.setChecked(False) # icon = QtGui.QIcon.fromTheme("system-shutdown") # self.btnRecordIQ.setIcon(icon) # self.btnRecordIQ.setIconSize(QtCore.QSize(40, 50))] font = QtGui.QFont() font.setBold(False) font.setPixelSize(14) # font.set self.btnRecordIQ.setFont(font) self.btnRecordIQ.setObjectName("btnRecordIQ") self.btnRecordIQ.setText("Реєстрація\n IQ відліків") self.horizontalLayout.addWidget(self.btnRecordIQ) # self.spin_time_iq_record = QtWidgets.QSpinBox(self.groupBox) # self.spin_time_iq_record.setObjectName("spin_time_iq_record") # self.spin_time_iq_record.setMinimum(1) # self.spin_time_iq_record.setMaximum(15) # self.spin_time_iq_record.setValue(2) # self.spin_time_iq_record.setSingleStep(1) # self.spin_time_iq_record.setMaximumSize(QtCore.QSize(70, 35)) # # self.horizontalLayout.addWidget(self.spin_time_iq_record) spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout.addItem(spacerItem) self.lcdNumber = QtWidgets.QLCDNumber(self.groupBox) self.lcdNumber.setMinimumSize(QtCore.QSize(160, 25)) self.lcdNumber.setSmallDecimalPoint(True) self.lcdNumber.setDigitCount(10) self.lcdNumber.setMode(QtWidgets.QLCDNumber.Dec) self.lcdNumber.setSegmentStyle(QtWidgets.QLCDNumber.Flat) self.lcdNumber.setProperty("intValue", 0) self.lcdNumber.setObjectName("lcdNumber") self.horizontalLayout.addWidget(self.lcdNumber) self.horizontalLayout.addItem(spacerItem) self.horizontalLayout.addItem(spacerItem) #------------------------------------------------------------------------------- self.btnNuke1 = QtWidgets.QToolButton(self.groupBox) self.btnNuke1.setMinimumSize(QtCore.QSize(25, 25)) icon = QtGui.QIcon(QDir.currentPath() + config.MY_PATH + '/nuke1.png') self.btnNuke1.setIcon(icon) # self.btnNuke1.setEnabled(False) self.btnNuke1.setIconSize(QtCore.QSize(25, 25)) self.btnNuke1.setCheckable(True) self.btnNuke1.setObjectName("btnNuke1") self.btnNuke1.setStyleSheet("background-color: red") self.horizontalLayout.addWidget(self.btnNuke1) self.btnNuke2 = QtWidgets.QToolButton(self.groupBox) self.btnNuke2.setMinimumSize(QtCore.QSize(25, 25)) icon = QtGui.QIcon(QDir.currentPath() + config.MY_PATH + '/nuke2.png') self.btnNuke2.setIcon(icon) self.btnNuke2.setIconSize(QtCore.QSize(25, 25)) self.btnNuke2.setCheckable(True) self.btnNuke2.setObjectName("btnNuke2") # self.btnNuke2.setEnabled(False) self.btnNuke2.setStyleSheet("background-color: red") self.horizontalLayout.addWidget(self.btnNuke2) #------------------------------------------------------------------------------- self.btnMon = QtWidgets.QToolButton(self.groupBox) self.btnMon.setMinimumSize(QtCore.QSize(25, 25)) icon = QtGui.QIcon(QDir.currentPath() + config.MY_PATH + '/bar-chart.png') self.btnMon.setIcon(icon) self.btnMon.setIconSize(QtCore.QSize(25, 25)) self.btnMon.setObjectName("btnMon") self.horizontalLayout.addWidget(self.btnMon) self.gridLayout_2.addLayout(self.horizontalLayout, 1, 0, 1, 2) spacerItem2 = QtWidgets.QSpacerItem(20, 10, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) self.gridLayout_2.addItem(spacerItem2, 2, 0, 1, 1) self.verticalLayout_8.addWidget(self.groupBox) self.txtEditErrors = QtWidgets.QTextEdit( self.scrollAreaWidgetContents_2) self.txtEditErrors.setReadOnly(True) self.txtEditErrors.setObjectName("txtEditErrors") self.verticalLayout_8.addWidget(self.txtEditErrors) self.txtEditErrors.hide() self.scrollArea.setWidget(self.scrollAreaWidgetContents_2) self.layoutWidget = QtWidgets.QWidget(self.splitter) self.layoutWidget.setObjectName("layoutWidget") self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.layoutWidget) self.horizontalLayout_2.setContentsMargins(0, 0, 0, 0) self.horizontalLayout_2.setObjectName("horizontalLayout_2") self.stackedWidget = QtWidgets.QStackedWidget(self.layoutWidget) self.stackedWidget.setObjectName("stackedWidget") self.page_receive = QtWidgets.QWidget() self.page_receive.setObjectName("page_receive") self.verticalLayout_2 = QtWidgets.QVBoxLayout(self.page_receive) self.verticalLayout_2.setObjectName("verticalLayout_2") self.graphicsViewReceive = LiveGraphicView(self.page_receive) self.graphicsViewReceive.setVerticalScrollBarPolicy( QtCore.Qt.ScrollBarAlwaysOff) self.graphicsViewReceive.setHorizontalScrollBarPolicy( QtCore.Qt.ScrollBarAsNeeded) self.graphicsViewReceive.setObjectName("graphicsViewReceive") self.verticalLayout_2.addWidget(self.graphicsViewReceive) self.stackedWidget.addWidget(self.page_receive) self.page_send = QtWidgets.QWidget() self.page_send.setObjectName("page_send") self.verticalLayout_3 = QtWidgets.QVBoxLayout(self.page_send) self.verticalLayout_3.setObjectName("verticalLayout_3") self.graphicsViewSend = EditableGraphicView(self.page_send) self.graphicsViewSend.setMouseTracking(True) self.graphicsViewSend.setRenderHints(QtGui.QPainter.Antialiasing | QtGui.QPainter.TextAntialiasing) self.graphicsViewSend.setTransformationAnchor( QtWidgets.QGraphicsView.NoAnchor) self.graphicsViewSend.setResizeAnchor(QtWidgets.QGraphicsView.NoAnchor) self.graphicsViewSend.setObjectName("graphicsViewSend") self.verticalLayout_3.addWidget(self.graphicsViewSend) self.label_7 = QtWidgets.QLabel(self.page_send) font = QtGui.QFont() font.setItalic(True) self.label_7.setFont(font) self.label_7.setObjectName("label_7") self.verticalLayout_3.addWidget(self.label_7) self.stackedWidget.addWidget(self.page_send) self.page_continuous_send = QtWidgets.QWidget() self.page_continuous_send.setObjectName("page_continuous_send") self.verticalLayout_6 = QtWidgets.QVBoxLayout( self.page_continuous_send) self.verticalLayout_6.setObjectName("verticalLayout_6") self.graphicsViewContinuousSend = LiveGraphicView( self.page_continuous_send) self.graphicsViewContinuousSend.setRenderHints( QtGui.QPainter.Antialiasing | QtGui.QPainter.TextAntialiasing) self.graphicsViewContinuousSend.setObjectName( "graphicsViewContinuousSend") self.verticalLayout_6.addWidget(self.graphicsViewContinuousSend) self.stackedWidget.addWidget(self.page_continuous_send) self.page_spectrum = QtWidgets.QWidget() self.page_spectrum.setObjectName("page_spectrum") self.verticalLayout_7 = QtWidgets.QVBoxLayout(self.page_spectrum) self.verticalLayout_7.setObjectName("verticalLayout_7") self.graphicsViewFFT = LiveGraphicView(self.page_spectrum) self.graphicsViewFFT.setObjectName("graphicsViewFFT") self.verticalLayout_7.addWidget(self.graphicsViewFFT) self.graphicsViewSpectrogram = QtWidgets.QGraphicsView( self.page_spectrum) self.graphicsViewSpectrogram.setVerticalScrollBarPolicy( QtCore.Qt.ScrollBarAlwaysOff) self.graphicsViewSpectrogram.setHorizontalScrollBarPolicy( QtCore.Qt.ScrollBarAlwaysOff) self.graphicsViewSpectrogram.setRenderHints( QtGui.QPainter.SmoothPixmapTransform | QtGui.QPainter.TextAntialiasing) self.graphicsViewSpectrogram.setCacheMode( QtWidgets.QGraphicsView.CacheNone) self.graphicsViewSpectrogram.setViewportUpdateMode( QtWidgets.QGraphicsView.MinimalViewportUpdate) self.graphicsViewSpectrogram.setObjectName("graphicsViewSpectrogram") self.verticalLayout_7.addWidget(self.graphicsViewSpectrogram) self.verticalLayout_7.setStretch(0, 1) self.verticalLayout_7.setStretch(1, 1) self.stackedWidget.addWidget(self.page_spectrum) self.page_sniff = QtWidgets.QWidget() self.page_sniff.setObjectName("page_sniff") self.verticalLayout_4 = QtWidgets.QVBoxLayout(self.page_sniff) self.verticalLayout_4.setObjectName("verticalLayout_4") self.graphicsView_sniff_Preview = LiveGraphicView(self.page_sniff) self.graphicsView_sniff_Preview.setObjectName( "graphicsView_sniff_Preview") self.verticalLayout_4.addWidget(self.graphicsView_sniff_Preview) self.txtEd_sniff_Preview = QtWidgets.QPlainTextEdit(self.page_sniff) self.txtEd_sniff_Preview.setLineWrapMode( QtWidgets.QPlainTextEdit.NoWrap) self.txtEd_sniff_Preview.setReadOnly(True) self.txtEd_sniff_Preview.setMaximumBlockCount(100) self.txtEd_sniff_Preview.setObjectName("txtEd_sniff_Preview") self.verticalLayout_4.addWidget(self.txtEd_sniff_Preview) self.btnAccept = QtWidgets.QPushButton(self.page_sniff) self.btnAccept.setAutoDefault(False) self.btnAccept.setObjectName("btnAccept") self.verticalLayout_4.addWidget(self.btnAccept) self.stackedWidget.addWidget(self.page_sniff) self.horizontalLayout_2.addWidget(self.stackedWidget) self.verticalLayout_5 = QtWidgets.QVBoxLayout() self.verticalLayout_5.setObjectName("verticalLayout_5") #---------------------------------- self.gridLayout = QtWidgets.QGridLayout() self.gridLayout.setObjectName("gridLayout") #---------------------------------- self.label_y_scale = QtWidgets.QLabel(self.layoutWidget) self.label_y_scale.setObjectName("label_y_scale") pixmap = QPixmap(QDir.currentPath() + config.MY_PATH + "/1.png") self.label_y_scale.setPixmap(pixmap) self.gridLayout.addWidget(self.label_y_scale, 0, 0, 1, 1) #------------- #+============ #---------------------------------- # self.sliderYscale = QtWidgets.QSlider() # ---------------------------------- self.sliderYscale = QtWidgets.QSlider() self.sliderYscale.setMinimum(1) self.sliderYscale.setMaximum(1000) self.sliderYscale.setProperty("value", 1) self.sliderYscale.setOrientation(QtCore.Qt.Vertical) self.sliderYscale.setTickInterval(1) self.sliderYscale.setObjectName("sliderYscale") # self.verticalLayout_5.addWidget(self.sliderYscale) #---- # self.label_y_scale1 = QtWidgets.QLabel(self.layoutWidget) # # self.label_y_scale1 = MyLabel('Підсилення') # # self.layoutWidget.layout().addWidget(self.label_y_scale1) # # self.label_y_scale1.setObjectName("label_y_scale1") # self.verticalLayout_5.addWidget(self.label_y_scale1) self.sliderYscale1 = QtWidgets.QSlider(self.layoutWidget) self.sliderYscale1.setMinimum(0) self.sliderYscale1.setMaximum(60) self.sliderYscale1.setProperty("value", 15) self.sliderYscale1.setOrientation(QtCore.Qt.Vertical) self.sliderYscale1.setTickInterval(1) self.sliderYscale1.setObjectName("sliderYscale1") self.verticalLayout_5.addWidget(self.sliderYscale1) self.label_y_scale2 = QtWidgets.QLabel(self.layoutWidget) pixmap = QPixmap(QDir.currentPath() + config.MY_PATH + "/2.png") self.label_y_scale2.setPixmap(pixmap) self.label_y_scale2.setObjectName("label_y_scale2") self.gridLayout.addWidget(self.label_y_scale2, 1, 0, 1, 1) self.sliderYscale2 = QtWidgets.QSlider(self.layoutWidget) self.sliderYscale2.setMinimum(1) self.sliderYscale2.setMaximum(3) self.sliderYscale2.setProperty("value", 2) self.sliderYscale2.setOrientation(QtCore.Qt.Vertical) self.sliderYscale2.setTickInterval(1) self.sliderYscale2.setObjectName("sliderYscale2") self.verticalLayout_5.addWidget(self.sliderYscale2) #------------ self.horizontalLayout_2.addLayout(self.verticalLayout_5) self.horizontalLayout_2.addLayout(self.gridLayout) self.verticalLayout.addWidget(self.splitter) self.retranslateUi(SendRecvDialog) self.stackedWidget.setCurrentIndex(4) SendRecvDialog.setTabOrder(self.btnStart, self.btnStop) SendRecvDialog.setTabOrder(self.btnStop, self.btnSave) SendRecvDialog.setTabOrder(self.btnSave, self.btnClear) SendRecvDialog.setTabOrder(self.btnClear, self.txtEd_sniff_Preview) SendRecvDialog.setTabOrder(self.txtEd_sniff_Preview, self.sliderYscale) SendRecvDialog.setTabOrder(self.sliderYscale, self.txtEditErrors) SendRecvDialog.setTabOrder(self.txtEditErrors, self.graphicsViewSend) SendRecvDialog.setTabOrder(self.graphicsViewSend, self.graphicsViewReceive) SendRecvDialog.setTabOrder(self.graphicsViewReceive, self.btnAccept) def retranslateUi(self, SendRecvDialog): _translate = QtCore.QCoreApplication.translate SendRecvDialog.setWindowTitle( _translate("SendRecvDialog", "Record Signal")) self.progressBarMessage.setFormat(_translate("SendRecvDialog", "%v/%m")) self.labelCurrentMessage.setText( _translate("SendRecvDialog", "Current message:")) self.lReceiveBufferFullText.setText( _translate("SendRecvDialog", "Receive buffer full:")) self.progressBarSample.setFormat(_translate("SendRecvDialog", "%v/%m")) self.lSamplesSentText.setText( _translate("SendRecvDialog", "Current sample:")) self.lTimeText.setText( _translate("SendRecvDialog", "Час поточного запису:")) self.lSamplesCapturedText.setText( _translate("SendRecvDialog", "Поточна кількість семплів:")) self.lSignalSizeText.setText( _translate("SendRecvDialog", "Розмір поточного сигналу:")) self.lSamplesCaptured.setText(_translate("SendRecvDialog", "0")) self.lTime.setText(_translate("SendRecvDialog", "0")) self.lSignalSize.setText(_translate("SendRecvDialog", "0")) self.lblRepeatText.setText( _translate("SendRecvDialog", "Current iteration:")) self.lblCurrentRepeatValue.setText(_translate("SendRecvDialog", "0")) self.labelReceiveBufferFull.setText(_translate("SendRecvDialog", "0%")) self.btnStart.setToolTip(_translate("SendRecvDialog", "Початок запису")) self.btnStart.setText(_translate("SendRecvDialog", "Старт")) self.btnStop.setToolTip(_translate("SendRecvDialog", "Кінець запису")) self.btnStop.setText(_translate("SendRecvDialog", "Зупинити")) self.btnSave.setText(_translate("SendRecvDialog", "Save...")) self.btnClear.setToolTip(_translate("SendRecvDialog", "Очистити")) # self.btnClear.setText(_translate("SendRecvDialog", "Clear")) self.label_7.setText( _translate("SendRecvDialog", "Hint: You can edit the raw signal before sending.")) self.btnAccept.setToolTip( _translate( "SendRecvDialog", "<html><head/><body><p>Accept the sniffed data and load it into <span style=\" font-weight:600;\">Analysis</span> tab.</p></body></html>" )) self.btnAccept.setText( _translate("SendRecvDialog", "Accept data (Open in Analysis)")) #---- self.label_y_scale.setText(_translate("SendRecvDialog", "")) # self.label_y_scale1.setText(_translate("SendRecvDialog", "Підсилення")) self.label_y_scale2.setText(_translate("SendRecvDialog", "")) self.btnSetting.setToolTip(_translate("SendRecvDialog", "Збереження")) self.btnConf.setToolTip(_translate("SendRecvDialog", "Налаштування"))
class Ui_SendRecvDialog(object): def setupUi(self, SendRecvDialog): SendRecvDialog.setObjectName("SendRecvDialog") SendRecvDialog.setWindowModality(QtCore.Qt.NonModal) SendRecvDialog.resize(921, 716) SendRecvDialog.setMouseTracking(False) self.verticalLayout = QtWidgets.QVBoxLayout(SendRecvDialog) self.verticalLayout.setObjectName("verticalLayout") self.splitter = QtWidgets.QSplitter(SendRecvDialog) self.splitter.setStyleSheet( "QSplitter::handle:horizontal {\n" "margin: 4px 0px;\n" " background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, \n" "stop:0 rgba(255, 255, 255, 0), \n" "stop:0.5 rgba(100, 100, 100, 100), \n" "stop:1 rgba(255, 255, 255, 0));\n" "image: url(:/icons/data/icons/rotated_splitter_handle.png);\n" "}") self.splitter.setOrientation(QtCore.Qt.Horizontal) self.splitter.setObjectName("splitter") self.scrollArea = QtWidgets.QScrollArea(self.splitter) 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, 433, 1238)) self.scrollAreaWidgetContents_2.setObjectName( "scrollAreaWidgetContents_2") self.gridLayout = QtWidgets.QGridLayout( self.scrollAreaWidgetContents_2) self.gridLayout.setContentsMargins(0, 0, 0, 0) self.gridLayout.setObjectName("gridLayout") self.label_3 = QtWidgets.QLabel(self.scrollAreaWidgetContents_2) self.label_3.setObjectName("label_3") self.gridLayout.addWidget(self.label_3, 0, 0, 1, 1) self.labelDeviceArgs = QtWidgets.QLabel( self.scrollAreaWidgetContents_2) self.labelDeviceArgs.setToolTipDuration(-1) self.labelDeviceArgs.setStyleSheet("") self.labelDeviceArgs.setObjectName("labelDeviceArgs") self.gridLayout.addWidget(self.labelDeviceArgs, 1, 0, 1, 1) self.lineEditDeviceArgs = QtWidgets.QLineEdit( self.scrollAreaWidgetContents_2) self.lineEditDeviceArgs.setObjectName("lineEditDeviceArgs") self.gridLayout.addWidget(self.lineEditDeviceArgs, 1, 1, 1, 2) self.labelChannel = QtWidgets.QLabel(self.scrollAreaWidgetContents_2) self.labelChannel.setObjectName("labelChannel") self.gridLayout.addWidget(self.labelChannel, 2, 0, 1, 1) self.labelAntenna = QtWidgets.QLabel(self.scrollAreaWidgetContents_2) self.labelAntenna.setObjectName("labelAntenna") self.gridLayout.addWidget(self.labelAntenna, 3, 0, 1, 1) self.labelIP = QtWidgets.QLabel(self.scrollAreaWidgetContents_2) self.labelIP.setObjectName("labelIP") self.gridLayout.addWidget(self.labelIP, 4, 0, 1, 1) self.lineEditIP = QtWidgets.QLineEdit(self.scrollAreaWidgetContents_2) self.lineEditIP.setObjectName("lineEditIP") self.gridLayout.addWidget(self.lineEditIP, 4, 1, 1, 2) self.labelPort = QtWidgets.QLabel(self.scrollAreaWidgetContents_2) self.labelPort.setObjectName("labelPort") self.gridLayout.addWidget(self.labelPort, 5, 0, 1, 1) self.labelFreq = QtWidgets.QLabel(self.scrollAreaWidgetContents_2) self.labelFreq.setObjectName("labelFreq") self.gridLayout.addWidget(self.labelFreq, 6, 0, 1, 1) self.spinBoxFreq = KillerDoubleSpinBox(self.scrollAreaWidgetContents_2) self.spinBoxFreq.setDecimals(3) self.spinBoxFreq.setMinimum(0.001) self.spinBoxFreq.setMaximum(1000000000000.0) self.spinBoxFreq.setObjectName("spinBoxFreq") self.gridLayout.addWidget(self.spinBoxFreq, 6, 1, 1, 2) self.labelSampleRate = QtWidgets.QLabel( self.scrollAreaWidgetContents_2) self.labelSampleRate.setObjectName("labelSampleRate") self.gridLayout.addWidget(self.labelSampleRate, 7, 0, 1, 1) self.spinBoxSampleRate = KillerDoubleSpinBox( self.scrollAreaWidgetContents_2) self.spinBoxSampleRate.setDecimals(3) self.spinBoxSampleRate.setMinimum(0.001) self.spinBoxSampleRate.setMaximum(1000000000000.0) self.spinBoxSampleRate.setObjectName("spinBoxSampleRate") self.gridLayout.addWidget(self.spinBoxSampleRate, 7, 1, 1, 2) self.btnLockBWSR = QtWidgets.QToolButton( self.scrollAreaWidgetContents_2) icon = QtGui.QIcon() icon.addPixmap(QtGui.QPixmap(":/icons/data/icons/lock.svg"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.btnLockBWSR.setIcon(icon) self.btnLockBWSR.setCheckable(True) self.btnLockBWSR.setChecked(True) self.btnLockBWSR.setObjectName("btnLockBWSR") self.gridLayout.addWidget(self.btnLockBWSR, 7, 3, 2, 1) self.labelBandwidth = QtWidgets.QLabel(self.scrollAreaWidgetContents_2) self.labelBandwidth.setObjectName("labelBandwidth") self.gridLayout.addWidget(self.labelBandwidth, 8, 0, 1, 1) self.spinBoxBandwidth = KillerDoubleSpinBox( self.scrollAreaWidgetContents_2) self.spinBoxBandwidth.setDecimals(3) self.spinBoxBandwidth.setMinimum(0.001) self.spinBoxBandwidth.setMaximum(1000000000000.0) self.spinBoxBandwidth.setObjectName("spinBoxBandwidth") self.gridLayout.addWidget(self.spinBoxBandwidth, 8, 1, 1, 2) self.labelGain = QtWidgets.QLabel(self.scrollAreaWidgetContents_2) self.labelGain.setObjectName("labelGain") self.gridLayout.addWidget(self.labelGain, 9, 0, 1, 1) self.sliderGain = QtWidgets.QSlider(self.scrollAreaWidgetContents_2) self.sliderGain.setMaximum(100) self.sliderGain.setSingleStep(1) self.sliderGain.setOrientation(QtCore.Qt.Horizontal) self.sliderGain.setObjectName("sliderGain") self.gridLayout.addWidget(self.sliderGain, 9, 1, 1, 1) self.spinBoxGain = QtWidgets.QSpinBox(self.scrollAreaWidgetContents_2) sizePolicy = QtWidgets.QSizePolicy( QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.spinBoxGain.sizePolicy().hasHeightForWidth()) self.spinBoxGain.setSizePolicy(sizePolicy) self.spinBoxGain.setMinimum(0) self.spinBoxGain.setMaximum(99) self.spinBoxGain.setProperty("value", 40) self.spinBoxGain.setObjectName("spinBoxGain") self.gridLayout.addWidget(self.spinBoxGain, 9, 2, 1, 1) self.labelIFGain = QtWidgets.QLabel(self.scrollAreaWidgetContents_2) self.labelIFGain.setObjectName("labelIFGain") self.gridLayout.addWidget(self.labelIFGain, 10, 0, 1, 1) self.sliderIFGain = QtWidgets.QSlider(self.scrollAreaWidgetContents_2) self.sliderIFGain.setOrientation(QtCore.Qt.Horizontal) self.sliderIFGain.setObjectName("sliderIFGain") self.gridLayout.addWidget(self.sliderIFGain, 10, 1, 1, 1) self.spinBoxIFGain = QtWidgets.QSpinBox( self.scrollAreaWidgetContents_2) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.spinBoxIFGain.sizePolicy().hasHeightForWidth()) self.spinBoxIFGain.setSizePolicy(sizePolicy) self.spinBoxIFGain.setObjectName("spinBoxIFGain") self.gridLayout.addWidget(self.spinBoxIFGain, 10, 2, 1, 1) self.labelBasebandGain = QtWidgets.QLabel( self.scrollAreaWidgetContents_2) self.labelBasebandGain.setObjectName("labelBasebandGain") self.gridLayout.addWidget(self.labelBasebandGain, 11, 0, 1, 1) self.sliderBasebandGain = QtWidgets.QSlider( self.scrollAreaWidgetContents_2) self.sliderBasebandGain.setSliderPosition(0) self.sliderBasebandGain.setOrientation(QtCore.Qt.Horizontal) self.sliderBasebandGain.setInvertedAppearance(False) self.sliderBasebandGain.setInvertedControls(False) self.sliderBasebandGain.setTickPosition(QtWidgets.QSlider.NoTicks) self.sliderBasebandGain.setTickInterval(0) self.sliderBasebandGain.setObjectName("sliderBasebandGain") self.gridLayout.addWidget(self.sliderBasebandGain, 11, 1, 1, 1) self.spinBoxBasebandGain = QtWidgets.QSpinBox( self.scrollAreaWidgetContents_2) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.spinBoxBasebandGain.sizePolicy().hasHeightForWidth()) self.spinBoxBasebandGain.setSizePolicy(sizePolicy) self.spinBoxBasebandGain.setObjectName("spinBoxBasebandGain") self.gridLayout.addWidget(self.spinBoxBasebandGain, 11, 2, 1, 1) self.labelFreqCorrection = QtWidgets.QLabel( self.scrollAreaWidgetContents_2) self.labelFreqCorrection.setObjectName("labelFreqCorrection") self.gridLayout.addWidget(self.labelFreqCorrection, 12, 0, 1, 1) self.labelDirectSampling = QtWidgets.QLabel( self.scrollAreaWidgetContents_2) self.labelDirectSampling.setObjectName("labelDirectSampling") self.gridLayout.addWidget(self.labelDirectSampling, 13, 0, 1, 1) self.labelNRepeat = QtWidgets.QLabel(self.scrollAreaWidgetContents_2) self.labelNRepeat.setObjectName("labelNRepeat") self.gridLayout.addWidget(self.labelNRepeat, 14, 0, 1, 1) self.spinBoxNRepeat = QtWidgets.QSpinBox( self.scrollAreaWidgetContents_2) self.spinBoxNRepeat.setMaximum(999999999) self.spinBoxNRepeat.setObjectName("spinBoxNRepeat") self.gridLayout.addWidget(self.spinBoxNRepeat, 14, 1, 1, 2) self.label_sniff_Noise = QtWidgets.QLabel( self.scrollAreaWidgetContents_2) self.label_sniff_Noise.setObjectName("label_sniff_Noise") self.gridLayout.addWidget(self.label_sniff_Noise, 15, 0, 1, 1) self.label_sniff_Center = QtWidgets.QLabel( self.scrollAreaWidgetContents_2) self.label_sniff_Center.setObjectName("label_sniff_Center") self.gridLayout.addWidget(self.label_sniff_Center, 16, 0, 1, 1) self.label_sniff_BitLength = QtWidgets.QLabel( self.scrollAreaWidgetContents_2) self.label_sniff_BitLength.setObjectName("label_sniff_BitLength") self.gridLayout.addWidget(self.label_sniff_BitLength, 17, 0, 1, 1) self.spinbox_sniff_BitLen = QtWidgets.QSpinBox( self.scrollAreaWidgetContents_2) self.spinbox_sniff_BitLen.setMinimum(1) self.spinbox_sniff_BitLen.setMaximum(999999999) self.spinbox_sniff_BitLen.setObjectName("spinbox_sniff_BitLen") self.gridLayout.addWidget(self.spinbox_sniff_BitLen, 17, 1, 1, 2) self.label_sniff_Tolerance = QtWidgets.QLabel( self.scrollAreaWidgetContents_2) self.label_sniff_Tolerance.setObjectName("label_sniff_Tolerance") self.gridLayout.addWidget(self.label_sniff_Tolerance, 18, 0, 1, 1) self.label_sniff_Modulation = QtWidgets.QLabel( self.scrollAreaWidgetContents_2) self.label_sniff_Modulation.setObjectName("label_sniff_Modulation") self.gridLayout.addWidget(self.label_sniff_Modulation, 19, 0, 1, 1) self.label_sniff_viewtype = QtWidgets.QLabel( self.scrollAreaWidgetContents_2) self.label_sniff_viewtype.setObjectName("label_sniff_viewtype") self.gridLayout.addWidget(self.label_sniff_viewtype, 20, 0, 1, 1) self.label_sniff_encoding = QtWidgets.QLabel( self.scrollAreaWidgetContents_2) self.label_sniff_encoding.setObjectName("label_sniff_encoding") self.gridLayout.addWidget(self.label_sniff_encoding, 21, 0, 1, 1) self.label_sniff_OutputFile = QtWidgets.QLabel( self.scrollAreaWidgetContents_2) self.label_sniff_OutputFile.setObjectName("label_sniff_OutputFile") self.gridLayout.addWidget(self.label_sniff_OutputFile, 22, 0, 1, 1) self.lineEdit_sniff_OutputFile = QtWidgets.QLineEdit( self.scrollAreaWidgetContents_2) self.lineEdit_sniff_OutputFile.setReadOnly(False) self.lineEdit_sniff_OutputFile.setClearButtonEnabled(True) self.lineEdit_sniff_OutputFile.setObjectName( "lineEdit_sniff_OutputFile") self.gridLayout.addWidget(self.lineEdit_sniff_OutputFile, 22, 1, 1, 2) self.groupBox = QtWidgets.QGroupBox(self.scrollAreaWidgetContents_2) self.groupBox.setTitle("") self.groupBox.setObjectName("groupBox") self.gridLayout_2 = QtWidgets.QGridLayout(self.groupBox) self.gridLayout_2.setContentsMargins(-1, 0, -1, -1) self.gridLayout_2.setObjectName("gridLayout_2") self.lReceiveBufferFullText = QtWidgets.QLabel(self.groupBox) self.lReceiveBufferFullText.setObjectName("lReceiveBufferFullText") self.gridLayout_2.addWidget(self.lReceiveBufferFullText, 7, 0, 1, 1) self.progressBar = QtWidgets.QProgressBar(self.groupBox) self.progressBar.setProperty("value", 0) self.progressBar.setObjectName("progressBar") self.gridLayout_2.addWidget(self.progressBar, 19, 0, 1, 1) self.lSamplesSentText = QtWidgets.QLabel(self.groupBox) self.lSamplesSentText.setObjectName("lSamplesSentText") self.gridLayout_2.addWidget(self.lSamplesSentText, 18, 0, 1, 1) spacerItem = QtWidgets.QSpacerItem(20, 10, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) self.gridLayout_2.addItem(spacerItem, 2, 0, 1, 1) self.lTimeText = QtWidgets.QLabel(self.groupBox) self.lTimeText.setObjectName("lTimeText") self.gridLayout_2.addWidget(self.lTimeText, 12, 0, 1, 1) self.lSamplesCapturedText = QtWidgets.QLabel(self.groupBox) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.lSamplesCapturedText.sizePolicy().hasHeightForWidth()) self.lSamplesCapturedText.setSizePolicy(sizePolicy) self.lSamplesCapturedText.setObjectName("lSamplesCapturedText") self.gridLayout_2.addWidget(self.lSamplesCapturedText, 5, 0, 1, 1) self.horizontalLayout = QtWidgets.QHBoxLayout() self.horizontalLayout.setObjectName("horizontalLayout") spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout.addItem(spacerItem1) self.btnStart = QtWidgets.QToolButton(self.groupBox) self.btnStart.setMinimumSize(QtCore.QSize(42, 42)) self.btnStart.setMaximumSize(QtCore.QSize(42, 42)) self.btnStart.setText("") icon = QtGui.QIcon.fromTheme("media-record") self.btnStart.setIcon(icon) self.btnStart.setIconSize(QtCore.QSize(32, 32)) self.btnStart.setObjectName("btnStart") self.horizontalLayout.addWidget(self.btnStart) self.btnStop = QtWidgets.QToolButton(self.groupBox) self.btnStop.setMinimumSize(QtCore.QSize(42, 42)) self.btnStop.setMaximumSize(QtCore.QSize(42, 42)) self.btnStop.setText("") icon = QtGui.QIcon.fromTheme("media-playback-stop") self.btnStop.setIcon(icon) self.btnStop.setIconSize(QtCore.QSize(32, 32)) self.btnStop.setObjectName("btnStop") self.horizontalLayout.addWidget(self.btnStop) self.btnSave = QtWidgets.QToolButton(self.groupBox) self.btnSave.setMinimumSize(QtCore.QSize(42, 42)) self.btnSave.setMaximumSize(QtCore.QSize(42, 42)) icon = QtGui.QIcon.fromTheme("document-save") self.btnSave.setIcon(icon) self.btnSave.setIconSize(QtCore.QSize(32, 32)) self.btnSave.setObjectName("btnSave") self.horizontalLayout.addWidget(self.btnSave) self.btnClear = QtWidgets.QToolButton(self.groupBox) self.btnClear.setMinimumSize(QtCore.QSize(42, 42)) self.btnClear.setMaximumSize(QtCore.QSize(42, 42)) self.btnClear.setText("") icon = QtGui.QIcon.fromTheme("view-refresh") self.btnClear.setIcon(icon) self.btnClear.setIconSize(QtCore.QSize(32, 32)) self.btnClear.setObjectName("btnClear") self.horizontalLayout.addWidget(self.btnClear) spacerItem2 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout.addItem(spacerItem2) self.gridLayout_2.addLayout(self.horizontalLayout, 1, 0, 1, 2) self.lSignalSizeText = QtWidgets.QLabel(self.groupBox) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.lSignalSizeText.sizePolicy().hasHeightForWidth()) self.lSignalSizeText.setSizePolicy(sizePolicy) self.lSignalSizeText.setObjectName("lSignalSizeText") self.gridLayout_2.addWidget(self.lSignalSizeText, 9, 0, 1, 1) self.lSamplesCaptured = QtWidgets.QLabel(self.groupBox) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.lSamplesCaptured.sizePolicy().hasHeightForWidth()) self.lSamplesCaptured.setSizePolicy(sizePolicy) font = QtGui.QFont() font.setBold(True) font.setWeight(75) self.lSamplesCaptured.setFont(font) self.lSamplesCaptured.setAlignment(QtCore.Qt.AlignCenter) self.lSamplesCaptured.setObjectName("lSamplesCaptured") self.gridLayout_2.addWidget(self.lSamplesCaptured, 6, 0, 1, 2) self.lTime = QtWidgets.QLabel(self.groupBox) font = QtGui.QFont() font.setBold(True) font.setWeight(75) self.lTime.setFont(font) self.lTime.setAlignment(QtCore.Qt.AlignCenter) self.lTime.setObjectName("lTime") self.gridLayout_2.addWidget(self.lTime, 15, 0, 1, 2) self.lSignalSize = QtWidgets.QLabel(self.groupBox) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.lSignalSize.sizePolicy().hasHeightForWidth()) self.lSignalSize.setSizePolicy(sizePolicy) font = QtGui.QFont() font.setBold(True) font.setWeight(75) self.lSignalSize.setFont(font) self.lSignalSize.setAlignment(QtCore.Qt.AlignCenter) self.lSignalSize.setObjectName("lSignalSize") self.gridLayout_2.addWidget(self.lSignalSize, 11, 0, 1, 2) self.lblRepeatText = QtWidgets.QLabel(self.groupBox) self.lblRepeatText.setObjectName("lblRepeatText") self.gridLayout_2.addWidget(self.lblRepeatText, 16, 0, 1, 1) self.lblCurrentRepeatValue = QtWidgets.QLabel(self.groupBox) font = QtGui.QFont() font.setBold(True) font.setWeight(75) self.lblCurrentRepeatValue.setFont(font) self.lblCurrentRepeatValue.setAlignment(QtCore.Qt.AlignCenter) self.lblCurrentRepeatValue.setObjectName("lblCurrentRepeatValue") self.gridLayout_2.addWidget(self.lblCurrentRepeatValue, 17, 0, 1, 1) self.labelReceiveBufferFull = QtWidgets.QLabel(self.groupBox) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.labelReceiveBufferFull.sizePolicy().hasHeightForWidth()) self.labelReceiveBufferFull.setSizePolicy(sizePolicy) font = QtGui.QFont() font.setBold(True) font.setWeight(75) self.labelReceiveBufferFull.setFont(font) self.labelReceiveBufferFull.setAlignment(QtCore.Qt.AlignCenter) self.labelReceiveBufferFull.setObjectName("labelReceiveBufferFull") self.gridLayout_2.addWidget(self.labelReceiveBufferFull, 8, 0, 1, 1) self.gridLayout.addWidget(self.groupBox, 23, 0, 1, 3) self.txtEditErrors = QtWidgets.QTextEdit( self.scrollAreaWidgetContents_2) self.txtEditErrors.setReadOnly(True) self.txtEditErrors.setObjectName("txtEditErrors") self.gridLayout.addWidget(self.txtEditErrors, 24, 0, 1, 4) self.cbDevice = QtWidgets.QComboBox(self.scrollAreaWidgetContents_2) self.cbDevice.setObjectName("cbDevice") self.cbDevice.addItem("") self.cbDevice.addItem("") self.gridLayout.addWidget(self.cbDevice, 0, 1, 1, 2) self.comboBoxChannel = QtWidgets.QComboBox( self.scrollAreaWidgetContents_2) self.comboBoxChannel.setObjectName("comboBoxChannel") self.gridLayout.addWidget(self.comboBoxChannel, 2, 1, 1, 2) self.comboBoxAntenna = QtWidgets.QComboBox( self.scrollAreaWidgetContents_2) self.comboBoxAntenna.setObjectName("comboBoxAntenna") self.gridLayout.addWidget(self.comboBoxAntenna, 3, 1, 1, 2) self.spinBoxPort = QtWidgets.QSpinBox(self.scrollAreaWidgetContents_2) self.spinBoxPort.setMinimum(1) self.spinBoxPort.setMaximum(65535) self.spinBoxPort.setProperty("value", 1234) self.spinBoxPort.setObjectName("spinBoxPort") self.gridLayout.addWidget(self.spinBoxPort, 5, 1, 1, 2) self.spinBoxFreqCorrection = QtWidgets.QSpinBox( self.scrollAreaWidgetContents_2) self.spinBoxFreqCorrection.setMinimum(-1000) self.spinBoxFreqCorrection.setMaximum(1000) self.spinBoxFreqCorrection.setProperty("value", 1) self.spinBoxFreqCorrection.setObjectName("spinBoxFreqCorrection") self.gridLayout.addWidget(self.spinBoxFreqCorrection, 12, 1, 1, 2) self.comboBoxDirectSampling = QtWidgets.QComboBox( self.scrollAreaWidgetContents_2) self.comboBoxDirectSampling.setObjectName("comboBoxDirectSampling") self.gridLayout.addWidget(self.comboBoxDirectSampling, 13, 1, 1, 2) self.spinbox_sniff_Noise = QtWidgets.QDoubleSpinBox( self.scrollAreaWidgetContents_2) self.spinbox_sniff_Noise.setDecimals(4) self.spinbox_sniff_Noise.setMaximum(1.0) self.spinbox_sniff_Noise.setObjectName("spinbox_sniff_Noise") self.gridLayout.addWidget(self.spinbox_sniff_Noise, 15, 1, 1, 2) self.spinbox_sniff_Center = QtWidgets.QDoubleSpinBox( self.scrollAreaWidgetContents_2) self.spinbox_sniff_Center.setDecimals(4) self.spinbox_sniff_Center.setMinimum(-3.14) self.spinbox_sniff_Center.setMaximum(3.14) self.spinbox_sniff_Center.setObjectName("spinbox_sniff_Center") self.gridLayout.addWidget(self.spinbox_sniff_Center, 16, 1, 1, 2) self.spinbox_sniff_ErrorTolerance = QtWidgets.QSpinBox( self.scrollAreaWidgetContents_2) self.spinbox_sniff_ErrorTolerance.setMaximum(999999) self.spinbox_sniff_ErrorTolerance.setProperty("value", 5) self.spinbox_sniff_ErrorTolerance.setObjectName( "spinbox_sniff_ErrorTolerance") self.gridLayout.addWidget(self.spinbox_sniff_ErrorTolerance, 18, 1, 1, 2) self.combox_sniff_Modulation = QtWidgets.QComboBox( self.scrollAreaWidgetContents_2) self.combox_sniff_Modulation.setObjectName("combox_sniff_Modulation") self.combox_sniff_Modulation.addItem("") self.combox_sniff_Modulation.addItem("") self.combox_sniff_Modulation.addItem("") self.gridLayout.addWidget(self.combox_sniff_Modulation, 19, 1, 1, 2) self.comboBox_sniff_viewtype = QtWidgets.QComboBox( self.scrollAreaWidgetContents_2) self.comboBox_sniff_viewtype.setObjectName("comboBox_sniff_viewtype") self.comboBox_sniff_viewtype.addItem("") self.comboBox_sniff_viewtype.addItem("") self.comboBox_sniff_viewtype.addItem("") self.gridLayout.addWidget(self.comboBox_sniff_viewtype, 20, 1, 1, 2) self.comboBox_sniff_encoding = QtWidgets.QComboBox( self.scrollAreaWidgetContents_2) self.comboBox_sniff_encoding.setObjectName("comboBox_sniff_encoding") self.gridLayout.addWidget(self.comboBox_sniff_encoding, 21, 1, 1, 2) self.scrollArea.setWidget(self.scrollAreaWidgetContents_2) self.layoutWidget = QtWidgets.QWidget(self.splitter) self.layoutWidget.setObjectName("layoutWidget") self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.layoutWidget) self.horizontalLayout_2.setContentsMargins(0, 0, 0, 0) self.horizontalLayout_2.setObjectName("horizontalLayout_2") self.stackedWidget = QtWidgets.QStackedWidget(self.layoutWidget) self.stackedWidget.setObjectName("stackedWidget") self.page_receive = QtWidgets.QWidget() self.page_receive.setObjectName("page_receive") self.verticalLayout_2 = QtWidgets.QVBoxLayout(self.page_receive) self.verticalLayout_2.setContentsMargins(0, 0, 0, 0) self.verticalLayout_2.setObjectName("verticalLayout_2") self.graphicsViewReceive = LiveGraphicView(self.page_receive) self.graphicsViewReceive.setVerticalScrollBarPolicy( QtCore.Qt.ScrollBarAlwaysOff) self.graphicsViewReceive.setHorizontalScrollBarPolicy( QtCore.Qt.ScrollBarAsNeeded) self.graphicsViewReceive.setObjectName("graphicsViewReceive") self.verticalLayout_2.addWidget(self.graphicsViewReceive) self.stackedWidget.addWidget(self.page_receive) self.page_send = QtWidgets.QWidget() self.page_send.setObjectName("page_send") self.verticalLayout_3 = QtWidgets.QVBoxLayout(self.page_send) self.verticalLayout_3.setContentsMargins(0, 0, 0, 0) self.verticalLayout_3.setObjectName("verticalLayout_3") self.graphicsViewSend = EditableGraphicView(self.page_send) self.graphicsViewSend.setMouseTracking(True) self.graphicsViewSend.setRenderHints(QtGui.QPainter.Antialiasing | QtGui.QPainter.TextAntialiasing) self.graphicsViewSend.setTransformationAnchor( QtWidgets.QGraphicsView.NoAnchor) self.graphicsViewSend.setResizeAnchor(QtWidgets.QGraphicsView.NoAnchor) self.graphicsViewSend.setObjectName("graphicsViewSend") self.verticalLayout_3.addWidget(self.graphicsViewSend) self.label_7 = QtWidgets.QLabel(self.page_send) font = QtGui.QFont() font.setItalic(True) self.label_7.setFont(font) self.label_7.setObjectName("label_7") self.verticalLayout_3.addWidget(self.label_7) self.stackedWidget.addWidget(self.page_send) self.page_continuous_send = QtWidgets.QWidget() self.page_continuous_send.setObjectName("page_continuous_send") self.verticalLayout_6 = QtWidgets.QVBoxLayout( self.page_continuous_send) self.verticalLayout_6.setContentsMargins(0, 0, 0, 0) self.verticalLayout_6.setObjectName("verticalLayout_6") self.graphicsViewContinuousSend = LiveGraphicView( self.page_continuous_send) self.graphicsViewContinuousSend.setRenderHints( QtGui.QPainter.Antialiasing | QtGui.QPainter.TextAntialiasing) self.graphicsViewContinuousSend.setObjectName( "graphicsViewContinuousSend") self.verticalLayout_6.addWidget(self.graphicsViewContinuousSend) self.stackedWidget.addWidget(self.page_continuous_send) self.page_sniff = QtWidgets.QWidget() self.page_sniff.setObjectName("page_sniff") self.verticalLayout_4 = QtWidgets.QVBoxLayout(self.page_sniff) self.verticalLayout_4.setContentsMargins(0, 0, 0, 0) self.verticalLayout_4.setObjectName("verticalLayout_4") self.graphicsView_sniff_Preview = LiveGraphicView(self.page_sniff) self.graphicsView_sniff_Preview.setObjectName( "graphicsView_sniff_Preview") self.verticalLayout_4.addWidget(self.graphicsView_sniff_Preview) self.txtEd_sniff_Preview = QtWidgets.QPlainTextEdit(self.page_sniff) self.txtEd_sniff_Preview.setLineWrapMode( QtWidgets.QPlainTextEdit.NoWrap) self.txtEd_sniff_Preview.setReadOnly(True) self.txtEd_sniff_Preview.setMaximumBlockCount(100) self.txtEd_sniff_Preview.setObjectName("txtEd_sniff_Preview") self.verticalLayout_4.addWidget(self.txtEd_sniff_Preview) self.btnAccept = QtWidgets.QPushButton(self.page_sniff) self.btnAccept.setAutoDefault(False) self.btnAccept.setObjectName("btnAccept") self.verticalLayout_4.addWidget(self.btnAccept) self.stackedWidget.addWidget(self.page_sniff) self.horizontalLayout_2.addWidget(self.stackedWidget) self.verticalLayout_5 = QtWidgets.QVBoxLayout() self.verticalLayout_5.setObjectName("verticalLayout_5") self.label_y_scale = QtWidgets.QLabel(self.layoutWidget) self.label_y_scale.setObjectName("label_y_scale") self.verticalLayout_5.addWidget(self.label_y_scale) self.sliderYscale = QtWidgets.QSlider(self.layoutWidget) self.sliderYscale.setMinimum(1) self.sliderYscale.setMaximum(1000) self.sliderYscale.setProperty("value", 1) self.sliderYscale.setOrientation(QtCore.Qt.Vertical) self.sliderYscale.setTickInterval(1) self.sliderYscale.setObjectName("sliderYscale") self.verticalLayout_5.addWidget(self.sliderYscale) self.horizontalLayout_2.addLayout(self.verticalLayout_5) self.verticalLayout.addWidget(self.splitter) self.retranslateUi(SendRecvDialog) self.stackedWidget.setCurrentIndex(2) QtCore.QMetaObject.connectSlotsByName(SendRecvDialog) SendRecvDialog.setTabOrder(self.cbDevice, self.lineEditDeviceArgs) SendRecvDialog.setTabOrder(self.lineEditDeviceArgs, self.lineEditIP) SendRecvDialog.setTabOrder(self.lineEditIP, self.spinBoxPort) SendRecvDialog.setTabOrder(self.spinBoxPort, self.spinBoxFreq) SendRecvDialog.setTabOrder(self.spinBoxFreq, self.spinBoxSampleRate) SendRecvDialog.setTabOrder(self.spinBoxSampleRate, self.spinBoxBandwidth) SendRecvDialog.setTabOrder(self.spinBoxBandwidth, self.btnLockBWSR) SendRecvDialog.setTabOrder(self.btnLockBWSR, self.spinBoxGain) SendRecvDialog.setTabOrder(self.spinBoxGain, self.sliderGain) SendRecvDialog.setTabOrder(self.sliderGain, self.sliderIFGain) SendRecvDialog.setTabOrder(self.sliderIFGain, self.spinBoxIFGain) SendRecvDialog.setTabOrder(self.spinBoxIFGain, self.sliderBasebandGain) SendRecvDialog.setTabOrder(self.sliderBasebandGain, self.spinBoxBasebandGain) SendRecvDialog.setTabOrder(self.spinBoxBasebandGain, self.spinBoxFreqCorrection) SendRecvDialog.setTabOrder(self.spinBoxFreqCorrection, self.comboBoxDirectSampling) SendRecvDialog.setTabOrder(self.comboBoxDirectSampling, self.spinBoxNRepeat) SendRecvDialog.setTabOrder(self.spinBoxNRepeat, self.spinbox_sniff_BitLen) SendRecvDialog.setTabOrder(self.spinbox_sniff_BitLen, self.spinbox_sniff_ErrorTolerance) SendRecvDialog.setTabOrder(self.spinbox_sniff_ErrorTolerance, self.combox_sniff_Modulation) SendRecvDialog.setTabOrder(self.combox_sniff_Modulation, self.comboBox_sniff_viewtype) SendRecvDialog.setTabOrder(self.comboBox_sniff_viewtype, self.lineEdit_sniff_OutputFile) SendRecvDialog.setTabOrder(self.lineEdit_sniff_OutputFile, self.btnStart) SendRecvDialog.setTabOrder(self.btnStart, self.btnStop) SendRecvDialog.setTabOrder(self.btnStop, self.btnSave) SendRecvDialog.setTabOrder(self.btnSave, self.btnClear) SendRecvDialog.setTabOrder(self.btnClear, self.txtEd_sniff_Preview) SendRecvDialog.setTabOrder(self.txtEd_sniff_Preview, self.sliderYscale) SendRecvDialog.setTabOrder(self.sliderYscale, self.txtEditErrors) SendRecvDialog.setTabOrder(self.txtEditErrors, self.graphicsViewSend) SendRecvDialog.setTabOrder(self.graphicsViewSend, self.graphicsViewReceive) SendRecvDialog.setTabOrder(self.graphicsViewReceive, self.btnAccept) def retranslateUi(self, SendRecvDialog): _translate = QtCore.QCoreApplication.translate SendRecvDialog.setWindowTitle( _translate("SendRecvDialog", "Record Signal")) self.label_3.setText(_translate("SendRecvDialog", "Device:")) self.labelDeviceArgs.setToolTip( _translate( "SendRecvDialog", "<html><head/><body><p>If you only have one USRP connected you may leave this field empty, so your USRP gets detected automatically.</p><p>If you have multiple USRPs connected or need better control, enter a device identifier of your USRP here.</p><p>You may also enter other device arguments here.</p></body></html>" )) self.labelDeviceArgs.setText( _translate("SendRecvDialog", "Device arguments:")) self.lineEditDeviceArgs.setToolTip( _translate( "SendRecvDialog", "<html><head/><body><p>If you only have one USRP connected you may leave this field empty, so your USRP gets detected automatically.</p><p>If you have multiple USRPs connected or need better control, enter a device identifier of your USRP here.</p><p>You may also enter other device arguments here.</p></body></html>" )) self.labelChannel.setText(_translate("SendRecvDialog", "Channel:")) self.labelAntenna.setText(_translate("SendRecvDialog", "Antenna:")) self.labelIP.setText(_translate("SendRecvDialog", "IP address:")) self.lineEditIP.setText(_translate("SendRecvDialog", "127.0.0.1")) self.labelPort.setText(_translate("SendRecvDialog", "Port number:")) self.labelFreq.setText(_translate("SendRecvDialog", "Frequency (Hz):")) self.labelSampleRate.setText( _translate("SendRecvDialog", "Sample rate (Sps):")) self.btnLockBWSR.setText(_translate("SendRecvDialog", "...")) self.labelBandwidth.setText( _translate("SendRecvDialog", "Bandwidth (Hz):")) self.labelGain.setToolTip( _translate( "SendRecvDialog", "<html><head/><body><p>The gain (more exactly RF gain) is the gain applied to the RF signal. This amplifies the high frequent signal arriving at the antenna of your Software Defined Radio.</p></body></html>" )) self.labelGain.setText(_translate("SendRecvDialog", "Gain:")) self.sliderGain.setToolTip( _translate( "SendRecvDialog", "<html><head/><body><p>The gain (more exactly RF gain) is the gain applied to the RF signal. This amplifies the high frequent signal arriving at the antenna of your Software Defined Radio.</p></body></html>" )) self.spinBoxGain.setToolTip( _translate( "SendRecvDialog", "<html><head/><body><p>The gain (more exactly RF gain) is the gain applied to the RF signal. This amplifies the high frequent signal arriving at the antenna of your Software Defined Radio.</p></body></html>" )) self.labelIFGain.setToolTip( _translate( "SendRecvDialog", "<html><head/><body><p>The IF Gain is applied to the Intermediate Frequency signal in your Software Defined Radio. An IF signal has a lower frequency than the high frequent RF signal, so signal processing can be applied more efficiently.</p></body></html>" )) self.labelIFGain.setText(_translate("SendRecvDialog", "IF Gain:")) self.sliderIFGain.setToolTip( _translate( "SendRecvDialog", "<html><head/><body><p>The IF Gain is applied to the Intermediate Frequency signal in your Software Defined Radio. An IF signal has a lower frequency than the high frequent RF signal, so signal processing can be applied more efficiently.</p></body></html>" )) self.spinBoxIFGain.setToolTip( _translate( "SendRecvDialog", "<html><head/><body><p>The IF Gain is applied to the Intermediate Frequency signal in your Software Defined Radio. An IF signal has a lower frequency than the high frequent RF signal, so signal processing can be applied more efficiently.</p></body></html>" )) self.labelBasebandGain.setToolTip( _translate( "SendRecvDialog", "<html><head/><body><p>The baseband gain is applied to the baseband signal in your software defined radio. The baseband signal is at low frequency and gathered from the RF signal by <span style=\" font-weight:600;\">complex downsampling</span>.</p></body></html>" )) self.labelBasebandGain.setText( _translate("SendRecvDialog", "Baseband gain:")) self.sliderBasebandGain.setToolTip( _translate( "SendRecvDialog", "<html><head/><body><p>The baseband gain is applied to the baseband signal in your software defined radio. The baseband signal is at low frequency and gathered from the RF signal by <span style=\" font-weight:600;\">complex downsampling</span>.</p></body></html>" )) self.spinBoxBasebandGain.setToolTip( _translate( "SendRecvDialog", "<html><head/><body><p>The baseband gain is applied to the baseband signal in your software defined radio. The baseband signal is at low frequency and gathered from the RF signal by <span style=\" font-weight:600;\">complex downsampling</span>.</p></body></html>" )) self.labelFreqCorrection.setToolTip( _translate( "SendRecvDialog", "<html><head/><body><p>Set the frequency correction in <span style=\" font-weight:600;\">ppm</span>. If you do not know what to enter here, just leave it to one.</p></body></html>" )) self.labelFreqCorrection.setText( _translate("SendRecvDialog", "Frequency correction:")) self.labelDirectSampling.setToolTip( _translate( "SendRecvDialog", "<html><head/><body><p>Set the direct sampling mode. If you do not know what to choose here, just set it to disabled. The<span style=\" font-weight:600;\"> native backend</span> is recommended, when using this setting.</p></body></html>" )) self.labelDirectSampling.setText( _translate("SendRecvDialog", "Direct sampling:")) self.labelNRepeat.setText(_translate("SendRecvDialog", "Repeat:")) self.spinBoxNRepeat.setSpecialValueText( _translate("SendRecvDialog", "Infinite")) self.label_sniff_Noise.setText(_translate("SendRecvDialog", "Noise:")) self.label_sniff_Center.setText(_translate("SendRecvDialog", "Center:")) self.label_sniff_BitLength.setText( _translate("SendRecvDialog", "Bit Length:")) self.label_sniff_Tolerance.setText( _translate("SendRecvDialog", "Error Tolerance:")) self.label_sniff_Modulation.setText( _translate("SendRecvDialog", "Modulation:")) self.label_sniff_viewtype.setText(_translate("SendRecvDialog", "View:")) self.label_sniff_encoding.setText( _translate("SendRecvDialog", "Encoding:")) self.label_sniff_OutputFile.setText( _translate("SendRecvDialog", "Write bitstream to file:")) self.lineEdit_sniff_OutputFile.setPlaceholderText( _translate("SendRecvDialog", "None")) self.lReceiveBufferFullText.setText( _translate("SendRecvDialog", "Receive buffer full:")) self.progressBar.setFormat(_translate("SendRecvDialog", "%v/%m")) self.lSamplesSentText.setText( _translate("SendRecvDialog", "Samples sent:")) self.lTimeText.setText( _translate("SendRecvDialog", "Time (in seconds):")) self.lSamplesCapturedText.setText( _translate("SendRecvDialog", "Samples captured:")) self.btnStart.setToolTip(_translate("SendRecvDialog", "Record signal")) self.btnStop.setToolTip(_translate("SendRecvDialog", "Stop recording")) self.btnSave.setText(_translate("SendRecvDialog", "Save...")) self.btnClear.setToolTip(_translate("SendRecvDialog", "Clear")) self.lSignalSizeText.setText( _translate("SendRecvDialog", "Signal size (in MiB):")) self.lSamplesCaptured.setText(_translate("SendRecvDialog", "0")) self.lTime.setText(_translate("SendRecvDialog", "0")) self.lSignalSize.setText(_translate("SendRecvDialog", "0")) self.lblRepeatText.setText( _translate("SendRecvDialog", "Current iteration:")) self.lblCurrentRepeatValue.setText(_translate("SendRecvDialog", "0")) self.labelReceiveBufferFull.setText(_translate("SendRecvDialog", "0%")) self.cbDevice.setItemText(0, _translate("SendRecvDialog", "USRP")) self.cbDevice.setItemText(1, _translate("SendRecvDialog", "HackRF")) self.spinBoxFreqCorrection.setToolTip( _translate( "SendRecvDialog", "<html><head/><body><p>Set the frequency correction in <span style=\" font-weight:600;\">ppm</span>. If you do not know what to enter here, just leave it to one.</p></body></html>" )) self.comboBoxDirectSampling.setToolTip( _translate( "SendRecvDialog", "<html><head/><body><p>Set the direct sampling mode. If you do not know what to choose here, just set it to disabled. The<span style=\" font-weight:600;\"> native backend</span> is recommended, when using this setting.</p></body></html>" )) self.combox_sniff_Modulation.setItemText( 0, _translate("SendRecvDialog", "ASK")) self.combox_sniff_Modulation.setItemText( 1, _translate("SendRecvDialog", "FSK")) self.combox_sniff_Modulation.setItemText( 2, _translate("SendRecvDialog", "PSK")) self.comboBox_sniff_viewtype.setItemText( 0, _translate("SendRecvDialog", "Bit")) self.comboBox_sniff_viewtype.setItemText( 1, _translate("SendRecvDialog", "Hex")) self.comboBox_sniff_viewtype.setItemText( 2, _translate("SendRecvDialog", "ASCII")) self.label_7.setText( _translate("SendRecvDialog", "Hint: You can edit the raw signal before sending.")) self.btnAccept.setToolTip( _translate( "SendRecvDialog", "<html><head/><body><p>Accept the sniffed data and load it into <span style=\" font-weight:600;\">Analysis</span> tab.</p></body></html>" )) self.btnAccept.setText( _translate("SendRecvDialog", "Accept data (Open in Analysis)")) self.label_y_scale.setText(_translate("SendRecvDialog", "Y-Scale"))
class Ui_SendRecvDialog(object): def setupUi(self, SendRecvDialog): SendRecvDialog.setObjectName("SendRecvDialog") SendRecvDialog.setWindowModality(QtCore.Qt.NonModal) SendRecvDialog.resize(1246, 1123) SendRecvDialog.setMouseTracking(False) self.verticalLayout = QtWidgets.QVBoxLayout(SendRecvDialog) self.verticalLayout.setObjectName("verticalLayout") self.splitter = QtWidgets.QSplitter(SendRecvDialog) self.splitter.setStyleSheet("QSplitter::handle:horizontal {\n" "margin: 4px 0px;\n" " background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, \n" "stop:0 rgba(255, 255, 255, 0), \n" "stop:0.5 rgba(100, 100, 100, 100), \n" "stop:1 rgba(255, 255, 255, 0));\n" "image: url(:/icons/icons/splitter_handle_vertical.svg);\n" "}") self.splitter.setOrientation(QtCore.Qt.Horizontal) self.splitter.setObjectName("splitter") self.scrollArea = QtWidgets.QScrollArea(self.splitter) 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, 621, 1101)) self.scrollAreaWidgetContents_2.setObjectName("scrollAreaWidgetContents_2") self.verticalLayout_8 = QtWidgets.QVBoxLayout(self.scrollAreaWidgetContents_2) self.verticalLayout_8.setObjectName("verticalLayout_8") self.groupBox = QtWidgets.QGroupBox(self.scrollAreaWidgetContents_2) self.groupBox.setStyleSheet("QGroupBox\n" "{\n" " border: none;\n" "}") self.groupBox.setTitle("") self.groupBox.setObjectName("groupBox") self.gridLayout_2 = QtWidgets.QGridLayout(self.groupBox) self.gridLayout_2.setContentsMargins(-1, 0, -1, -1) self.gridLayout_2.setObjectName("gridLayout_2") self.progressBarMessage = QtWidgets.QProgressBar(self.groupBox) self.progressBarMessage.setProperty("value", 0) self.progressBarMessage.setObjectName("progressBarMessage") self.gridLayout_2.addWidget(self.progressBarMessage, 19, 0, 1, 1) self.labelCurrentMessage = QtWidgets.QLabel(self.groupBox) self.labelCurrentMessage.setObjectName("labelCurrentMessage") self.gridLayout_2.addWidget(self.labelCurrentMessage, 18, 0, 1, 1) self.lReceiveBufferFullText = QtWidgets.QLabel(self.groupBox) self.lReceiveBufferFullText.setObjectName("lReceiveBufferFullText") self.gridLayout_2.addWidget(self.lReceiveBufferFullText, 7, 0, 1, 1) self.progressBarSample = QtWidgets.QProgressBar(self.groupBox) self.progressBarSample.setProperty("value", 0) self.progressBarSample.setObjectName("progressBarSample") self.gridLayout_2.addWidget(self.progressBarSample, 21, 0, 1, 1) self.lSamplesSentText = QtWidgets.QLabel(self.groupBox) self.lSamplesSentText.setObjectName("lSamplesSentText") self.gridLayout_2.addWidget(self.lSamplesSentText, 20, 0, 1, 1) self.lTimeText = QtWidgets.QLabel(self.groupBox) self.lTimeText.setObjectName("lTimeText") self.gridLayout_2.addWidget(self.lTimeText, 12, 0, 1, 1) self.lSamplesCapturedText = QtWidgets.QLabel(self.groupBox) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.lSamplesCapturedText.sizePolicy().hasHeightForWidth()) self.lSamplesCapturedText.setSizePolicy(sizePolicy) self.lSamplesCapturedText.setObjectName("lSamplesCapturedText") self.gridLayout_2.addWidget(self.lSamplesCapturedText, 5, 0, 1, 1) self.lSignalSizeText = QtWidgets.QLabel(self.groupBox) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.lSignalSizeText.sizePolicy().hasHeightForWidth()) self.lSignalSizeText.setSizePolicy(sizePolicy) self.lSignalSizeText.setObjectName("lSignalSizeText") self.gridLayout_2.addWidget(self.lSignalSizeText, 9, 0, 1, 1) self.lSamplesCaptured = QtWidgets.QLabel(self.groupBox) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.lSamplesCaptured.sizePolicy().hasHeightForWidth()) self.lSamplesCaptured.setSizePolicy(sizePolicy) font = QtGui.QFont() font.setBold(True) font.setWeight(75) self.lSamplesCaptured.setFont(font) self.lSamplesCaptured.setAlignment(QtCore.Qt.AlignCenter) self.lSamplesCaptured.setObjectName("lSamplesCaptured") self.gridLayout_2.addWidget(self.lSamplesCaptured, 6, 0, 1, 2) self.lTime = QtWidgets.QLabel(self.groupBox) font = QtGui.QFont() font.setBold(True) font.setWeight(75) self.lTime.setFont(font) self.lTime.setAlignment(QtCore.Qt.AlignCenter) self.lTime.setObjectName("lTime") self.gridLayout_2.addWidget(self.lTime, 15, 0, 1, 2) self.lSignalSize = QtWidgets.QLabel(self.groupBox) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.lSignalSize.sizePolicy().hasHeightForWidth()) self.lSignalSize.setSizePolicy(sizePolicy) font = QtGui.QFont() font.setBold(True) font.setWeight(75) self.lSignalSize.setFont(font) self.lSignalSize.setAlignment(QtCore.Qt.AlignCenter) self.lSignalSize.setObjectName("lSignalSize") self.gridLayout_2.addWidget(self.lSignalSize, 11, 0, 1, 2) self.lblRepeatText = QtWidgets.QLabel(self.groupBox) self.lblRepeatText.setObjectName("lblRepeatText") self.gridLayout_2.addWidget(self.lblRepeatText, 16, 0, 1, 1) self.lblCurrentRepeatValue = QtWidgets.QLabel(self.groupBox) font = QtGui.QFont() font.setBold(True) font.setWeight(75) self.lblCurrentRepeatValue.setFont(font) self.lblCurrentRepeatValue.setAlignment(QtCore.Qt.AlignCenter) self.lblCurrentRepeatValue.setObjectName("lblCurrentRepeatValue") self.gridLayout_2.addWidget(self.lblCurrentRepeatValue, 17, 0, 1, 1) self.labelReceiveBufferFull = QtWidgets.QLabel(self.groupBox) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.labelReceiveBufferFull.sizePolicy().hasHeightForWidth()) self.labelReceiveBufferFull.setSizePolicy(sizePolicy) font = QtGui.QFont() font.setBold(True) font.setWeight(75) self.labelReceiveBufferFull.setFont(font) self.labelReceiveBufferFull.setAlignment(QtCore.Qt.AlignCenter) self.labelReceiveBufferFull.setObjectName("labelReceiveBufferFull") self.gridLayout_2.addWidget(self.labelReceiveBufferFull, 8, 0, 1, 1) self.horizontalLayout = QtWidgets.QHBoxLayout() self.horizontalLayout.setObjectName("horizontalLayout") spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout.addItem(spacerItem) self.btnStart = QtWidgets.QToolButton(self.groupBox) self.btnStart.setMinimumSize(QtCore.QSize(64, 64)) icon = QtGui.QIcon.fromTheme("media-record") self.btnStart.setIcon(icon) self.btnStart.setIconSize(QtCore.QSize(32, 32)) self.btnStart.setToolButtonStyle(QtCore.Qt.ToolButtonTextUnderIcon) self.btnStart.setObjectName("btnStart") self.horizontalLayout.addWidget(self.btnStart) self.btnStop = QtWidgets.QToolButton(self.groupBox) self.btnStop.setMinimumSize(QtCore.QSize(64, 64)) icon = QtGui.QIcon.fromTheme("media-playback-stop") self.btnStop.setIcon(icon) self.btnStop.setIconSize(QtCore.QSize(32, 32)) self.btnStop.setToolButtonStyle(QtCore.Qt.ToolButtonTextUnderIcon) self.btnStop.setObjectName("btnStop") self.horizontalLayout.addWidget(self.btnStop) self.btnSave = QtWidgets.QToolButton(self.groupBox) self.btnSave.setMinimumSize(QtCore.QSize(64, 64)) icon = QtGui.QIcon.fromTheme("document-save") self.btnSave.setIcon(icon) self.btnSave.setIconSize(QtCore.QSize(32, 32)) self.btnSave.setToolButtonStyle(QtCore.Qt.ToolButtonTextUnderIcon) self.btnSave.setObjectName("btnSave") self.horizontalLayout.addWidget(self.btnSave) self.btnClear = QtWidgets.QToolButton(self.groupBox) self.btnClear.setMinimumSize(QtCore.QSize(64, 64)) icon = QtGui.QIcon.fromTheme("view-refresh") self.btnClear.setIcon(icon) self.btnClear.setIconSize(QtCore.QSize(32, 32)) self.btnClear.setToolButtonStyle(QtCore.Qt.ToolButtonTextUnderIcon) self.btnClear.setObjectName("btnClear") self.horizontalLayout.addWidget(self.btnClear) spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout.addItem(spacerItem1) self.gridLayout_2.addLayout(self.horizontalLayout, 1, 0, 1, 2) spacerItem2 = QtWidgets.QSpacerItem(20, 10, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) self.gridLayout_2.addItem(spacerItem2, 2, 0, 1, 1) self.verticalLayout_8.addWidget(self.groupBox) self.txtEditErrors = QtWidgets.QTextEdit(self.scrollAreaWidgetContents_2) self.txtEditErrors.setReadOnly(True) self.txtEditErrors.setObjectName("txtEditErrors") self.verticalLayout_8.addWidget(self.txtEditErrors) self.scrollArea.setWidget(self.scrollAreaWidgetContents_2) self.layoutWidget = QtWidgets.QWidget(self.splitter) self.layoutWidget.setObjectName("layoutWidget") self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.layoutWidget) self.horizontalLayout_2.setContentsMargins(0, 0, 0, 0) self.horizontalLayout_2.setObjectName("horizontalLayout_2") self.stackedWidget = QtWidgets.QStackedWidget(self.layoutWidget) self.stackedWidget.setObjectName("stackedWidget") self.page_receive = QtWidgets.QWidget() self.page_receive.setObjectName("page_receive") self.verticalLayout_2 = QtWidgets.QVBoxLayout(self.page_receive) self.verticalLayout_2.setObjectName("verticalLayout_2") self.graphicsViewReceive = LiveGraphicView(self.page_receive) self.graphicsViewReceive.setVerticalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOff) self.graphicsViewReceive.setHorizontalScrollBarPolicy(QtCore.Qt.ScrollBarAsNeeded) self.graphicsViewReceive.setObjectName("graphicsViewReceive") self.verticalLayout_2.addWidget(self.graphicsViewReceive) self.stackedWidget.addWidget(self.page_receive) self.page_send = QtWidgets.QWidget() self.page_send.setObjectName("page_send") self.verticalLayout_3 = QtWidgets.QVBoxLayout(self.page_send) self.verticalLayout_3.setObjectName("verticalLayout_3") self.graphicsViewSend = EditableGraphicView(self.page_send) self.graphicsViewSend.setMouseTracking(True) self.graphicsViewSend.setRenderHints(QtGui.QPainter.Antialiasing|QtGui.QPainter.TextAntialiasing) self.graphicsViewSend.setTransformationAnchor(QtWidgets.QGraphicsView.NoAnchor) self.graphicsViewSend.setResizeAnchor(QtWidgets.QGraphicsView.NoAnchor) self.graphicsViewSend.setObjectName("graphicsViewSend") self.verticalLayout_3.addWidget(self.graphicsViewSend) self.label_7 = QtWidgets.QLabel(self.page_send) font = QtGui.QFont() font.setItalic(True) self.label_7.setFont(font) self.label_7.setObjectName("label_7") self.verticalLayout_3.addWidget(self.label_7) self.stackedWidget.addWidget(self.page_send) self.page_continuous_send = QtWidgets.QWidget() self.page_continuous_send.setObjectName("page_continuous_send") self.verticalLayout_6 = QtWidgets.QVBoxLayout(self.page_continuous_send) self.verticalLayout_6.setObjectName("verticalLayout_6") self.graphicsViewContinuousSend = LiveGraphicView(self.page_continuous_send) self.graphicsViewContinuousSend.setRenderHints(QtGui.QPainter.Antialiasing|QtGui.QPainter.TextAntialiasing) self.graphicsViewContinuousSend.setObjectName("graphicsViewContinuousSend") self.verticalLayout_6.addWidget(self.graphicsViewContinuousSend) self.stackedWidget.addWidget(self.page_continuous_send) self.page_spectrum = QtWidgets.QWidget() self.page_spectrum.setObjectName("page_spectrum") self.verticalLayout_7 = QtWidgets.QVBoxLayout(self.page_spectrum) self.verticalLayout_7.setObjectName("verticalLayout_7") self.graphicsViewFFT = LiveGraphicView(self.page_spectrum) self.graphicsViewFFT.setObjectName("graphicsViewFFT") self.verticalLayout_7.addWidget(self.graphicsViewFFT) self.graphicsViewSpectrogram = QtWidgets.QGraphicsView(self.page_spectrum) self.graphicsViewSpectrogram.setVerticalScrollBarPolicy(QtCore.Qt.ScrollBarAsNeeded) self.graphicsViewSpectrogram.setHorizontalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOff) self.graphicsViewSpectrogram.setRenderHints(QtGui.QPainter.SmoothPixmapTransform|QtGui.QPainter.TextAntialiasing) self.graphicsViewSpectrogram.setCacheMode(QtWidgets.QGraphicsView.CacheNone) self.graphicsViewSpectrogram.setViewportUpdateMode(QtWidgets.QGraphicsView.MinimalViewportUpdate) self.graphicsViewSpectrogram.setObjectName("graphicsViewSpectrogram") self.verticalLayout_7.addWidget(self.graphicsViewSpectrogram) self.verticalLayout_7.setStretch(0, 1) self.verticalLayout_7.setStretch(1, 1) self.stackedWidget.addWidget(self.page_spectrum) self.page_sniff = QtWidgets.QWidget() self.page_sniff.setObjectName("page_sniff") self.verticalLayout_4 = QtWidgets.QVBoxLayout(self.page_sniff) self.verticalLayout_4.setObjectName("verticalLayout_4") self.graphicsView_sniff_Preview = LiveGraphicView(self.page_sniff) self.graphicsView_sniff_Preview.setObjectName("graphicsView_sniff_Preview") self.verticalLayout_4.addWidget(self.graphicsView_sniff_Preview) self.txtEd_sniff_Preview = QtWidgets.QPlainTextEdit(self.page_sniff) self.txtEd_sniff_Preview.setLineWrapMode(QtWidgets.QPlainTextEdit.NoWrap) self.txtEd_sniff_Preview.setReadOnly(True) self.txtEd_sniff_Preview.setMaximumBlockCount(100) self.txtEd_sniff_Preview.setObjectName("txtEd_sniff_Preview") self.verticalLayout_4.addWidget(self.txtEd_sniff_Preview) self.btnAccept = QtWidgets.QPushButton(self.page_sniff) self.btnAccept.setAutoDefault(False) self.btnAccept.setObjectName("btnAccept") self.verticalLayout_4.addWidget(self.btnAccept) self.stackedWidget.addWidget(self.page_sniff) self.horizontalLayout_2.addWidget(self.stackedWidget) self.verticalLayout_5 = QtWidgets.QVBoxLayout() self.verticalLayout_5.setObjectName("verticalLayout_5") self.label_y_scale = QtWidgets.QLabel(self.layoutWidget) self.label_y_scale.setObjectName("label_y_scale") self.verticalLayout_5.addWidget(self.label_y_scale) self.sliderYscale = QtWidgets.QSlider(self.layoutWidget) self.sliderYscale.setMinimum(1) self.sliderYscale.setMaximum(1000) self.sliderYscale.setProperty("value", 1) self.sliderYscale.setOrientation(QtCore.Qt.Vertical) self.sliderYscale.setTickInterval(1) self.sliderYscale.setObjectName("sliderYscale") self.verticalLayout_5.addWidget(self.sliderYscale) self.horizontalLayout_2.addLayout(self.verticalLayout_5) self.verticalLayout.addWidget(self.splitter) self.retranslateUi(SendRecvDialog) self.stackedWidget.setCurrentIndex(4) QtCore.QMetaObject.connectSlotsByName(SendRecvDialog) SendRecvDialog.setTabOrder(self.btnStart, self.btnStop) SendRecvDialog.setTabOrder(self.btnStop, self.btnSave) SendRecvDialog.setTabOrder(self.btnSave, self.btnClear) SendRecvDialog.setTabOrder(self.btnClear, self.txtEd_sniff_Preview) SendRecvDialog.setTabOrder(self.txtEd_sniff_Preview, self.sliderYscale) SendRecvDialog.setTabOrder(self.sliderYscale, self.txtEditErrors) SendRecvDialog.setTabOrder(self.txtEditErrors, self.graphicsViewSend) SendRecvDialog.setTabOrder(self.graphicsViewSend, self.graphicsViewReceive) SendRecvDialog.setTabOrder(self.graphicsViewReceive, self.btnAccept) def retranslateUi(self, SendRecvDialog): _translate = QtCore.QCoreApplication.translate SendRecvDialog.setWindowTitle(_translate("SendRecvDialog", "Record Signal")) self.progressBarMessage.setFormat(_translate("SendRecvDialog", "%v/%m")) self.labelCurrentMessage.setText(_translate("SendRecvDialog", "Current message:")) self.lReceiveBufferFullText.setText(_translate("SendRecvDialog", "Receive buffer full:")) self.progressBarSample.setFormat(_translate("SendRecvDialog", "%v/%m")) self.lSamplesSentText.setText(_translate("SendRecvDialog", "Current sample:")) self.lTimeText.setText(_translate("SendRecvDialog", "Time (in seconds):")) self.lSamplesCapturedText.setText(_translate("SendRecvDialog", "Samples captured:")) self.lSignalSizeText.setText(_translate("SendRecvDialog", "Signal size (in MiB):")) self.lSamplesCaptured.setText(_translate("SendRecvDialog", "0")) self.lTime.setText(_translate("SendRecvDialog", "0")) self.lSignalSize.setText(_translate("SendRecvDialog", "0")) self.lblRepeatText.setText(_translate("SendRecvDialog", "Current iteration:")) self.lblCurrentRepeatValue.setText(_translate("SendRecvDialog", "0")) self.labelReceiveBufferFull.setText(_translate("SendRecvDialog", "0%")) self.btnStart.setToolTip(_translate("SendRecvDialog", "Record signal")) self.btnStart.setText(_translate("SendRecvDialog", "Start")) self.btnStop.setToolTip(_translate("SendRecvDialog", "Stop recording")) self.btnStop.setText(_translate("SendRecvDialog", "Stop")) self.btnSave.setText(_translate("SendRecvDialog", "Save...")) self.btnClear.setToolTip(_translate("SendRecvDialog", "Clear")) self.btnClear.setText(_translate("SendRecvDialog", "Clear")) self.label_7.setText(_translate("SendRecvDialog", "Hint: You can edit the raw signal before sending.")) self.btnAccept.setToolTip(_translate("SendRecvDialog", "<html><head/><body><p>Accept the sniffed data and load it into <span style=\" font-weight:600;\">Analysis</span> tab.</p></body></html>")) self.btnAccept.setText(_translate("SendRecvDialog", "Accept data (Open in Analysis)")) self.label_y_scale.setText(_translate("SendRecvDialog", "Y-Scale"))
class Ui_SendRecvDialog(object): def setupUi(self, SendRecvDialog): SendRecvDialog.setObjectName("SendRecvDialog") SendRecvDialog.setWindowModality(QtCore.Qt.NonModal) SendRecvDialog.resize(868, 628) self.gridLayout_3 = QtWidgets.QGridLayout(SendRecvDialog) self.gridLayout_3.setObjectName("gridLayout_3") self.verticalLayout = QtWidgets.QVBoxLayout() self.verticalLayout.setObjectName("verticalLayout") self.gridLayout = QtWidgets.QGridLayout() self.gridLayout.setObjectName("gridLayout") self.label_3 = QtWidgets.QLabel(SendRecvDialog) self.label_3.setObjectName("label_3") self.gridLayout.addWidget(self.label_3, 0, 0, 1, 1) self.cbDevice = QtWidgets.QComboBox(SendRecvDialog) self.cbDevice.setObjectName("cbDevice") self.cbDevice.addItem("") self.cbDevice.addItem("") self.gridLayout.addWidget(self.cbDevice, 0, 1, 1, 1) self.label_4 = QtWidgets.QLabel(SendRecvDialog) self.label_4.setObjectName("label_4") self.gridLayout.addWidget(self.label_4, 5, 0, 1, 1) self.label = QtWidgets.QLabel(SendRecvDialog) self.label.setObjectName("label") self.gridLayout.addWidget(self.label, 2, 0, 1, 1) self.label_2 = QtWidgets.QLabel(SendRecvDialog) self.label_2.setObjectName("label_2") self.gridLayout.addWidget(self.label_2, 3, 0, 1, 1) self.spinBoxGain = QtWidgets.QSpinBox(SendRecvDialog) self.spinBoxGain.setMinimum(1) self.spinBoxGain.setProperty("value", 40) self.spinBoxGain.setObjectName("spinBoxGain") self.gridLayout.addWidget(self.spinBoxGain, 5, 1, 1, 1) self.label_5 = QtWidgets.QLabel(SendRecvDialog) self.label_5.setObjectName("label_5") self.gridLayout.addWidget(self.label_5, 4, 0, 1, 1) self.lineEditIP = QtWidgets.QLineEdit(SendRecvDialog) self.lineEditIP.setObjectName("lineEditIP") self.gridLayout.addWidget(self.lineEditIP, 1, 1, 1, 1) self.labelIP = QtWidgets.QLabel(SendRecvDialog) self.labelIP.setObjectName("labelIP") self.gridLayout.addWidget(self.labelIP, 1, 0, 1, 1) self.spinBoxNRepeat = QtWidgets.QSpinBox(SendRecvDialog) self.spinBoxNRepeat.setMaximum(999999999) self.spinBoxNRepeat.setObjectName("spinBoxNRepeat") self.gridLayout.addWidget(self.spinBoxNRepeat, 6, 1, 1, 1) self.labelNRepeat = QtWidgets.QLabel(SendRecvDialog) self.labelNRepeat.setObjectName("labelNRepeat") self.gridLayout.addWidget(self.labelNRepeat, 6, 0, 1, 1) self.spinBoxFreq = KillerDoubleSpinBox(SendRecvDialog) self.spinBoxFreq.setMinimum(0.01) self.spinBoxFreq.setMaximum(1000000000000.0) self.spinBoxFreq.setObjectName("spinBoxFreq") self.gridLayout.addWidget(self.spinBoxFreq, 2, 1, 1, 1) self.spinBoxSampleRate = KillerDoubleSpinBox(SendRecvDialog) self.spinBoxSampleRate.setMinimum(0.01) self.spinBoxSampleRate.setMaximum(1000000000000.0) self.spinBoxSampleRate.setObjectName("spinBoxSampleRate") self.gridLayout.addWidget(self.spinBoxSampleRate, 3, 1, 1, 1) self.spinBoxBandwidth = KillerDoubleSpinBox(SendRecvDialog) self.spinBoxBandwidth.setMinimum(0.01) self.spinBoxBandwidth.setMaximum(1000000000000.0) self.spinBoxBandwidth.setObjectName("spinBoxBandwidth") self.gridLayout.addWidget(self.spinBoxBandwidth, 4, 1, 1, 1) self.verticalLayout.addLayout(self.gridLayout) self.groupBox = QtWidgets.QGroupBox(SendRecvDialog) self.groupBox.setTitle("") self.groupBox.setObjectName("groupBox") self.gridLayout_2 = QtWidgets.QGridLayout(self.groupBox) self.gridLayout_2.setContentsMargins(-1, 0, -1, -1) self.gridLayout_2.setObjectName("gridLayout_2") self.progressBar = QtWidgets.QProgressBar(self.groupBox) self.progressBar.setProperty("value", 0) self.progressBar.setObjectName("progressBar") self.gridLayout_2.addWidget(self.progressBar, 14, 0, 1, 1) self.lSamplesSentText = QtWidgets.QLabel(self.groupBox) self.lSamplesSentText.setObjectName("lSamplesSentText") self.gridLayout_2.addWidget(self.lSamplesSentText, 13, 0, 1, 1) spacerItem = QtWidgets.QSpacerItem(20, 10, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) self.gridLayout_2.addItem(spacerItem, 2, 0, 1, 1) self.lTimeText = QtWidgets.QLabel(self.groupBox) font = QtGui.QFont() font.setBold(False) font.setWeight(50) self.lTimeText.setFont(font) self.lTimeText.setObjectName("lTimeText") self.gridLayout_2.addWidget(self.lTimeText, 7, 0, 1, 1) self.lSamplesCapturedText = QtWidgets.QLabel(self.groupBox) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.lSamplesCapturedText.sizePolicy().hasHeightForWidth()) self.lSamplesCapturedText.setSizePolicy(sizePolicy) font = QtGui.QFont() font.setBold(False) font.setWeight(50) self.lSamplesCapturedText.setFont(font) self.lSamplesCapturedText.setObjectName("lSamplesCapturedText") self.gridLayout_2.addWidget(self.lSamplesCapturedText, 3, 0, 1, 1) self.horizontalLayout = QtWidgets.QHBoxLayout() self.horizontalLayout.setObjectName("horizontalLayout") spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout.addItem(spacerItem1) self.btnStart = QtWidgets.QToolButton(self.groupBox) self.btnStart.setMinimumSize(QtCore.QSize(42, 42)) self.btnStart.setMaximumSize(QtCore.QSize(42, 42)) self.btnStart.setText("") icon = QtGui.QIcon.fromTheme("media-record") self.btnStart.setIcon(icon) self.btnStart.setIconSize(QtCore.QSize(32, 32)) self.btnStart.setObjectName("btnStart") self.horizontalLayout.addWidget(self.btnStart) self.btnStop = QtWidgets.QToolButton(self.groupBox) self.btnStop.setMinimumSize(QtCore.QSize(42, 42)) self.btnStop.setMaximumSize(QtCore.QSize(42, 42)) self.btnStop.setText("") icon = QtGui.QIcon.fromTheme("media-playback-stop") self.btnStop.setIcon(icon) self.btnStop.setIconSize(QtCore.QSize(32, 32)) self.btnStop.setObjectName("btnStop") self.horizontalLayout.addWidget(self.btnStop) self.btnSave = QtWidgets.QToolButton(self.groupBox) self.btnSave.setMinimumSize(QtCore.QSize(42, 42)) self.btnSave.setMaximumSize(QtCore.QSize(42, 42)) icon = QtGui.QIcon.fromTheme("document-save") self.btnSave.setIcon(icon) self.btnSave.setIconSize(QtCore.QSize(32, 32)) self.btnSave.setObjectName("btnSave") self.horizontalLayout.addWidget(self.btnSave) self.btnClear = QtWidgets.QToolButton(self.groupBox) self.btnClear.setMinimumSize(QtCore.QSize(42, 42)) self.btnClear.setMaximumSize(QtCore.QSize(42, 42)) self.btnClear.setText("") icon = QtGui.QIcon.fromTheme("view-refresh") self.btnClear.setIcon(icon) self.btnClear.setIconSize(QtCore.QSize(32, 32)) self.btnClear.setObjectName("btnClear") self.horizontalLayout.addWidget(self.btnClear) spacerItem2 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout.addItem(spacerItem2) self.gridLayout_2.addLayout(self.horizontalLayout, 1, 0, 1, 2) self.lSignalSizeText = QtWidgets.QLabel(self.groupBox) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.lSignalSizeText.sizePolicy().hasHeightForWidth()) self.lSignalSizeText.setSizePolicy(sizePolicy) font = QtGui.QFont() font.setBold(False) font.setWeight(50) self.lSignalSizeText.setFont(font) self.lSignalSizeText.setObjectName("lSignalSizeText") self.gridLayout_2.addWidget(self.lSignalSizeText, 5, 0, 1, 1) self.lSamplesCaptured = QtWidgets.QLabel(self.groupBox) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.lSamplesCaptured.sizePolicy().hasHeightForWidth()) self.lSamplesCaptured.setSizePolicy(sizePolicy) font = QtGui.QFont() font.setBold(True) font.setWeight(75) self.lSamplesCaptured.setFont(font) self.lSamplesCaptured.setAlignment(QtCore.Qt.AlignCenter) self.lSamplesCaptured.setObjectName("lSamplesCaptured") self.gridLayout_2.addWidget(self.lSamplesCaptured, 4, 0, 1, 2) self.lTime = QtWidgets.QLabel(self.groupBox) font = QtGui.QFont() font.setBold(True) font.setWeight(75) self.lTime.setFont(font) self.lTime.setAlignment(QtCore.Qt.AlignCenter) self.lTime.setObjectName("lTime") self.gridLayout_2.addWidget(self.lTime, 10, 0, 1, 2) self.lSignalSize = QtWidgets.QLabel(self.groupBox) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.lSignalSize.sizePolicy().hasHeightForWidth()) self.lSignalSize.setSizePolicy(sizePolicy) font = QtGui.QFont() font.setBold(True) font.setWeight(75) self.lSignalSize.setFont(font) self.lSignalSize.setAlignment(QtCore.Qt.AlignCenter) self.lSignalSize.setObjectName("lSignalSize") self.gridLayout_2.addWidget(self.lSignalSize, 6, 0, 1, 2) self.lblRepeatText = QtWidgets.QLabel(self.groupBox) self.lblRepeatText.setObjectName("lblRepeatText") self.gridLayout_2.addWidget(self.lblRepeatText, 11, 0, 1, 1) self.lblCurrentRepeatValue = QtWidgets.QLabel(self.groupBox) font = QtGui.QFont() font.setBold(True) font.setWeight(75) self.lblCurrentRepeatValue.setFont(font) self.lblCurrentRepeatValue.setAlignment(QtCore.Qt.AlignCenter) self.lblCurrentRepeatValue.setObjectName("lblCurrentRepeatValue") self.gridLayout_2.addWidget(self.lblCurrentRepeatValue, 12, 0, 1, 1) self.verticalLayout.addWidget(self.groupBox) self.txtEditErrors = QtWidgets.QTextEdit(SendRecvDialog) self.txtEditErrors.setReadOnly(True) self.txtEditErrors.setObjectName("txtEditErrors") self.verticalLayout.addWidget(self.txtEditErrors) self.gridLayout_3.addLayout(self.verticalLayout, 0, 0, 2, 1) self.graphicsView = LiveGraphicView(SendRecvDialog) self.graphicsView.setVerticalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOff) self.graphicsView.setHorizontalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOn) self.graphicsView.setObjectName("graphicsView") self.gridLayout_3.addWidget(self.graphicsView, 0, 1, 2, 1) self.label_6 = QtWidgets.QLabel(SendRecvDialog) self.label_6.setObjectName("label_6") self.gridLayout_3.addWidget(self.label_6, 0, 2, 1, 1) self.sliderYscale = QtWidgets.QSlider(SendRecvDialog) self.sliderYscale.setMinimum(1) self.sliderYscale.setMaximum(10) self.sliderYscale.setProperty("value", 5) self.sliderYscale.setOrientation(QtCore.Qt.Vertical) self.sliderYscale.setObjectName("sliderYscale") self.gridLayout_3.addWidget(self.sliderYscale, 1, 2, 1, 1) self.gridLayout_3.setColumnStretch(0, 1) self.gridLayout_3.setColumnStretch(1, 3) self.gridLayout_3.setColumnStretch(2, 1) self.retranslateUi(SendRecvDialog) QtCore.QMetaObject.connectSlotsByName(SendRecvDialog) SendRecvDialog.setTabOrder(self.cbDevice, self.spinBoxGain) SendRecvDialog.setTabOrder(self.spinBoxGain, self.graphicsView) def retranslateUi(self, SendRecvDialog): _translate = QtCore.QCoreApplication.translate SendRecvDialog.setWindowTitle(_translate("SendRecvDialog", "Record Signal")) self.label_3.setText(_translate("SendRecvDialog", "Device:")) self.cbDevice.setItemText(0, _translate("SendRecvDialog", "USRP")) self.cbDevice.setItemText(1, _translate("SendRecvDialog", "HackRF")) self.label_4.setText(_translate("SendRecvDialog", "Gain:")) self.label.setText(_translate("SendRecvDialog", "Frequency (Hz):")) self.label_2.setText(_translate("SendRecvDialog", "Sample rate (Sps):")) self.label_5.setText(_translate("SendRecvDialog", "Bandwidth (Hz):")) self.lineEditIP.setText(_translate("SendRecvDialog", "192.168.10.2")) self.labelIP.setText(_translate("SendRecvDialog", "IP address:")) self.spinBoxNRepeat.setSpecialValueText(_translate("SendRecvDialog", "Infinite")) self.labelNRepeat.setText(_translate("SendRecvDialog", "Repeat:")) self.progressBar.setFormat(_translate("SendRecvDialog", "%v/%m")) self.lSamplesSentText.setText(_translate("SendRecvDialog", "Samples sent:")) self.lTimeText.setText(_translate("SendRecvDialog", "Time (in seconds):")) self.lSamplesCapturedText.setText(_translate("SendRecvDialog", "Samples captured:")) self.btnStart.setToolTip(_translate("SendRecvDialog", "Record signal")) self.btnStop.setToolTip(_translate("SendRecvDialog", "Stop recording")) self.btnSave.setText(_translate("SendRecvDialog", "Save...")) self.btnClear.setToolTip(_translate("SendRecvDialog", "Clear")) self.lSignalSizeText.setText(_translate("SendRecvDialog", "Signal size (in MiB):")) self.lSamplesCaptured.setText(_translate("SendRecvDialog", "0")) self.lTime.setText(_translate("SendRecvDialog", "0")) self.lSignalSize.setText(_translate("SendRecvDialog", "0")) self.lblRepeatText.setText(_translate("SendRecvDialog", "Current iteration:")) self.lblCurrentRepeatValue.setText(_translate("SendRecvDialog", "0")) self.label_6.setText(_translate("SendRecvDialog", "Y-Scale"))
class Ui_SendRecvDialog(object): def setupUi(self, SendRecvDialog): SendRecvDialog.setObjectName("SendRecvDialog") SendRecvDialog.setWindowModality(QtCore.Qt.NonModal) SendRecvDialog.resize(850, 886) SendRecvDialog.setMouseTracking(False) self.horizontalLayout_4 = QtWidgets.QHBoxLayout(SendRecvDialog) self.horizontalLayout_4.setObjectName("horizontalLayout_4") self.horizontalLayout_3 = QtWidgets.QHBoxLayout() self.horizontalLayout_3.setObjectName("horizontalLayout_3") self.verticalLayout = QtWidgets.QVBoxLayout() self.verticalLayout.setObjectName("verticalLayout") self.gridLayout = QtWidgets.QGridLayout() self.gridLayout.setObjectName("gridLayout") self.spinbox_sniff_Noise = QtWidgets.QDoubleSpinBox(SendRecvDialog) self.spinbox_sniff_Noise.setDecimals(4) self.spinbox_sniff_Noise.setMaximum(1.0) self.spinbox_sniff_Noise.setObjectName("spinbox_sniff_Noise") self.gridLayout.addWidget(self.spinbox_sniff_Noise, 10, 1, 1, 1) self.lineEditIP = QtWidgets.QLineEdit(SendRecvDialog) self.lineEditIP.setObjectName("lineEditIP") self.gridLayout.addWidget(self.lineEditIP, 1, 1, 1, 1) self.spinBoxGain = QtWidgets.QSpinBox(SendRecvDialog) self.spinBoxGain.setMinimum(1) self.spinBoxGain.setMaximum(500) self.spinBoxGain.setProperty("value", 40) self.spinBoxGain.setObjectName("spinBoxGain") self.gridLayout.addWidget(self.spinBoxGain, 6, 1, 1, 1) self.labelGain = QtWidgets.QLabel(SendRecvDialog) self.labelGain.setObjectName("labelGain") self.gridLayout.addWidget(self.labelGain, 6, 0, 1, 1) self.labelBandWidth = QtWidgets.QLabel(SendRecvDialog) self.labelBandWidth.setObjectName("labelBandWidth") self.gridLayout.addWidget(self.labelBandWidth, 5, 0, 1, 1) self.cbDevice = QtWidgets.QComboBox(SendRecvDialog) self.cbDevice.setObjectName("cbDevice") self.cbDevice.addItem("") self.cbDevice.addItem("") self.gridLayout.addWidget(self.cbDevice, 0, 1, 1, 1) self.label_3 = QtWidgets.QLabel(SendRecvDialog) self.label_3.setObjectName("label_3") self.gridLayout.addWidget(self.label_3, 0, 0, 1, 1) self.labelSampleRate = QtWidgets.QLabel(SendRecvDialog) self.labelSampleRate.setObjectName("labelSampleRate") self.gridLayout.addWidget(self.labelSampleRate, 4, 0, 1, 1) self.labelIP = QtWidgets.QLabel(SendRecvDialog) self.labelIP.setObjectName("labelIP") self.gridLayout.addWidget(self.labelIP, 1, 0, 1, 1) self.labelPort = QtWidgets.QLabel(SendRecvDialog) self.labelPort.setObjectName("labelPort") self.gridLayout.addWidget(self.labelPort, 2, 0, 1, 1) self.spinBoxPort = QtWidgets.QSpinBox(SendRecvDialog) self.spinBoxPort.setMinimum(1) self.spinBoxPort.setMaximum(65535) self.spinBoxPort.setProperty("value", 1234) self.spinBoxPort.setObjectName("spinBoxPort") self.gridLayout.addWidget(self.spinBoxPort, 2, 1, 1, 1) self.spinBoxNRepeat = QtWidgets.QSpinBox(SendRecvDialog) self.spinBoxNRepeat.setMaximum(999999999) self.spinBoxNRepeat.setObjectName("spinBoxNRepeat") self.gridLayout.addWidget(self.spinBoxNRepeat, 7, 1, 1, 1) self.labelFreq = QtWidgets.QLabel(SendRecvDialog) self.labelFreq.setObjectName("labelFreq") self.gridLayout.addWidget(self.labelFreq, 3, 0, 1, 1) self.labelNRepeat = QtWidgets.QLabel(SendRecvDialog) self.labelNRepeat.setObjectName("labelNRepeat") self.gridLayout.addWidget(self.labelNRepeat, 7, 0, 1, 1) self.spinBoxFreq = KillerDoubleSpinBox(SendRecvDialog) self.spinBoxFreq.setDecimals(3) self.spinBoxFreq.setMinimum(0.001) self.spinBoxFreq.setMaximum(1000000000000.0) self.spinBoxFreq.setObjectName("spinBoxFreq") self.gridLayout.addWidget(self.spinBoxFreq, 3, 1, 1, 1) self.spinBoxSampleRate = KillerDoubleSpinBox(SendRecvDialog) self.spinBoxSampleRate.setDecimals(3) self.spinBoxSampleRate.setMinimum(0.001) self.spinBoxSampleRate.setMaximum(1000000000000.0) self.spinBoxSampleRate.setObjectName("spinBoxSampleRate") self.gridLayout.addWidget(self.spinBoxSampleRate, 4, 1, 1, 1) self.spinBoxBandwidth = KillerDoubleSpinBox(SendRecvDialog) self.spinBoxBandwidth.setDecimals(3) self.spinBoxBandwidth.setMinimum(0.001) self.spinBoxBandwidth.setMaximum(1000000000000.0) self.spinBoxBandwidth.setObjectName("spinBoxBandwidth") self.gridLayout.addWidget(self.spinBoxBandwidth, 5, 1, 1, 1) self.btnLockBWSR = QtWidgets.QToolButton(SendRecvDialog) icon = QtGui.QIcon() icon.addPixmap(QtGui.QPixmap(":/icons/data/icons/lock.svg"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.btnLockBWSR.setIcon(icon) self.btnLockBWSR.setCheckable(True) self.btnLockBWSR.setChecked(True) self.btnLockBWSR.setObjectName("btnLockBWSR") self.gridLayout.addWidget(self.btnLockBWSR, 4, 2, 2, 1) self.spinbox_sniff_Center = QtWidgets.QDoubleSpinBox(SendRecvDialog) self.spinbox_sniff_Center.setDecimals(4) self.spinbox_sniff_Center.setMinimum(-3.14) self.spinbox_sniff_Center.setMaximum(3.14) self.spinbox_sniff_Center.setObjectName("spinbox_sniff_Center") self.gridLayout.addWidget(self.spinbox_sniff_Center, 9, 1, 1, 1) self.label_sniff_Noise = QtWidgets.QLabel(SendRecvDialog) self.label_sniff_Noise.setObjectName("label_sniff_Noise") self.gridLayout.addWidget(self.label_sniff_Noise, 10, 0, 1, 1) self.label_sniff_Center = QtWidgets.QLabel(SendRecvDialog) self.label_sniff_Center.setObjectName("label_sniff_Center") self.gridLayout.addWidget(self.label_sniff_Center, 9, 0, 1, 1) self.label_sniff_Modulation = QtWidgets.QLabel(SendRecvDialog) self.label_sniff_Modulation.setObjectName("label_sniff_Modulation") self.gridLayout.addWidget(self.label_sniff_Modulation, 12, 0, 1, 1) self.combox_sniff_Modulation = QtWidgets.QComboBox(SendRecvDialog) self.combox_sniff_Modulation.setObjectName("combox_sniff_Modulation") self.combox_sniff_Modulation.addItem("") self.combox_sniff_Modulation.addItem("") self.combox_sniff_Modulation.addItem("") self.gridLayout.addWidget(self.combox_sniff_Modulation, 12, 1, 1, 1) self.label_sniff_OutputFile = QtWidgets.QLabel(SendRecvDialog) self.label_sniff_OutputFile.setObjectName("label_sniff_OutputFile") self.gridLayout.addWidget(self.label_sniff_OutputFile, 14, 0, 1, 1) self.lineEdit_sniff_OutputFile = QtWidgets.QLineEdit(SendRecvDialog) self.lineEdit_sniff_OutputFile.setReadOnly(False) self.lineEdit_sniff_OutputFile.setProperty("clearButtonEnabled", True) self.lineEdit_sniff_OutputFile.setObjectName( "lineEdit_sniff_OutputFile") self.gridLayout.addWidget(self.lineEdit_sniff_OutputFile, 14, 1, 1, 1) self.label_sniff_BitLength = QtWidgets.QLabel(SendRecvDialog) self.label_sniff_BitLength.setObjectName("label_sniff_BitLength") self.gridLayout.addWidget(self.label_sniff_BitLength, 8, 0, 1, 1) self.spinbox_sniff_BitLen = QtWidgets.QSpinBox(SendRecvDialog) self.spinbox_sniff_BitLen.setMinimum(1) self.spinbox_sniff_BitLen.setMaximum(999999999) self.spinbox_sniff_BitLen.setObjectName("spinbox_sniff_BitLen") self.gridLayout.addWidget(self.spinbox_sniff_BitLen, 8, 1, 1, 1) self.label_sniff_Tolerance = QtWidgets.QLabel(SendRecvDialog) self.label_sniff_Tolerance.setObjectName("label_sniff_Tolerance") self.gridLayout.addWidget(self.label_sniff_Tolerance, 11, 0, 1, 1) self.spinbox_sniff_ErrorTolerance = QtWidgets.QSpinBox(SendRecvDialog) self.spinbox_sniff_ErrorTolerance.setMaximum(999999) self.spinbox_sniff_ErrorTolerance.setProperty("value", 5) self.spinbox_sniff_ErrorTolerance.setObjectName( "spinbox_sniff_ErrorTolerance") self.gridLayout.addWidget(self.spinbox_sniff_ErrorTolerance, 11, 1, 1, 1) self.comboBox_sniff_viewtype = QtWidgets.QComboBox(SendRecvDialog) self.comboBox_sniff_viewtype.setObjectName("comboBox_sniff_viewtype") self.comboBox_sniff_viewtype.addItem("") self.comboBox_sniff_viewtype.addItem("") self.comboBox_sniff_viewtype.addItem("") self.gridLayout.addWidget(self.comboBox_sniff_viewtype, 12, 1, 1, 1) self.label_sniff_viewtype = QtWidgets.QLabel(SendRecvDialog) self.label_sniff_viewtype.setObjectName("label_sniff_viewtype") self.gridLayout.addWidget(self.label_sniff_viewtype, 12, 0, 1, 1) self.verticalLayout.addLayout(self.gridLayout) self.groupBox = QtWidgets.QGroupBox(SendRecvDialog) self.groupBox.setTitle("") self.groupBox.setObjectName("groupBox") self.gridLayout_2 = QtWidgets.QGridLayout(self.groupBox) self.gridLayout_2.setContentsMargins(-1, 0, -1, -1) self.gridLayout_2.setObjectName("gridLayout_2") self.progressBar = QtWidgets.QProgressBar(self.groupBox) self.progressBar.setProperty("value", 0) self.progressBar.setObjectName("progressBar") self.gridLayout_2.addWidget(self.progressBar, 14, 0, 1, 1) self.lSamplesSentText = QtWidgets.QLabel(self.groupBox) self.lSamplesSentText.setObjectName("lSamplesSentText") self.gridLayout_2.addWidget(self.lSamplesSentText, 13, 0, 1, 1) spacerItem = QtWidgets.QSpacerItem(20, 10, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) self.gridLayout_2.addItem(spacerItem, 2, 0, 1, 1) self.lTimeText = QtWidgets.QLabel(self.groupBox) font = QtGui.QFont() font.setBold(False) font.setWeight(50) self.lTimeText.setFont(font) self.lTimeText.setObjectName("lTimeText") self.gridLayout_2.addWidget(self.lTimeText, 7, 0, 1, 1) self.lSamplesCapturedText = QtWidgets.QLabel(self.groupBox) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.lSamplesCapturedText.sizePolicy().hasHeightForWidth()) self.lSamplesCapturedText.setSizePolicy(sizePolicy) font = QtGui.QFont() font.setBold(False) font.setWeight(50) self.lSamplesCapturedText.setFont(font) self.lSamplesCapturedText.setObjectName("lSamplesCapturedText") self.gridLayout_2.addWidget(self.lSamplesCapturedText, 3, 0, 1, 1) self.horizontalLayout = QtWidgets.QHBoxLayout() self.horizontalLayout.setObjectName("horizontalLayout") spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout.addItem(spacerItem1) self.btnStart = QtWidgets.QToolButton(self.groupBox) self.btnStart.setMinimumSize(QtCore.QSize(42, 42)) self.btnStart.setMaximumSize(QtCore.QSize(42, 42)) self.btnStart.setText("") icon = QtGui.QIcon.fromTheme("media-record") self.btnStart.setIcon(icon) self.btnStart.setIconSize(QtCore.QSize(32, 32)) self.btnStart.setObjectName("btnStart") self.horizontalLayout.addWidget(self.btnStart) self.btnStop = QtWidgets.QToolButton(self.groupBox) self.btnStop.setMinimumSize(QtCore.QSize(42, 42)) self.btnStop.setMaximumSize(QtCore.QSize(42, 42)) self.btnStop.setText("") icon = QtGui.QIcon.fromTheme("media-playback-stop") self.btnStop.setIcon(icon) self.btnStop.setIconSize(QtCore.QSize(32, 32)) self.btnStop.setObjectName("btnStop") self.horizontalLayout.addWidget(self.btnStop) self.btnSave = QtWidgets.QToolButton(self.groupBox) self.btnSave.setMinimumSize(QtCore.QSize(42, 42)) self.btnSave.setMaximumSize(QtCore.QSize(42, 42)) icon = QtGui.QIcon.fromTheme("document-save") self.btnSave.setIcon(icon) self.btnSave.setIconSize(QtCore.QSize(32, 32)) self.btnSave.setObjectName("btnSave") self.horizontalLayout.addWidget(self.btnSave) self.btnClear = QtWidgets.QToolButton(self.groupBox) self.btnClear.setMinimumSize(QtCore.QSize(42, 42)) self.btnClear.setMaximumSize(QtCore.QSize(42, 42)) self.btnClear.setText("") icon = QtGui.QIcon.fromTheme("view-refresh") self.btnClear.setIcon(icon) self.btnClear.setIconSize(QtCore.QSize(32, 32)) self.btnClear.setObjectName("btnClear") self.horizontalLayout.addWidget(self.btnClear) spacerItem2 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout.addItem(spacerItem2) self.gridLayout_2.addLayout(self.horizontalLayout, 1, 0, 1, 2) self.lSignalSizeText = QtWidgets.QLabel(self.groupBox) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.lSignalSizeText.sizePolicy().hasHeightForWidth()) self.lSignalSizeText.setSizePolicy(sizePolicy) font = QtGui.QFont() font.setBold(False) font.setWeight(50) self.lSignalSizeText.setFont(font) self.lSignalSizeText.setObjectName("lSignalSizeText") self.gridLayout_2.addWidget(self.lSignalSizeText, 5, 0, 1, 1) self.lSamplesCaptured = QtWidgets.QLabel(self.groupBox) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.lSamplesCaptured.sizePolicy().hasHeightForWidth()) self.lSamplesCaptured.setSizePolicy(sizePolicy) font = QtGui.QFont() font.setBold(True) font.setWeight(75) self.lSamplesCaptured.setFont(font) self.lSamplesCaptured.setAlignment(QtCore.Qt.AlignCenter) self.lSamplesCaptured.setObjectName("lSamplesCaptured") self.gridLayout_2.addWidget(self.lSamplesCaptured, 4, 0, 1, 2) self.lTime = QtWidgets.QLabel(self.groupBox) font = QtGui.QFont() font.setBold(True) font.setWeight(75) self.lTime.setFont(font) self.lTime.setAlignment(QtCore.Qt.AlignCenter) self.lTime.setObjectName("lTime") self.gridLayout_2.addWidget(self.lTime, 10, 0, 1, 2) self.lSignalSize = QtWidgets.QLabel(self.groupBox) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth( self.lSignalSize.sizePolicy().hasHeightForWidth()) self.lSignalSize.setSizePolicy(sizePolicy) font = QtGui.QFont() font.setBold(True) font.setWeight(75) self.lSignalSize.setFont(font) self.lSignalSize.setAlignment(QtCore.Qt.AlignCenter) self.lSignalSize.setObjectName("lSignalSize") self.gridLayout_2.addWidget(self.lSignalSize, 6, 0, 1, 2) self.lblRepeatText = QtWidgets.QLabel(self.groupBox) self.lblRepeatText.setObjectName("lblRepeatText") self.gridLayout_2.addWidget(self.lblRepeatText, 11, 0, 1, 1) self.lblCurrentRepeatValue = QtWidgets.QLabel(self.groupBox) font = QtGui.QFont() font.setBold(True) font.setWeight(75) self.lblCurrentRepeatValue.setFont(font) self.lblCurrentRepeatValue.setAlignment(QtCore.Qt.AlignCenter) self.lblCurrentRepeatValue.setObjectName("lblCurrentRepeatValue") self.gridLayout_2.addWidget(self.lblCurrentRepeatValue, 12, 0, 1, 1) self.verticalLayout.addWidget(self.groupBox) self.txtEditErrors = QtWidgets.QTextEdit(SendRecvDialog) self.txtEditErrors.setReadOnly(True) self.txtEditErrors.setObjectName("txtEditErrors") self.verticalLayout.addWidget(self.txtEditErrors) self.horizontalLayout_3.addLayout(self.verticalLayout) self.horizontalLayout_2 = QtWidgets.QHBoxLayout() self.horizontalLayout_2.setObjectName("horizontalLayout_2") self.stackedWidget = QtWidgets.QStackedWidget(SendRecvDialog) self.stackedWidget.setObjectName("stackedWidget") self.page_receive = QtWidgets.QWidget() self.page_receive.setObjectName("page_receive") self.verticalLayout_2 = QtWidgets.QVBoxLayout(self.page_receive) self.verticalLayout_2.setObjectName("verticalLayout_2") self.graphicsViewReceive = LiveGraphicView(self.page_receive) self.graphicsViewReceive.setVerticalScrollBarPolicy( QtCore.Qt.ScrollBarAlwaysOff) self.graphicsViewReceive.setHorizontalScrollBarPolicy( QtCore.Qt.ScrollBarAsNeeded) self.graphicsViewReceive.setObjectName("graphicsViewReceive") self.verticalLayout_2.addWidget(self.graphicsViewReceive) self.stackedWidget.addWidget(self.page_receive) self.page_send = QtWidgets.QWidget() self.page_send.setObjectName("page_send") self.verticalLayout_3 = QtWidgets.QVBoxLayout(self.page_send) self.verticalLayout_3.setObjectName("verticalLayout_3") self.graphicsViewSend = EditableGraphicView(self.page_send) self.graphicsViewSend.setMouseTracking(True) self.graphicsViewSend.setRenderHints(QtGui.QPainter.Antialiasing | QtGui.QPainter.TextAntialiasing) self.graphicsViewSend.setTransformationAnchor( QtWidgets.QGraphicsView.NoAnchor) self.graphicsViewSend.setResizeAnchor(QtWidgets.QGraphicsView.NoAnchor) self.graphicsViewSend.setObjectName("graphicsViewSend") self.verticalLayout_3.addWidget(self.graphicsViewSend) self.label_7 = QtWidgets.QLabel(self.page_send) font = QtGui.QFont() font.setItalic(True) self.label_7.setFont(font) self.label_7.setObjectName("label_7") self.verticalLayout_3.addWidget(self.label_7) self.stackedWidget.addWidget(self.page_send) self.page = QtWidgets.QWidget() self.page.setObjectName("page") self.verticalLayout_4 = QtWidgets.QVBoxLayout(self.page) self.verticalLayout_4.setObjectName("verticalLayout_4") self.txtEd_sniff_Preview = QtWidgets.QPlainTextEdit(self.page) self.txtEd_sniff_Preview.setLineWrapMode( QtWidgets.QPlainTextEdit.NoWrap) self.txtEd_sniff_Preview.setReadOnly(True) self.txtEd_sniff_Preview.setMaximumBlockCount(100) self.txtEd_sniff_Preview.setObjectName("txtEd_sniff_Preview") self.verticalLayout_4.addWidget(self.txtEd_sniff_Preview) self.btnAccept = QtWidgets.QPushButton(self.page) self.btnAccept.setAutoDefault(False) self.btnAccept.setObjectName("btnAccept") self.verticalLayout_4.addWidget(self.btnAccept) self.stackedWidget.addWidget(self.page) self.horizontalLayout_2.addWidget(self.stackedWidget) self.verticalLayout_5 = QtWidgets.QVBoxLayout() self.verticalLayout_5.setObjectName("verticalLayout_5") self.label_y_scale = QtWidgets.QLabel(SendRecvDialog) self.label_y_scale.setObjectName("label_y_scale") self.verticalLayout_5.addWidget(self.label_y_scale) self.sliderYscale = QtWidgets.QSlider(SendRecvDialog) self.sliderYscale.setMinimum(1) self.sliderYscale.setMaximum(1000) self.sliderYscale.setProperty("value", 1) self.sliderYscale.setOrientation(QtCore.Qt.Vertical) self.sliderYscale.setTickInterval(1) self.sliderYscale.setObjectName("sliderYscale") self.verticalLayout_5.addWidget(self.sliderYscale) self.horizontalLayout_2.addLayout(self.verticalLayout_5) self.horizontalLayout_3.addLayout(self.horizontalLayout_2) self.horizontalLayout_3.setStretch(0, 1) self.horizontalLayout_3.setStretch(1, 10) self.horizontalLayout_4.addLayout(self.horizontalLayout_3) self.retranslateUi(SendRecvDialog) self.stackedWidget.setCurrentIndex(2) QtCore.QMetaObject.connectSlotsByName(SendRecvDialog) SendRecvDialog.setTabOrder(self.cbDevice, self.lineEditIP) SendRecvDialog.setTabOrder(self.lineEditIP, self.spinBoxFreq) SendRecvDialog.setTabOrder(self.spinBoxFreq, self.spinBoxSampleRate) SendRecvDialog.setTabOrder(self.spinBoxSampleRate, self.spinBoxBandwidth) SendRecvDialog.setTabOrder(self.spinBoxBandwidth, self.spinBoxGain) SendRecvDialog.setTabOrder(self.spinBoxGain, self.spinBoxNRepeat) SendRecvDialog.setTabOrder(self.spinBoxNRepeat, self.btnStart) SendRecvDialog.setTabOrder(self.btnStart, self.btnStop) SendRecvDialog.setTabOrder(self.btnStop, self.btnSave) SendRecvDialog.setTabOrder(self.btnSave, self.btnClear) SendRecvDialog.setTabOrder(self.btnClear, self.sliderYscale) SendRecvDialog.setTabOrder(self.sliderYscale, self.txtEditErrors) def retranslateUi(self, SendRecvDialog): _translate = QtCore.QCoreApplication.translate SendRecvDialog.setWindowTitle( _translate("SendRecvDialog", "Record Signal")) self.lineEditIP.setText(_translate("SendRecvDialog", "192.168.10.2")) self.labelGain.setText(_translate("SendRecvDialog", "Gain:")) self.labelBandWidth.setText( _translate("SendRecvDialog", "Bandwidth (Hz):")) self.cbDevice.setItemText(0, _translate("SendRecvDialog", "USRP")) self.cbDevice.setItemText(1, _translate("SendRecvDialog", "HackRF")) self.label_3.setText(_translate("SendRecvDialog", "Device:")) self.labelSampleRate.setText( _translate("SendRecvDialog", "Sample rate (Sps):")) self.labelIP.setText(_translate("SendRecvDialog", "IP address:")) self.labelPort.setText(_translate("SendRecvDialog", "Port number:")) self.spinBoxNRepeat.setSpecialValueText( _translate("SendRecvDialog", "Infinite")) self.labelFreq.setText(_translate("SendRecvDialog", "Frequency (Hz):")) self.labelNRepeat.setText(_translate("SendRecvDialog", "Repeat:")) self.btnLockBWSR.setText(_translate("SendRecvDialog", "...")) self.label_sniff_Noise.setText(_translate("SendRecvDialog", "Noise:")) self.label_sniff_Center.setText(_translate("SendRecvDialog", "Center:")) self.label_sniff_Modulation.setText( _translate("SendRecvDialog", "Modulation:")) self.combox_sniff_Modulation.setItemText( 0, _translate("SendRecvDialog", "ASK")) self.combox_sniff_Modulation.setItemText( 1, _translate("SendRecvDialog", "FSK")) self.combox_sniff_Modulation.setItemText( 2, _translate("SendRecvDialog", "PSK")) self.label_sniff_OutputFile.setText( _translate("SendRecvDialog", "Output file:")) self.lineEdit_sniff_OutputFile.setPlaceholderText( _translate("SendRecvDialog", "None")) self.label_sniff_BitLength.setText( _translate("SendRecvDialog", "Bit Length:")) self.label_sniff_Tolerance.setText( _translate("SendRecvDialog", "Error Tolerance:")) self.comboBox_sniff_viewtype.setItemText( 0, _translate("SendRecvDialog", "Bit")) self.comboBox_sniff_viewtype.setItemText( 1, _translate("SendRecvDialog", "Hex")) self.comboBox_sniff_viewtype.setItemText( 2, _translate("SendRecvDialog", "ASCII")) self.label_sniff_viewtype.setText(_translate("SendRecvDialog", "View:")) self.progressBar.setFormat(_translate("SendRecvDialog", "%v/%m")) self.lSamplesSentText.setText( _translate("SendRecvDialog", "Samples sent:")) self.lTimeText.setText( _translate("SendRecvDialog", "Time (in seconds):")) self.lSamplesCapturedText.setText( _translate("SendRecvDialog", "Samples captured:")) self.btnStart.setToolTip(_translate("SendRecvDialog", "Record signal")) self.btnStop.setToolTip(_translate("SendRecvDialog", "Stop recording")) self.btnSave.setText(_translate("SendRecvDialog", "Save...")) self.btnClear.setToolTip(_translate("SendRecvDialog", "Clear")) self.lSignalSizeText.setText( _translate("SendRecvDialog", "Signal size (in MiB):")) self.lSamplesCaptured.setText(_translate("SendRecvDialog", "0")) self.lTime.setText(_translate("SendRecvDialog", "0")) self.lSignalSize.setText(_translate("SendRecvDialog", "0")) self.lblRepeatText.setText( _translate("SendRecvDialog", "Current iteration:")) self.lblCurrentRepeatValue.setText(_translate("SendRecvDialog", "0")) self.label_7.setText( _translate("SendRecvDialog", "Hint: You can edit the raw signal before sending.")) self.btnAccept.setText(_translate("SendRecvDialog", "Accept data")) self.label_y_scale.setText(_translate("SendRecvDialog", "Y-Scale"))
class Ui_SendRecvDialog(object): def setupUi(self, SendRecvDialog): SendRecvDialog.setObjectName("SendRecvDialog") SendRecvDialog.setWindowModality(QtCore.Qt.NonModal) SendRecvDialog.resize(1246, 1123) SendRecvDialog.setMouseTracking(False) self.verticalLayout = QtWidgets.QVBoxLayout(SendRecvDialog) self.verticalLayout.setObjectName("verticalLayout") self.splitter = QtWidgets.QSplitter(SendRecvDialog) self.splitter.setStyleSheet("QSplitter::handle:horizontal {\n" "margin: 4px 0px;\n" " background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, \n" "stop:0 rgba(255, 255, 255, 0), \n" "stop:0.5 rgba(100, 100, 100, 100), \n" "stop:1 rgba(255, 255, 255, 0));\n" "image: url(:/icons/icons/splitter_handle_vertical.svg);\n" "}") self.splitter.setOrientation(QtCore.Qt.Horizontal) self.splitter.setObjectName("splitter") self.scrollArea = QtWidgets.QScrollArea(self.splitter) 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, 621, 1101)) self.scrollAreaWidgetContents_2.setObjectName("scrollAreaWidgetContents_2") self.verticalLayout_8 = QtWidgets.QVBoxLayout(self.scrollAreaWidgetContents_2) self.verticalLayout_8.setObjectName("verticalLayout_8") self.groupBox = QtWidgets.QGroupBox(self.scrollAreaWidgetContents_2) self.groupBox.setStyleSheet("QGroupBox\n" "{\n" " border: none;\n" "}") self.groupBox.setTitle("") self.groupBox.setObjectName("groupBox") self.gridLayout_2 = QtWidgets.QGridLayout(self.groupBox) self.gridLayout_2.setContentsMargins(-1, 0, -1, -1) self.gridLayout_2.setObjectName("gridLayout_2") self.progressBarMessage = QtWidgets.QProgressBar(self.groupBox) self.progressBarMessage.setProperty("value", 0) self.progressBarMessage.setObjectName("progressBarMessage") self.gridLayout_2.addWidget(self.progressBarMessage, 19, 0, 1, 1) self.labelCurrentMessage = QtWidgets.QLabel(self.groupBox) self.labelCurrentMessage.setObjectName("labelCurrentMessage") self.gridLayout_2.addWidget(self.labelCurrentMessage, 18, 0, 1, 1) self.lReceiveBufferFullText = QtWidgets.QLabel(self.groupBox) self.lReceiveBufferFullText.setObjectName("lReceiveBufferFullText") self.gridLayout_2.addWidget(self.lReceiveBufferFullText, 7, 0, 1, 1) self.progressBarSample = QtWidgets.QProgressBar(self.groupBox) self.progressBarSample.setProperty("value", 0) self.progressBarSample.setObjectName("progressBarSample") self.gridLayout_2.addWidget(self.progressBarSample, 21, 0, 1, 1) self.lSamplesSentText = QtWidgets.QLabel(self.groupBox) self.lSamplesSentText.setObjectName("lSamplesSentText") self.gridLayout_2.addWidget(self.lSamplesSentText, 20, 0, 1, 1) self.lTimeText = QtWidgets.QLabel(self.groupBox) self.lTimeText.setObjectName("lTimeText") self.gridLayout_2.addWidget(self.lTimeText, 12, 0, 1, 1) self.lSamplesCapturedText = QtWidgets.QLabel(self.groupBox) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.lSamplesCapturedText.sizePolicy().hasHeightForWidth()) self.lSamplesCapturedText.setSizePolicy(sizePolicy) self.lSamplesCapturedText.setObjectName("lSamplesCapturedText") self.gridLayout_2.addWidget(self.lSamplesCapturedText, 5, 0, 1, 1) self.lSignalSizeText = QtWidgets.QLabel(self.groupBox) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.lSignalSizeText.sizePolicy().hasHeightForWidth()) self.lSignalSizeText.setSizePolicy(sizePolicy) self.lSignalSizeText.setObjectName("lSignalSizeText") self.gridLayout_2.addWidget(self.lSignalSizeText, 9, 0, 1, 1) self.lSamplesCaptured = QtWidgets.QLabel(self.groupBox) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.lSamplesCaptured.sizePolicy().hasHeightForWidth()) self.lSamplesCaptured.setSizePolicy(sizePolicy) font = QtGui.QFont() font.setBold(True) font.setWeight(75) self.lSamplesCaptured.setFont(font) self.lSamplesCaptured.setAlignment(QtCore.Qt.AlignCenter) self.lSamplesCaptured.setObjectName("lSamplesCaptured") self.gridLayout_2.addWidget(self.lSamplesCaptured, 6, 0, 1, 2) self.lTime = QtWidgets.QLabel(self.groupBox) font = QtGui.QFont() font.setBold(True) font.setWeight(75) self.lTime.setFont(font) self.lTime.setAlignment(QtCore.Qt.AlignCenter) self.lTime.setObjectName("lTime") self.gridLayout_2.addWidget(self.lTime, 15, 0, 1, 2) self.lSignalSize = QtWidgets.QLabel(self.groupBox) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.lSignalSize.sizePolicy().hasHeightForWidth()) self.lSignalSize.setSizePolicy(sizePolicy) font = QtGui.QFont() font.setBold(True) font.setWeight(75) self.lSignalSize.setFont(font) self.lSignalSize.setAlignment(QtCore.Qt.AlignCenter) self.lSignalSize.setObjectName("lSignalSize") self.gridLayout_2.addWidget(self.lSignalSize, 11, 0, 1, 2) self.lblRepeatText = QtWidgets.QLabel(self.groupBox) self.lblRepeatText.setObjectName("lblRepeatText") self.gridLayout_2.addWidget(self.lblRepeatText, 16, 0, 1, 1) self.lblCurrentRepeatValue = QtWidgets.QLabel(self.groupBox) font = QtGui.QFont() font.setBold(True) font.setWeight(75) self.lblCurrentRepeatValue.setFont(font) self.lblCurrentRepeatValue.setAlignment(QtCore.Qt.AlignCenter) self.lblCurrentRepeatValue.setObjectName("lblCurrentRepeatValue") self.gridLayout_2.addWidget(self.lblCurrentRepeatValue, 17, 0, 1, 1) self.labelReceiveBufferFull = QtWidgets.QLabel(self.groupBox) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.labelReceiveBufferFull.sizePolicy().hasHeightForWidth()) self.labelReceiveBufferFull.setSizePolicy(sizePolicy) font = QtGui.QFont() font.setBold(True) font.setWeight(75) self.labelReceiveBufferFull.setFont(font) self.labelReceiveBufferFull.setAlignment(QtCore.Qt.AlignCenter) self.labelReceiveBufferFull.setObjectName("labelReceiveBufferFull") self.gridLayout_2.addWidget(self.labelReceiveBufferFull, 8, 0, 1, 1) self.horizontalLayout = QtWidgets.QHBoxLayout() self.horizontalLayout.setObjectName("horizontalLayout") spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout.addItem(spacerItem) self.btnStart = QtWidgets.QToolButton(self.groupBox) self.btnStart.setMinimumSize(QtCore.QSize(64, 64)) icon = QtGui.QIcon.fromTheme("media-record") self.btnStart.setIcon(icon) self.btnStart.setIconSize(QtCore.QSize(32, 32)) self.btnStart.setToolButtonStyle(QtCore.Qt.ToolButtonTextUnderIcon) self.btnStart.setObjectName("btnStart") self.horizontalLayout.addWidget(self.btnStart) self.btnStop = QtWidgets.QToolButton(self.groupBox) self.btnStop.setMinimumSize(QtCore.QSize(64, 64)) icon = QtGui.QIcon.fromTheme("media-playback-stop") self.btnStop.setIcon(icon) self.btnStop.setIconSize(QtCore.QSize(32, 32)) self.btnStop.setToolButtonStyle(QtCore.Qt.ToolButtonTextUnderIcon) self.btnStop.setObjectName("btnStop") self.horizontalLayout.addWidget(self.btnStop) self.btnSave = QtWidgets.QToolButton(self.groupBox) self.btnSave.setMinimumSize(QtCore.QSize(64, 64)) icon = QtGui.QIcon.fromTheme("document-save") self.btnSave.setIcon(icon) self.btnSave.setIconSize(QtCore.QSize(32, 32)) self.btnSave.setToolButtonStyle(QtCore.Qt.ToolButtonTextUnderIcon) self.btnSave.setObjectName("btnSave") self.horizontalLayout.addWidget(self.btnSave) self.btnClear = QtWidgets.QToolButton(self.groupBox) self.btnClear.setMinimumSize(QtCore.QSize(64, 64)) icon = QtGui.QIcon.fromTheme("view-refresh") self.btnClear.setIcon(icon) self.btnClear.setIconSize(QtCore.QSize(32, 32)) self.btnClear.setToolButtonStyle(QtCore.Qt.ToolButtonTextUnderIcon) self.btnClear.setObjectName("btnClear") self.horizontalLayout.addWidget(self.btnClear) spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout.addItem(spacerItem1) self.gridLayout_2.addLayout(self.horizontalLayout, 1, 0, 1, 2) spacerItem2 = QtWidgets.QSpacerItem(20, 10, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) self.gridLayout_2.addItem(spacerItem2, 2, 0, 1, 1) self.verticalLayout_8.addWidget(self.groupBox) self.txtEditErrors = QtWidgets.QTextEdit(self.scrollAreaWidgetContents_2) self.txtEditErrors.setReadOnly(True) self.txtEditErrors.setObjectName("txtEditErrors") self.verticalLayout_8.addWidget(self.txtEditErrors) self.scrollArea.setWidget(self.scrollAreaWidgetContents_2) self.layoutWidget = QtWidgets.QWidget(self.splitter) self.layoutWidget.setObjectName("layoutWidget") self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.layoutWidget) self.horizontalLayout_2.setContentsMargins(0, 0, 0, 0) self.horizontalLayout_2.setObjectName("horizontalLayout_2") self.stackedWidget = QtWidgets.QStackedWidget(self.layoutWidget) self.stackedWidget.setObjectName("stackedWidget") self.page_receive = QtWidgets.QWidget() self.page_receive.setObjectName("page_receive") self.verticalLayout_2 = QtWidgets.QVBoxLayout(self.page_receive) self.verticalLayout_2.setObjectName("verticalLayout_2") self.graphicsViewReceive = LiveGraphicView(self.page_receive) self.graphicsViewReceive.setVerticalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOff) self.graphicsViewReceive.setHorizontalScrollBarPolicy(QtCore.Qt.ScrollBarAsNeeded) self.graphicsViewReceive.setObjectName("graphicsViewReceive") self.verticalLayout_2.addWidget(self.graphicsViewReceive) self.stackedWidget.addWidget(self.page_receive) self.page_send = QtWidgets.QWidget() self.page_send.setObjectName("page_send") self.verticalLayout_3 = QtWidgets.QVBoxLayout(self.page_send) self.verticalLayout_3.setObjectName("verticalLayout_3") self.graphicsViewSend = EditableGraphicView(self.page_send) self.graphicsViewSend.setMouseTracking(True) self.graphicsViewSend.setRenderHints(QtGui.QPainter.Antialiasing|QtGui.QPainter.TextAntialiasing) self.graphicsViewSend.setTransformationAnchor(QtWidgets.QGraphicsView.NoAnchor) self.graphicsViewSend.setResizeAnchor(QtWidgets.QGraphicsView.NoAnchor) self.graphicsViewSend.setObjectName("graphicsViewSend") self.verticalLayout_3.addWidget(self.graphicsViewSend) self.label_7 = QtWidgets.QLabel(self.page_send) font = QtGui.QFont() font.setItalic(True) self.label_7.setFont(font) self.label_7.setObjectName("label_7") self.verticalLayout_3.addWidget(self.label_7) self.stackedWidget.addWidget(self.page_send) self.page_continuous_send = QtWidgets.QWidget() self.page_continuous_send.setObjectName("page_continuous_send") self.verticalLayout_6 = QtWidgets.QVBoxLayout(self.page_continuous_send) self.verticalLayout_6.setObjectName("verticalLayout_6") self.graphicsViewContinuousSend = LiveGraphicView(self.page_continuous_send) self.graphicsViewContinuousSend.setRenderHints(QtGui.QPainter.Antialiasing|QtGui.QPainter.TextAntialiasing) self.graphicsViewContinuousSend.setObjectName("graphicsViewContinuousSend") self.verticalLayout_6.addWidget(self.graphicsViewContinuousSend) self.stackedWidget.addWidget(self.page_continuous_send) self.page_spectrum = QtWidgets.QWidget() self.page_spectrum.setObjectName("page_spectrum") self.verticalLayout_7 = QtWidgets.QVBoxLayout(self.page_spectrum) self.verticalLayout_7.setObjectName("verticalLayout_7") self.graphicsViewFFT = LiveGraphicView(self.page_spectrum) self.graphicsViewFFT.setObjectName("graphicsViewFFT") self.verticalLayout_7.addWidget(self.graphicsViewFFT) self.graphicsViewSpectrogram = QtWidgets.QGraphicsView(self.page_spectrum) self.graphicsViewSpectrogram.setVerticalScrollBarPolicy(QtCore.Qt.ScrollBarAsNeeded) self.graphicsViewSpectrogram.setHorizontalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOff) self.graphicsViewSpectrogram.setRenderHints(QtGui.QPainter.SmoothPixmapTransform|QtGui.QPainter.TextAntialiasing) self.graphicsViewSpectrogram.setCacheMode(QtWidgets.QGraphicsView.CacheNone) self.graphicsViewSpectrogram.setViewportUpdateMode(QtWidgets.QGraphicsView.MinimalViewportUpdate) self.graphicsViewSpectrogram.setObjectName("graphicsViewSpectrogram") self.verticalLayout_7.addWidget(self.graphicsViewSpectrogram) self.verticalLayout_7.setStretch(0, 1) self.verticalLayout_7.setStretch(1, 1) self.stackedWidget.addWidget(self.page_spectrum) self.page_sniff = QtWidgets.QWidget() self.page_sniff.setObjectName("page_sniff") self.verticalLayout_4 = QtWidgets.QVBoxLayout(self.page_sniff) self.verticalLayout_4.setObjectName("verticalLayout_4") self.graphicsView_sniff_Preview = LiveGraphicView(self.page_sniff) self.graphicsView_sniff_Preview.setObjectName("graphicsView_sniff_Preview") self.verticalLayout_4.addWidget(self.graphicsView_sniff_Preview) self.txtEd_sniff_Preview = QtWidgets.QPlainTextEdit(self.page_sniff) self.txtEd_sniff_Preview.setLineWrapMode(QtWidgets.QPlainTextEdit.NoWrap) self.txtEd_sniff_Preview.setReadOnly(True) self.txtEd_sniff_Preview.setMaximumBlockCount(100) self.txtEd_sniff_Preview.setObjectName("txtEd_sniff_Preview") self.verticalLayout_4.addWidget(self.txtEd_sniff_Preview) self.btnAccept = QtWidgets.QPushButton(self.page_sniff) self.btnAccept.setAutoDefault(False) self.btnAccept.setObjectName("btnAccept") self.verticalLayout_4.addWidget(self.btnAccept) self.stackedWidget.addWidget(self.page_sniff) self.horizontalLayout_2.addWidget(self.stackedWidget) self.verticalLayout_5 = QtWidgets.QVBoxLayout() self.verticalLayout_5.setObjectName("verticalLayout_5") self.label_y_scale = QtWidgets.QLabel(self.layoutWidget) self.label_y_scale.setObjectName("label_y_scale") self.verticalLayout_5.addWidget(self.label_y_scale) self.sliderYscale = QtWidgets.QSlider(self.layoutWidget) self.sliderYscale.setMinimum(1) self.sliderYscale.setMaximum(1000) self.sliderYscale.setProperty("value", 1) self.sliderYscale.setOrientation(QtCore.Qt.Vertical) self.sliderYscale.setTickInterval(1) self.sliderYscale.setObjectName("sliderYscale") self.verticalLayout_5.addWidget(self.sliderYscale) self.horizontalLayout_2.addLayout(self.verticalLayout_5) self.verticalLayout.addWidget(self.splitter) self.retranslateUi(SendRecvDialog) self.stackedWidget.setCurrentIndex(4) SendRecvDialog.setTabOrder(self.btnStart, self.btnStop) SendRecvDialog.setTabOrder(self.btnStop, self.btnSave) SendRecvDialog.setTabOrder(self.btnSave, self.btnClear) SendRecvDialog.setTabOrder(self.btnClear, self.txtEd_sniff_Preview) SendRecvDialog.setTabOrder(self.txtEd_sniff_Preview, self.sliderYscale) SendRecvDialog.setTabOrder(self.sliderYscale, self.txtEditErrors) SendRecvDialog.setTabOrder(self.txtEditErrors, self.graphicsViewSend) SendRecvDialog.setTabOrder(self.graphicsViewSend, self.graphicsViewReceive) SendRecvDialog.setTabOrder(self.graphicsViewReceive, self.btnAccept) def retranslateUi(self, SendRecvDialog): _translate = QtCore.QCoreApplication.translate SendRecvDialog.setWindowTitle(_translate("SendRecvDialog", "Record Signal")) self.progressBarMessage.setFormat(_translate("SendRecvDialog", "%v/%m")) self.labelCurrentMessage.setText(_translate("SendRecvDialog", "Current message:")) self.lReceiveBufferFullText.setText(_translate("SendRecvDialog", "Receive buffer full:")) self.progressBarSample.setFormat(_translate("SendRecvDialog", "%v/%m")) self.lSamplesSentText.setText(_translate("SendRecvDialog", "Current sample:")) self.lTimeText.setText(_translate("SendRecvDialog", "Time (in seconds):")) self.lSamplesCapturedText.setText(_translate("SendRecvDialog", "Samples captured:")) self.lSignalSizeText.setText(_translate("SendRecvDialog", "Signal size (in MiB):")) self.lSamplesCaptured.setText(_translate("SendRecvDialog", "0")) self.lTime.setText(_translate("SendRecvDialog", "0")) self.lSignalSize.setText(_translate("SendRecvDialog", "0")) self.lblRepeatText.setText(_translate("SendRecvDialog", "Current iteration:")) self.lblCurrentRepeatValue.setText(_translate("SendRecvDialog", "0")) self.labelReceiveBufferFull.setText(_translate("SendRecvDialog", "0%")) self.btnStart.setToolTip(_translate("SendRecvDialog", "Record signal")) self.btnStart.setText(_translate("SendRecvDialog", "Start")) self.btnStop.setToolTip(_translate("SendRecvDialog", "Stop recording")) self.btnStop.setText(_translate("SendRecvDialog", "Stop")) self.btnSave.setText(_translate("SendRecvDialog", "Save...")) self.btnClear.setToolTip(_translate("SendRecvDialog", "Clear")) self.btnClear.setText(_translate("SendRecvDialog", "Clear")) self.label_7.setText(_translate("SendRecvDialog", "Hint: You can edit the raw signal before sending.")) self.btnAccept.setToolTip(_translate("SendRecvDialog", "<html><head/><body><p>Accept the sniffed data and load it into <span style=\" font-weight:600;\">Analysis</span> tab.</p></body></html>")) self.btnAccept.setText(_translate("SendRecvDialog", "Accept data (Open in Analysis)")) self.label_y_scale.setText(_translate("SendRecvDialog", "Y-Scale"))
class Ui_SendRecvDialog(object): def setupUi(self, SendRecvDialog): SendRecvDialog.setObjectName("SendRecvDialog") SendRecvDialog.setWindowModality(QtCore.Qt.NonModal) SendRecvDialog.resize(921, 716) SendRecvDialog.setMouseTracking(False) self.verticalLayout = QtWidgets.QVBoxLayout(SendRecvDialog) self.verticalLayout.setObjectName("verticalLayout") self.splitter = QtWidgets.QSplitter(SendRecvDialog) self.splitter.setStyleSheet("QSplitter::handle:horizontal {\n" "margin: 4px 0px;\n" " background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, \n" "stop:0 rgba(255, 255, 255, 0), \n" "stop:0.5 rgba(100, 100, 100, 100), \n" "stop:1 rgba(255, 255, 255, 0));\n" "image: url(:/icons/data/icons/splitter_handle_vertical.svg);\n" "}") self.splitter.setOrientation(QtCore.Qt.Horizontal) self.splitter.setObjectName("splitter") self.scrollArea = QtWidgets.QScrollArea(self.splitter) 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, 426, 1238)) self.scrollAreaWidgetContents_2.setObjectName("scrollAreaWidgetContents_2") self.gridLayout = QtWidgets.QGridLayout(self.scrollAreaWidgetContents_2) self.gridLayout.setContentsMargins(0, 0, 0, 0) self.gridLayout.setObjectName("gridLayout") self.label_3 = QtWidgets.QLabel(self.scrollAreaWidgetContents_2) self.label_3.setObjectName("label_3") self.gridLayout.addWidget(self.label_3, 0, 0, 1, 1) self.labelDeviceArgs = QtWidgets.QLabel(self.scrollAreaWidgetContents_2) self.labelDeviceArgs.setToolTipDuration(-1) self.labelDeviceArgs.setStyleSheet("") self.labelDeviceArgs.setObjectName("labelDeviceArgs") self.gridLayout.addWidget(self.labelDeviceArgs, 1, 0, 1, 1) self.lineEditDeviceArgs = QtWidgets.QLineEdit(self.scrollAreaWidgetContents_2) self.lineEditDeviceArgs.setObjectName("lineEditDeviceArgs") self.gridLayout.addWidget(self.lineEditDeviceArgs, 1, 1, 1, 2) self.labelChannel = QtWidgets.QLabel(self.scrollAreaWidgetContents_2) self.labelChannel.setObjectName("labelChannel") self.gridLayout.addWidget(self.labelChannel, 2, 0, 1, 1) self.labelAntenna = QtWidgets.QLabel(self.scrollAreaWidgetContents_2) self.labelAntenna.setObjectName("labelAntenna") self.gridLayout.addWidget(self.labelAntenna, 3, 0, 1, 1) self.labelIP = QtWidgets.QLabel(self.scrollAreaWidgetContents_2) self.labelIP.setObjectName("labelIP") self.gridLayout.addWidget(self.labelIP, 4, 0, 1, 1) self.lineEditIP = QtWidgets.QLineEdit(self.scrollAreaWidgetContents_2) self.lineEditIP.setObjectName("lineEditIP") self.gridLayout.addWidget(self.lineEditIP, 4, 1, 1, 2) self.labelPort = QtWidgets.QLabel(self.scrollAreaWidgetContents_2) self.labelPort.setObjectName("labelPort") self.gridLayout.addWidget(self.labelPort, 5, 0, 1, 1) self.labelFreq = QtWidgets.QLabel(self.scrollAreaWidgetContents_2) self.labelFreq.setObjectName("labelFreq") self.gridLayout.addWidget(self.labelFreq, 6, 0, 1, 1) self.spinBoxFreq = KillerDoubleSpinBox(self.scrollAreaWidgetContents_2) self.spinBoxFreq.setDecimals(3) self.spinBoxFreq.setMinimum(0.001) self.spinBoxFreq.setMaximum(1000000000000.0) self.spinBoxFreq.setObjectName("spinBoxFreq") self.gridLayout.addWidget(self.spinBoxFreq, 6, 1, 1, 2) self.labelSampleRate = QtWidgets.QLabel(self.scrollAreaWidgetContents_2) self.labelSampleRate.setObjectName("labelSampleRate") self.gridLayout.addWidget(self.labelSampleRate, 7, 0, 1, 1) self.spinBoxSampleRate = KillerDoubleSpinBox(self.scrollAreaWidgetContents_2) self.spinBoxSampleRate.setDecimals(3) self.spinBoxSampleRate.setMinimum(0.001) self.spinBoxSampleRate.setMaximum(1000000000000.0) self.spinBoxSampleRate.setObjectName("spinBoxSampleRate") self.gridLayout.addWidget(self.spinBoxSampleRate, 7, 1, 1, 2) self.btnLockBWSR = QtWidgets.QToolButton(self.scrollAreaWidgetContents_2) icon = QtGui.QIcon() icon.addPixmap(QtGui.QPixmap(":/icons/data/icons/lock.svg"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.btnLockBWSR.setIcon(icon) self.btnLockBWSR.setCheckable(True) self.btnLockBWSR.setChecked(True) self.btnLockBWSR.setObjectName("btnLockBWSR") self.gridLayout.addWidget(self.btnLockBWSR, 7, 3, 2, 1) self.labelBandwidth = QtWidgets.QLabel(self.scrollAreaWidgetContents_2) self.labelBandwidth.setObjectName("labelBandwidth") self.gridLayout.addWidget(self.labelBandwidth, 8, 0, 1, 1) self.spinBoxBandwidth = KillerDoubleSpinBox(self.scrollAreaWidgetContents_2) self.spinBoxBandwidth.setDecimals(3) self.spinBoxBandwidth.setMinimum(0.001) self.spinBoxBandwidth.setMaximum(1000000000000.0) self.spinBoxBandwidth.setObjectName("spinBoxBandwidth") self.gridLayout.addWidget(self.spinBoxBandwidth, 8, 1, 1, 2) self.labelGain = QtWidgets.QLabel(self.scrollAreaWidgetContents_2) self.labelGain.setObjectName("labelGain") self.gridLayout.addWidget(self.labelGain, 9, 0, 1, 1) self.sliderGain = QtWidgets.QSlider(self.scrollAreaWidgetContents_2) self.sliderGain.setMaximum(100) self.sliderGain.setSingleStep(1) self.sliderGain.setOrientation(QtCore.Qt.Horizontal) self.sliderGain.setObjectName("sliderGain") self.gridLayout.addWidget(self.sliderGain, 9, 1, 1, 1) self.spinBoxGain = QtWidgets.QSpinBox(self.scrollAreaWidgetContents_2) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.spinBoxGain.sizePolicy().hasHeightForWidth()) self.spinBoxGain.setSizePolicy(sizePolicy) self.spinBoxGain.setMinimum(0) self.spinBoxGain.setMaximum(99) self.spinBoxGain.setProperty("value", 40) self.spinBoxGain.setObjectName("spinBoxGain") self.gridLayout.addWidget(self.spinBoxGain, 9, 2, 1, 1) self.labelIFGain = QtWidgets.QLabel(self.scrollAreaWidgetContents_2) self.labelIFGain.setObjectName("labelIFGain") self.gridLayout.addWidget(self.labelIFGain, 10, 0, 1, 1) self.sliderIFGain = QtWidgets.QSlider(self.scrollAreaWidgetContents_2) self.sliderIFGain.setOrientation(QtCore.Qt.Horizontal) self.sliderIFGain.setObjectName("sliderIFGain") self.gridLayout.addWidget(self.sliderIFGain, 10, 1, 1, 1) self.spinBoxIFGain = QtWidgets.QSpinBox(self.scrollAreaWidgetContents_2) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.spinBoxIFGain.sizePolicy().hasHeightForWidth()) self.spinBoxIFGain.setSizePolicy(sizePolicy) self.spinBoxIFGain.setObjectName("spinBoxIFGain") self.gridLayout.addWidget(self.spinBoxIFGain, 10, 2, 1, 1) self.labelBasebandGain = QtWidgets.QLabel(self.scrollAreaWidgetContents_2) self.labelBasebandGain.setObjectName("labelBasebandGain") self.gridLayout.addWidget(self.labelBasebandGain, 11, 0, 1, 1) self.sliderBasebandGain = QtWidgets.QSlider(self.scrollAreaWidgetContents_2) self.sliderBasebandGain.setSliderPosition(0) self.sliderBasebandGain.setOrientation(QtCore.Qt.Horizontal) self.sliderBasebandGain.setInvertedAppearance(False) self.sliderBasebandGain.setInvertedControls(False) self.sliderBasebandGain.setTickPosition(QtWidgets.QSlider.NoTicks) self.sliderBasebandGain.setTickInterval(0) self.sliderBasebandGain.setObjectName("sliderBasebandGain") self.gridLayout.addWidget(self.sliderBasebandGain, 11, 1, 1, 1) self.spinBoxBasebandGain = QtWidgets.QSpinBox(self.scrollAreaWidgetContents_2) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.spinBoxBasebandGain.sizePolicy().hasHeightForWidth()) self.spinBoxBasebandGain.setSizePolicy(sizePolicy) self.spinBoxBasebandGain.setObjectName("spinBoxBasebandGain") self.gridLayout.addWidget(self.spinBoxBasebandGain, 11, 2, 1, 1) self.labelFreqCorrection = QtWidgets.QLabel(self.scrollAreaWidgetContents_2) self.labelFreqCorrection.setObjectName("labelFreqCorrection") self.gridLayout.addWidget(self.labelFreqCorrection, 12, 0, 1, 1) self.labelDirectSampling = QtWidgets.QLabel(self.scrollAreaWidgetContents_2) self.labelDirectSampling.setObjectName("labelDirectSampling") self.gridLayout.addWidget(self.labelDirectSampling, 13, 0, 1, 1) self.labelNRepeat = QtWidgets.QLabel(self.scrollAreaWidgetContents_2) self.labelNRepeat.setObjectName("labelNRepeat") self.gridLayout.addWidget(self.labelNRepeat, 14, 0, 1, 1) self.spinBoxNRepeat = QtWidgets.QSpinBox(self.scrollAreaWidgetContents_2) self.spinBoxNRepeat.setMaximum(999999999) self.spinBoxNRepeat.setObjectName("spinBoxNRepeat") self.gridLayout.addWidget(self.spinBoxNRepeat, 14, 1, 1, 2) self.label_sniff_Noise = QtWidgets.QLabel(self.scrollAreaWidgetContents_2) self.label_sniff_Noise.setObjectName("label_sniff_Noise") self.gridLayout.addWidget(self.label_sniff_Noise, 15, 0, 1, 1) self.label_sniff_Center = QtWidgets.QLabel(self.scrollAreaWidgetContents_2) self.label_sniff_Center.setObjectName("label_sniff_Center") self.gridLayout.addWidget(self.label_sniff_Center, 16, 0, 1, 1) self.label_sniff_BitLength = QtWidgets.QLabel(self.scrollAreaWidgetContents_2) self.label_sniff_BitLength.setObjectName("label_sniff_BitLength") self.gridLayout.addWidget(self.label_sniff_BitLength, 17, 0, 1, 1) self.spinbox_sniff_BitLen = QtWidgets.QSpinBox(self.scrollAreaWidgetContents_2) self.spinbox_sniff_BitLen.setMinimum(1) self.spinbox_sniff_BitLen.setMaximum(999999999) self.spinbox_sniff_BitLen.setObjectName("spinbox_sniff_BitLen") self.gridLayout.addWidget(self.spinbox_sniff_BitLen, 17, 1, 1, 2) self.label_sniff_Tolerance = QtWidgets.QLabel(self.scrollAreaWidgetContents_2) self.label_sniff_Tolerance.setObjectName("label_sniff_Tolerance") self.gridLayout.addWidget(self.label_sniff_Tolerance, 18, 0, 1, 1) self.label_sniff_Modulation = QtWidgets.QLabel(self.scrollAreaWidgetContents_2) self.label_sniff_Modulation.setObjectName("label_sniff_Modulation") self.gridLayout.addWidget(self.label_sniff_Modulation, 19, 0, 1, 1) self.label_sniff_viewtype = QtWidgets.QLabel(self.scrollAreaWidgetContents_2) self.label_sniff_viewtype.setObjectName("label_sniff_viewtype") self.gridLayout.addWidget(self.label_sniff_viewtype, 20, 0, 1, 1) self.label_sniff_encoding = QtWidgets.QLabel(self.scrollAreaWidgetContents_2) self.label_sniff_encoding.setObjectName("label_sniff_encoding") self.gridLayout.addWidget(self.label_sniff_encoding, 21, 0, 1, 1) self.label_sniff_OutputFile = QtWidgets.QLabel(self.scrollAreaWidgetContents_2) self.label_sniff_OutputFile.setObjectName("label_sniff_OutputFile") self.gridLayout.addWidget(self.label_sniff_OutputFile, 22, 0, 1, 1) self.lineEdit_sniff_OutputFile = QtWidgets.QLineEdit(self.scrollAreaWidgetContents_2) self.lineEdit_sniff_OutputFile.setReadOnly(False) self.lineEdit_sniff_OutputFile.setClearButtonEnabled(True) self.lineEdit_sniff_OutputFile.setObjectName("lineEdit_sniff_OutputFile") self.gridLayout.addWidget(self.lineEdit_sniff_OutputFile, 22, 1, 1, 2) self.groupBox = QtWidgets.QGroupBox(self.scrollAreaWidgetContents_2) self.groupBox.setTitle("") self.groupBox.setObjectName("groupBox") self.gridLayout_2 = QtWidgets.QGridLayout(self.groupBox) self.gridLayout_2.setContentsMargins(-1, 0, -1, -1) self.gridLayout_2.setObjectName("gridLayout_2") self.lReceiveBufferFullText = QtWidgets.QLabel(self.groupBox) self.lReceiveBufferFullText.setObjectName("lReceiveBufferFullText") self.gridLayout_2.addWidget(self.lReceiveBufferFullText, 7, 0, 1, 1) self.progressBar = QtWidgets.QProgressBar(self.groupBox) self.progressBar.setProperty("value", 0) self.progressBar.setObjectName("progressBar") self.gridLayout_2.addWidget(self.progressBar, 19, 0, 1, 1) self.lSamplesSentText = QtWidgets.QLabel(self.groupBox) self.lSamplesSentText.setObjectName("lSamplesSentText") self.gridLayout_2.addWidget(self.lSamplesSentText, 18, 0, 1, 1) spacerItem = QtWidgets.QSpacerItem(20, 10, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) self.gridLayout_2.addItem(spacerItem, 2, 0, 1, 1) self.lTimeText = QtWidgets.QLabel(self.groupBox) self.lTimeText.setObjectName("lTimeText") self.gridLayout_2.addWidget(self.lTimeText, 12, 0, 1, 1) self.lSamplesCapturedText = QtWidgets.QLabel(self.groupBox) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.lSamplesCapturedText.sizePolicy().hasHeightForWidth()) self.lSamplesCapturedText.setSizePolicy(sizePolicy) self.lSamplesCapturedText.setObjectName("lSamplesCapturedText") self.gridLayout_2.addWidget(self.lSamplesCapturedText, 5, 0, 1, 1) self.horizontalLayout = QtWidgets.QHBoxLayout() self.horizontalLayout.setObjectName("horizontalLayout") spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout.addItem(spacerItem1) self.btnStart = QtWidgets.QToolButton(self.groupBox) self.btnStart.setMinimumSize(QtCore.QSize(42, 42)) self.btnStart.setMaximumSize(QtCore.QSize(42, 42)) self.btnStart.setText("") icon = QtGui.QIcon.fromTheme("media-record") self.btnStart.setIcon(icon) self.btnStart.setIconSize(QtCore.QSize(32, 32)) self.btnStart.setObjectName("btnStart") self.horizontalLayout.addWidget(self.btnStart) self.btnStop = QtWidgets.QToolButton(self.groupBox) self.btnStop.setMinimumSize(QtCore.QSize(42, 42)) self.btnStop.setMaximumSize(QtCore.QSize(42, 42)) self.btnStop.setText("") icon = QtGui.QIcon.fromTheme("media-playback-stop") self.btnStop.setIcon(icon) self.btnStop.setIconSize(QtCore.QSize(32, 32)) self.btnStop.setObjectName("btnStop") self.horizontalLayout.addWidget(self.btnStop) self.btnSave = QtWidgets.QToolButton(self.groupBox) self.btnSave.setMinimumSize(QtCore.QSize(42, 42)) self.btnSave.setMaximumSize(QtCore.QSize(42, 42)) icon = QtGui.QIcon.fromTheme("document-save") self.btnSave.setIcon(icon) self.btnSave.setIconSize(QtCore.QSize(32, 32)) self.btnSave.setObjectName("btnSave") self.horizontalLayout.addWidget(self.btnSave) self.btnClear = QtWidgets.QToolButton(self.groupBox) self.btnClear.setMinimumSize(QtCore.QSize(42, 42)) self.btnClear.setMaximumSize(QtCore.QSize(42, 42)) self.btnClear.setText("") icon = QtGui.QIcon.fromTheme("view-refresh") self.btnClear.setIcon(icon) self.btnClear.setIconSize(QtCore.QSize(32, 32)) self.btnClear.setObjectName("btnClear") self.horizontalLayout.addWidget(self.btnClear) spacerItem2 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout.addItem(spacerItem2) self.gridLayout_2.addLayout(self.horizontalLayout, 1, 0, 1, 2) self.lSignalSizeText = QtWidgets.QLabel(self.groupBox) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.lSignalSizeText.sizePolicy().hasHeightForWidth()) self.lSignalSizeText.setSizePolicy(sizePolicy) self.lSignalSizeText.setObjectName("lSignalSizeText") self.gridLayout_2.addWidget(self.lSignalSizeText, 9, 0, 1, 1) self.lSamplesCaptured = QtWidgets.QLabel(self.groupBox) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.lSamplesCaptured.sizePolicy().hasHeightForWidth()) self.lSamplesCaptured.setSizePolicy(sizePolicy) font = QtGui.QFont() font.setBold(True) font.setWeight(75) self.lSamplesCaptured.setFont(font) self.lSamplesCaptured.setAlignment(QtCore.Qt.AlignCenter) self.lSamplesCaptured.setObjectName("lSamplesCaptured") self.gridLayout_2.addWidget(self.lSamplesCaptured, 6, 0, 1, 2) self.lTime = QtWidgets.QLabel(self.groupBox) font = QtGui.QFont() font.setBold(True) font.setWeight(75) self.lTime.setFont(font) self.lTime.setAlignment(QtCore.Qt.AlignCenter) self.lTime.setObjectName("lTime") self.gridLayout_2.addWidget(self.lTime, 15, 0, 1, 2) self.lSignalSize = QtWidgets.QLabel(self.groupBox) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.lSignalSize.sizePolicy().hasHeightForWidth()) self.lSignalSize.setSizePolicy(sizePolicy) font = QtGui.QFont() font.setBold(True) font.setWeight(75) self.lSignalSize.setFont(font) self.lSignalSize.setAlignment(QtCore.Qt.AlignCenter) self.lSignalSize.setObjectName("lSignalSize") self.gridLayout_2.addWidget(self.lSignalSize, 11, 0, 1, 2) self.lblRepeatText = QtWidgets.QLabel(self.groupBox) self.lblRepeatText.setObjectName("lblRepeatText") self.gridLayout_2.addWidget(self.lblRepeatText, 16, 0, 1, 1) self.lblCurrentRepeatValue = QtWidgets.QLabel(self.groupBox) font = QtGui.QFont() font.setBold(True) font.setWeight(75) self.lblCurrentRepeatValue.setFont(font) self.lblCurrentRepeatValue.setAlignment(QtCore.Qt.AlignCenter) self.lblCurrentRepeatValue.setObjectName("lblCurrentRepeatValue") self.gridLayout_2.addWidget(self.lblCurrentRepeatValue, 17, 0, 1, 1) self.labelReceiveBufferFull = QtWidgets.QLabel(self.groupBox) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.labelReceiveBufferFull.sizePolicy().hasHeightForWidth()) self.labelReceiveBufferFull.setSizePolicy(sizePolicy) font = QtGui.QFont() font.setBold(True) font.setWeight(75) self.labelReceiveBufferFull.setFont(font) self.labelReceiveBufferFull.setAlignment(QtCore.Qt.AlignCenter) self.labelReceiveBufferFull.setObjectName("labelReceiveBufferFull") self.gridLayout_2.addWidget(self.labelReceiveBufferFull, 8, 0, 1, 1) self.gridLayout.addWidget(self.groupBox, 23, 0, 1, 3) self.txtEditErrors = QtWidgets.QTextEdit(self.scrollAreaWidgetContents_2) self.txtEditErrors.setReadOnly(True) self.txtEditErrors.setObjectName("txtEditErrors") self.gridLayout.addWidget(self.txtEditErrors, 24, 0, 1, 4) self.cbDevice = QtWidgets.QComboBox(self.scrollAreaWidgetContents_2) self.cbDevice.setObjectName("cbDevice") self.cbDevice.addItem("") self.cbDevice.addItem("") self.gridLayout.addWidget(self.cbDevice, 0, 1, 1, 2) self.comboBoxChannel = QtWidgets.QComboBox(self.scrollAreaWidgetContents_2) self.comboBoxChannel.setObjectName("comboBoxChannel") self.gridLayout.addWidget(self.comboBoxChannel, 2, 1, 1, 2) self.comboBoxAntenna = QtWidgets.QComboBox(self.scrollAreaWidgetContents_2) self.comboBoxAntenna.setObjectName("comboBoxAntenna") self.gridLayout.addWidget(self.comboBoxAntenna, 3, 1, 1, 2) self.spinBoxPort = QtWidgets.QSpinBox(self.scrollAreaWidgetContents_2) self.spinBoxPort.setMinimum(1) self.spinBoxPort.setMaximum(65535) self.spinBoxPort.setProperty("value", 1234) self.spinBoxPort.setObjectName("spinBoxPort") self.gridLayout.addWidget(self.spinBoxPort, 5, 1, 1, 2) self.spinBoxFreqCorrection = QtWidgets.QSpinBox(self.scrollAreaWidgetContents_2) self.spinBoxFreqCorrection.setMinimum(-1000) self.spinBoxFreqCorrection.setMaximum(1000) self.spinBoxFreqCorrection.setProperty("value", 1) self.spinBoxFreqCorrection.setObjectName("spinBoxFreqCorrection") self.gridLayout.addWidget(self.spinBoxFreqCorrection, 12, 1, 1, 2) self.comboBoxDirectSampling = QtWidgets.QComboBox(self.scrollAreaWidgetContents_2) self.comboBoxDirectSampling.setObjectName("comboBoxDirectSampling") self.gridLayout.addWidget(self.comboBoxDirectSampling, 13, 1, 1, 2) self.spinbox_sniff_Noise = QtWidgets.QDoubleSpinBox(self.scrollAreaWidgetContents_2) self.spinbox_sniff_Noise.setDecimals(4) self.spinbox_sniff_Noise.setMaximum(1.0) self.spinbox_sniff_Noise.setObjectName("spinbox_sniff_Noise") self.gridLayout.addWidget(self.spinbox_sniff_Noise, 15, 1, 1, 2) self.spinbox_sniff_Center = QtWidgets.QDoubleSpinBox(self.scrollAreaWidgetContents_2) self.spinbox_sniff_Center.setDecimals(4) self.spinbox_sniff_Center.setMinimum(-3.14) self.spinbox_sniff_Center.setMaximum(3.14) self.spinbox_sniff_Center.setObjectName("spinbox_sniff_Center") self.gridLayout.addWidget(self.spinbox_sniff_Center, 16, 1, 1, 2) self.spinbox_sniff_ErrorTolerance = QtWidgets.QSpinBox(self.scrollAreaWidgetContents_2) self.spinbox_sniff_ErrorTolerance.setMaximum(999999) self.spinbox_sniff_ErrorTolerance.setProperty("value", 5) self.spinbox_sniff_ErrorTolerance.setObjectName("spinbox_sniff_ErrorTolerance") self.gridLayout.addWidget(self.spinbox_sniff_ErrorTolerance, 18, 1, 1, 2) self.combox_sniff_Modulation = QtWidgets.QComboBox(self.scrollAreaWidgetContents_2) self.combox_sniff_Modulation.setObjectName("combox_sniff_Modulation") self.combox_sniff_Modulation.addItem("") self.combox_sniff_Modulation.addItem("") self.combox_sniff_Modulation.addItem("") self.gridLayout.addWidget(self.combox_sniff_Modulation, 19, 1, 1, 2) self.comboBox_sniff_viewtype = QtWidgets.QComboBox(self.scrollAreaWidgetContents_2) self.comboBox_sniff_viewtype.setObjectName("comboBox_sniff_viewtype") self.comboBox_sniff_viewtype.addItem("") self.comboBox_sniff_viewtype.addItem("") self.comboBox_sniff_viewtype.addItem("") self.gridLayout.addWidget(self.comboBox_sniff_viewtype, 20, 1, 1, 2) self.comboBox_sniff_encoding = QtWidgets.QComboBox(self.scrollAreaWidgetContents_2) self.comboBox_sniff_encoding.setObjectName("comboBox_sniff_encoding") self.gridLayout.addWidget(self.comboBox_sniff_encoding, 21, 1, 1, 2) self.scrollArea.setWidget(self.scrollAreaWidgetContents_2) self.layoutWidget = QtWidgets.QWidget(self.splitter) self.layoutWidget.setObjectName("layoutWidget") self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.layoutWidget) self.horizontalLayout_2.setContentsMargins(0, 0, 0, 0) self.horizontalLayout_2.setObjectName("horizontalLayout_2") self.stackedWidget = QtWidgets.QStackedWidget(self.layoutWidget) self.stackedWidget.setObjectName("stackedWidget") self.page_receive = QtWidgets.QWidget() self.page_receive.setObjectName("page_receive") self.verticalLayout_2 = QtWidgets.QVBoxLayout(self.page_receive) self.verticalLayout_2.setContentsMargins(0, 0, 0, 0) self.verticalLayout_2.setObjectName("verticalLayout_2") self.graphicsViewReceive = LiveGraphicView(self.page_receive) self.graphicsViewReceive.setVerticalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOff) self.graphicsViewReceive.setHorizontalScrollBarPolicy(QtCore.Qt.ScrollBarAsNeeded) self.graphicsViewReceive.setObjectName("graphicsViewReceive") self.verticalLayout_2.addWidget(self.graphicsViewReceive) self.stackedWidget.addWidget(self.page_receive) self.page_send = QtWidgets.QWidget() self.page_send.setObjectName("page_send") self.verticalLayout_3 = QtWidgets.QVBoxLayout(self.page_send) self.verticalLayout_3.setContentsMargins(0, 0, 0, 0) self.verticalLayout_3.setObjectName("verticalLayout_3") self.graphicsViewSend = EditableGraphicView(self.page_send) self.graphicsViewSend.setMouseTracking(True) self.graphicsViewSend.setRenderHints(QtGui.QPainter.Antialiasing|QtGui.QPainter.TextAntialiasing) self.graphicsViewSend.setTransformationAnchor(QtWidgets.QGraphicsView.NoAnchor) self.graphicsViewSend.setResizeAnchor(QtWidgets.QGraphicsView.NoAnchor) self.graphicsViewSend.setObjectName("graphicsViewSend") self.verticalLayout_3.addWidget(self.graphicsViewSend) self.label_7 = QtWidgets.QLabel(self.page_send) font = QtGui.QFont() font.setItalic(True) self.label_7.setFont(font) self.label_7.setObjectName("label_7") self.verticalLayout_3.addWidget(self.label_7) self.stackedWidget.addWidget(self.page_send) self.page_continuous_send = QtWidgets.QWidget() self.page_continuous_send.setObjectName("page_continuous_send") self.verticalLayout_6 = QtWidgets.QVBoxLayout(self.page_continuous_send) self.verticalLayout_6.setContentsMargins(0, 0, 0, 0) self.verticalLayout_6.setObjectName("verticalLayout_6") self.graphicsViewContinuousSend = LiveGraphicView(self.page_continuous_send) self.graphicsViewContinuousSend.setRenderHints(QtGui.QPainter.Antialiasing|QtGui.QPainter.TextAntialiasing) self.graphicsViewContinuousSend.setObjectName("graphicsViewContinuousSend") self.verticalLayout_6.addWidget(self.graphicsViewContinuousSend) self.stackedWidget.addWidget(self.page_continuous_send) self.page_sniff = QtWidgets.QWidget() self.page_sniff.setObjectName("page_sniff") self.verticalLayout_4 = QtWidgets.QVBoxLayout(self.page_sniff) self.verticalLayout_4.setContentsMargins(0, 0, 0, 0) self.verticalLayout_4.setObjectName("verticalLayout_4") self.graphicsView_sniff_Preview = LiveGraphicView(self.page_sniff) self.graphicsView_sniff_Preview.setObjectName("graphicsView_sniff_Preview") self.verticalLayout_4.addWidget(self.graphicsView_sniff_Preview) self.txtEd_sniff_Preview = QtWidgets.QPlainTextEdit(self.page_sniff) self.txtEd_sniff_Preview.setLineWrapMode(QtWidgets.QPlainTextEdit.NoWrap) self.txtEd_sniff_Preview.setReadOnly(True) self.txtEd_sniff_Preview.setMaximumBlockCount(100) self.txtEd_sniff_Preview.setObjectName("txtEd_sniff_Preview") self.verticalLayout_4.addWidget(self.txtEd_sniff_Preview) self.btnAccept = QtWidgets.QPushButton(self.page_sniff) self.btnAccept.setAutoDefault(False) self.btnAccept.setObjectName("btnAccept") self.verticalLayout_4.addWidget(self.btnAccept) self.stackedWidget.addWidget(self.page_sniff) self.horizontalLayout_2.addWidget(self.stackedWidget) self.verticalLayout_5 = QtWidgets.QVBoxLayout() self.verticalLayout_5.setObjectName("verticalLayout_5") self.label_y_scale = QtWidgets.QLabel(self.layoutWidget) self.label_y_scale.setObjectName("label_y_scale") self.verticalLayout_5.addWidget(self.label_y_scale) self.sliderYscale = QtWidgets.QSlider(self.layoutWidget) self.sliderYscale.setMinimum(1) self.sliderYscale.setMaximum(1000) self.sliderYscale.setProperty("value", 1) self.sliderYscale.setOrientation(QtCore.Qt.Vertical) self.sliderYscale.setTickInterval(1) self.sliderYscale.setObjectName("sliderYscale") self.verticalLayout_5.addWidget(self.sliderYscale) self.horizontalLayout_2.addLayout(self.verticalLayout_5) self.verticalLayout.addWidget(self.splitter) self.retranslateUi(SendRecvDialog) self.stackedWidget.setCurrentIndex(2) QtCore.QMetaObject.connectSlotsByName(SendRecvDialog) SendRecvDialog.setTabOrder(self.cbDevice, self.lineEditDeviceArgs) SendRecvDialog.setTabOrder(self.lineEditDeviceArgs, self.lineEditIP) SendRecvDialog.setTabOrder(self.lineEditIP, self.spinBoxPort) SendRecvDialog.setTabOrder(self.spinBoxPort, self.spinBoxFreq) SendRecvDialog.setTabOrder(self.spinBoxFreq, self.spinBoxSampleRate) SendRecvDialog.setTabOrder(self.spinBoxSampleRate, self.spinBoxBandwidth) SendRecvDialog.setTabOrder(self.spinBoxBandwidth, self.btnLockBWSR) SendRecvDialog.setTabOrder(self.btnLockBWSR, self.spinBoxGain) SendRecvDialog.setTabOrder(self.spinBoxGain, self.sliderGain) SendRecvDialog.setTabOrder(self.sliderGain, self.sliderIFGain) SendRecvDialog.setTabOrder(self.sliderIFGain, self.spinBoxIFGain) SendRecvDialog.setTabOrder(self.spinBoxIFGain, self.sliderBasebandGain) SendRecvDialog.setTabOrder(self.sliderBasebandGain, self.spinBoxBasebandGain) SendRecvDialog.setTabOrder(self.spinBoxBasebandGain, self.spinBoxFreqCorrection) SendRecvDialog.setTabOrder(self.spinBoxFreqCorrection, self.comboBoxDirectSampling) SendRecvDialog.setTabOrder(self.comboBoxDirectSampling, self.spinBoxNRepeat) SendRecvDialog.setTabOrder(self.spinBoxNRepeat, self.spinbox_sniff_BitLen) SendRecvDialog.setTabOrder(self.spinbox_sniff_BitLen, self.spinbox_sniff_ErrorTolerance) SendRecvDialog.setTabOrder(self.spinbox_sniff_ErrorTolerance, self.combox_sniff_Modulation) SendRecvDialog.setTabOrder(self.combox_sniff_Modulation, self.comboBox_sniff_viewtype) SendRecvDialog.setTabOrder(self.comboBox_sniff_viewtype, self.lineEdit_sniff_OutputFile) SendRecvDialog.setTabOrder(self.lineEdit_sniff_OutputFile, self.btnStart) SendRecvDialog.setTabOrder(self.btnStart, self.btnStop) SendRecvDialog.setTabOrder(self.btnStop, self.btnSave) SendRecvDialog.setTabOrder(self.btnSave, self.btnClear) SendRecvDialog.setTabOrder(self.btnClear, self.txtEd_sniff_Preview) SendRecvDialog.setTabOrder(self.txtEd_sniff_Preview, self.sliderYscale) SendRecvDialog.setTabOrder(self.sliderYscale, self.txtEditErrors) SendRecvDialog.setTabOrder(self.txtEditErrors, self.graphicsViewSend) SendRecvDialog.setTabOrder(self.graphicsViewSend, self.graphicsViewReceive) SendRecvDialog.setTabOrder(self.graphicsViewReceive, self.btnAccept) def retranslateUi(self, SendRecvDialog): _translate = QtCore.QCoreApplication.translate SendRecvDialog.setWindowTitle(_translate("SendRecvDialog", "Record Signal")) self.label_3.setText(_translate("SendRecvDialog", "Device:")) self.labelDeviceArgs.setToolTip(_translate("SendRecvDialog", "<html><head/><body><p>If you only have one USRP connected you may leave this field empty, so your USRP gets detected automatically.</p><p>If you have multiple USRPs connected or need better control, enter a device identifier of your USRP here.</p><p>You may also enter other device arguments here.</p></body></html>")) self.labelDeviceArgs.setText(_translate("SendRecvDialog", "Device arguments:")) self.lineEditDeviceArgs.setToolTip(_translate("SendRecvDialog", "<html><head/><body><p>If you only have one USRP connected you may leave this field empty, so your USRP gets detected automatically.</p><p>If you have multiple USRPs connected or need better control, enter a device identifier of your USRP here.</p><p>You may also enter other device arguments here.</p></body></html>")) self.labelChannel.setText(_translate("SendRecvDialog", "Channel:")) self.labelAntenna.setText(_translate("SendRecvDialog", "Antenna:")) self.labelIP.setText(_translate("SendRecvDialog", "IP address:")) self.lineEditIP.setText(_translate("SendRecvDialog", "127.0.0.1")) self.labelPort.setText(_translate("SendRecvDialog", "Port number:")) self.labelFreq.setText(_translate("SendRecvDialog", "Frequency (Hz):")) self.labelSampleRate.setText(_translate("SendRecvDialog", "Sample rate (Sps):")) self.btnLockBWSR.setText(_translate("SendRecvDialog", "...")) self.labelBandwidth.setText(_translate("SendRecvDialog", "Bandwidth (Hz):")) self.labelGain.setToolTip(_translate("SendRecvDialog", "<html><head/><body><p>The gain (more exactly RF gain) is the gain applied to the RF signal. This amplifies the high frequent signal arriving at the antenna of your Software Defined Radio.</p></body></html>")) self.labelGain.setText(_translate("SendRecvDialog", "Gain:")) self.sliderGain.setToolTip(_translate("SendRecvDialog", "<html><head/><body><p>The gain (more exactly RF gain) is the gain applied to the RF signal. This amplifies the high frequent signal arriving at the antenna of your Software Defined Radio.</p></body></html>")) self.spinBoxGain.setToolTip(_translate("SendRecvDialog", "<html><head/><body><p>The gain (more exactly RF gain) is the gain applied to the RF signal. This amplifies the high frequent signal arriving at the antenna of your Software Defined Radio.</p></body></html>")) self.labelIFGain.setToolTip(_translate("SendRecvDialog", "<html><head/><body><p>The IF Gain is applied to the Intermediate Frequency signal in your Software Defined Radio. An IF signal has a lower frequency than the high frequent RF signal, so signal processing can be applied more efficiently.</p></body></html>")) self.labelIFGain.setText(_translate("SendRecvDialog", "IF Gain:")) self.sliderIFGain.setToolTip(_translate("SendRecvDialog", "<html><head/><body><p>The IF Gain is applied to the Intermediate Frequency signal in your Software Defined Radio. An IF signal has a lower frequency than the high frequent RF signal, so signal processing can be applied more efficiently.</p></body></html>")) self.spinBoxIFGain.setToolTip(_translate("SendRecvDialog", "<html><head/><body><p>The IF Gain is applied to the Intermediate Frequency signal in your Software Defined Radio. An IF signal has a lower frequency than the high frequent RF signal, so signal processing can be applied more efficiently.</p></body></html>")) self.labelBasebandGain.setToolTip(_translate("SendRecvDialog", "<html><head/><body><p>The baseband gain is applied to the baseband signal in your software defined radio. The baseband signal is at low frequency and gathered from the RF signal by <span style=\" font-weight:600;\">complex downsampling</span>.</p></body></html>")) self.labelBasebandGain.setText(_translate("SendRecvDialog", "Baseband gain:")) self.sliderBasebandGain.setToolTip(_translate("SendRecvDialog", "<html><head/><body><p>The baseband gain is applied to the baseband signal in your software defined radio. The baseband signal is at low frequency and gathered from the RF signal by <span style=\" font-weight:600;\">complex downsampling</span>.</p></body></html>")) self.spinBoxBasebandGain.setToolTip(_translate("SendRecvDialog", "<html><head/><body><p>The baseband gain is applied to the baseband signal in your software defined radio. The baseband signal is at low frequency and gathered from the RF signal by <span style=\" font-weight:600;\">complex downsampling</span>.</p></body></html>")) self.labelFreqCorrection.setToolTip(_translate("SendRecvDialog", "<html><head/><body><p>Set the frequency correction in <span style=\" font-weight:600;\">ppm</span>. If you do not know what to enter here, just leave it to one.</p></body></html>")) self.labelFreqCorrection.setText(_translate("SendRecvDialog", "Frequency correction:")) self.labelDirectSampling.setToolTip(_translate("SendRecvDialog", "<html><head/><body><p>Set the direct sampling mode. If you do not know what to choose here, just set it to disabled. The<span style=\" font-weight:600;\"> native backend</span> is recommended, when using this setting.</p></body></html>")) self.labelDirectSampling.setText(_translate("SendRecvDialog", "Direct sampling:")) self.labelNRepeat.setText(_translate("SendRecvDialog", "Repeat:")) self.spinBoxNRepeat.setSpecialValueText(_translate("SendRecvDialog", "Infinite")) self.label_sniff_Noise.setText(_translate("SendRecvDialog", "Noise:")) self.label_sniff_Center.setText(_translate("SendRecvDialog", "Center:")) self.label_sniff_BitLength.setText(_translate("SendRecvDialog", "Bit Length:")) self.label_sniff_Tolerance.setText(_translate("SendRecvDialog", "Error Tolerance:")) self.label_sniff_Modulation.setText(_translate("SendRecvDialog", "Modulation:")) self.label_sniff_viewtype.setText(_translate("SendRecvDialog", "View:")) self.label_sniff_encoding.setText(_translate("SendRecvDialog", "Encoding:")) self.label_sniff_OutputFile.setText(_translate("SendRecvDialog", "Write bitstream to file:")) self.lineEdit_sniff_OutputFile.setPlaceholderText(_translate("SendRecvDialog", "None")) self.lReceiveBufferFullText.setText(_translate("SendRecvDialog", "Receive buffer full:")) self.progressBar.setFormat(_translate("SendRecvDialog", "%v/%m")) self.lSamplesSentText.setText(_translate("SendRecvDialog", "Samples sent:")) self.lTimeText.setText(_translate("SendRecvDialog", "Time (in seconds):")) self.lSamplesCapturedText.setText(_translate("SendRecvDialog", "Samples captured:")) self.btnStart.setToolTip(_translate("SendRecvDialog", "Record signal")) self.btnStop.setToolTip(_translate("SendRecvDialog", "Stop recording")) self.btnSave.setText(_translate("SendRecvDialog", "Save...")) self.btnClear.setToolTip(_translate("SendRecvDialog", "Clear")) self.lSignalSizeText.setText(_translate("SendRecvDialog", "Signal size (in MiB):")) self.lSamplesCaptured.setText(_translate("SendRecvDialog", "0")) self.lTime.setText(_translate("SendRecvDialog", "0")) self.lSignalSize.setText(_translate("SendRecvDialog", "0")) self.lblRepeatText.setText(_translate("SendRecvDialog", "Current iteration:")) self.lblCurrentRepeatValue.setText(_translate("SendRecvDialog", "0")) self.labelReceiveBufferFull.setText(_translate("SendRecvDialog", "0%")) self.cbDevice.setItemText(0, _translate("SendRecvDialog", "USRP")) self.cbDevice.setItemText(1, _translate("SendRecvDialog", "HackRF")) self.spinBoxFreqCorrection.setToolTip(_translate("SendRecvDialog", "<html><head/><body><p>Set the frequency correction in <span style=\" font-weight:600;\">ppm</span>. If you do not know what to enter here, just leave it to one.</p></body></html>")) self.comboBoxDirectSampling.setToolTip(_translate("SendRecvDialog", "<html><head/><body><p>Set the direct sampling mode. If you do not know what to choose here, just set it to disabled. The<span style=\" font-weight:600;\"> native backend</span> is recommended, when using this setting.</p></body></html>")) self.combox_sniff_Modulation.setItemText(0, _translate("SendRecvDialog", "ASK")) self.combox_sniff_Modulation.setItemText(1, _translate("SendRecvDialog", "FSK")) self.combox_sniff_Modulation.setItemText(2, _translate("SendRecvDialog", "PSK")) self.comboBox_sniff_viewtype.setItemText(0, _translate("SendRecvDialog", "Bit")) self.comboBox_sniff_viewtype.setItemText(1, _translate("SendRecvDialog", "Hex")) self.comboBox_sniff_viewtype.setItemText(2, _translate("SendRecvDialog", "ASCII")) self.label_7.setText(_translate("SendRecvDialog", "Hint: You can edit the raw signal before sending.")) self.btnAccept.setToolTip(_translate("SendRecvDialog", "<html><head/><body><p>Accept the sniffed data and load it into <span style=\" font-weight:600;\">Analysis</span> tab.</p></body></html>")) self.btnAccept.setText(_translate("SendRecvDialog", "Accept data (Open in Analysis)")) self.label_y_scale.setText(_translate("SendRecvDialog", "Y-Scale"))