diff --git a/GroundSystem.py b/GroundSystem.py index 3688960..d77aa92 100644 --- a/GroundSystem.py +++ b/GroundSystem.py @@ -17,7 +17,7 @@ # See the License for the specific language governing permissions and # limitations under the License. # -#cFS Ground System Version 2.0.0 +# cFS Ground System Version 2.0.0 # #!/usr/bin/env python3 # @@ -28,8 +28,8 @@ from PyQt5.QtWidgets import QApplication, QMainWindow, QMessageBox -from MainWindow import Ui_MainWindow from RoutingService import RoutingService +from Ui_MainWindow import Ui_MainWindow ROOTDIR = Path(sys.argv[0]).resolve().parent @@ -38,18 +38,25 @@ # CFS Ground System: Setup and manage the main window # class GroundSystem(QMainWindow, Ui_MainWindow): + HDR_VER_1_OFFSET = 0 + HDR_VER_2_OFFSET = 4 + # # Init the class # def __init__(self): super().__init__() - self.setupUi((self)) + self.setupUi(self) self.RoutingService = None self.alert = QMessageBox() self.pushButtonStartTlm.clicked.connect(self.startTlmSystem) self.pushButtonStartCmd.clicked.connect(self.startCmdSystem) + self.cbTlmHeaderVer.currentIndexChanged.connect(self.setTlmOffset) + self.cbCmdHeaderVer.currentIndexChanged.connect(self.setCmdOffsets) + for sb in (self.sbTlmOffset, self.sbCmdOffsetPri, self.sbCmdOffsetSec): + sb.valueChanged.connect(self.saveOffsets) # Init lists self.ipAddressesList = ['All'] self.spacecraftNames = ['All'] @@ -81,14 +88,12 @@ def DisplayErrorMessage(self, message): # Start the telemetry system for the selected spacecraft def startTlmSystem(self): + # Setup the subscription (to let the telemetry + # system know the messages it will be receiving) + subscription = '--sub=GroundSystem' selectedSpacecraft = self.getSelectedSpacecraftName() - - # Setup the subscription (to let know the - # telemetry system the messages it will be receiving) - if selectedSpacecraft == 'All': - subscription = '--sub=GroundSystem' - else: - subscription = f'--sub=GroundSystem.{selectedSpacecraft}.TelemetryPackets' + if selectedSpacecraft != 'All': + subscription += f'.{selectedSpacecraft}.TelemetryPackets' # Open Telemetry System system_call = f'python3 {ROOTDIR}/Subsystems/tlmGUI/TelemetrySystem.py {subscription}' @@ -105,7 +110,6 @@ def startCmdSystem(): def startFDLSystem(self): selectedSpacecraft = self.getSelectedSpacecraftName() if selectedSpacecraft == 'All': - subscription = '' self.DisplayErrorMessage( 'Cannot open FDL manager.\nNo spacecraft selected.') else: @@ -115,6 +119,37 @@ def startFDLSystem(self): subscription ]) + def setTlmOffset(self): + selectedVer = self.cbTlmHeaderVer.currentText().strip() + if selectedVer == "Custom": + self.sbTlmOffset.setEnabled(True) + else: + self.sbTlmOffset.setEnabled(False) + if selectedVer == "1": + self.sbTlmOffset.setValue(self.HDR_VER_1_OFFSET) + elif selectedVer == "2": + self.sbTlmOffset.setValue(self.HDR_VER_2_OFFSET) + + def setCmdOffsets(self): + selectedVer = self.cbCmdHeaderVer.currentText().strip() + if selectedVer == "Custom": + self.sbCmdOffsetPri.setEnabled(True) + self.sbCmdOffsetSec.setEnabled(True) + else: + self.sbCmdOffsetPri.setEnabled(False) + self.sbCmdOffsetSec.setEnabled(False) + if selectedVer == "1": + self.sbCmdOffsetPri.setValue(self.HDR_VER_1_OFFSET) + elif selectedVer == "2": + self.sbCmdOffsetPri.setValue(self.HDR_VER_2_OFFSET) + self.sbCmdOffsetSec.setValue(self.HDR_VER_1_OFFSET) + + def saveOffsets(self): + offsets = bytes((self.sbTlmOffset.value(), self.sbCmdOffsetPri.value(), + self.sbCmdOffsetSec.value())) + with open("/tmp/OffsetData", "wb") as f: + f.write(offsets) + # Update the combo box list in gui def updateIpList(self, ip, name): self.ipAddressesList.append(ip) @@ -145,6 +180,7 @@ def initRoutingService(self): # Start the Routing Service MainWindow.initRoutingService() + MainWindow.saveOffsets() # Execute the app sys.exit(app.exec_()) diff --git a/MainWindow.ui b/MainWindow.ui index 0999d2e..3a8cdfe 100644 --- a/MainWindow.ui +++ b/MainWindow.ui @@ -9,8 +9,8 @@ 0 0 - 420 - 217 + 552 + 305 @@ -25,7 +25,7 @@ - + 22 @@ -49,21 +49,8 @@ - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - + + @@ -78,14 +65,14 @@ - Selected IP Address: + Selected IP Address - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter - + @@ -106,18 +93,137 @@ - - - - Qt::Horizontal + + + + + 0 + 0 + + + + + 169 + 0 + + + + Tlm header version + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter - + + + + + - 40 - 20 + 132 + 0 + + + + + 132 + 16777215 - + + + 1 + + + + + 2 + + + + + Custom + + + + + + + + Cmd header version + + + + + + + false + + + <html><head/><body><p>Offset (in bytes) to be <span style=" font-weight:600;">added to</span> existing offsets listed in telemetry text files</p></body></html> + + + QAbstractSpinBox::NoButtons + + + + + + + false + + + <html><head/><body><p>Offset (in bytes) to be added <span style=" font-weight:600;">after</span> the <span style=" font-weight:600;">primary</span> header in a command packet</p></body></html> + + + QAbstractSpinBox::NoButtons + + + + + + + + 1 + + + + + 2 + + + + + Custom + + + + + + + + false + + + <html><head/><body><p>Offset (in bytes) to be added <span style=" font-weight:600;">after</span> the <span style=" font-weight:600;">secondary</span> header in a command packet</p></body></html> + + + QAbstractSpinBox::NoButtons + + + + + + + Offsets + + + + + + + (Hover for info) + + diff --git a/RoutingService.py b/RoutingService.py index 47139ca..c5447ff 100644 --- a/RoutingService.py +++ b/RoutingService.py @@ -100,8 +100,7 @@ def run(self): # Handle errors except socket.error: - print( - f'Ignored socket error for attempt {socketErrorCount}') + print('Ignored socket error for attempt', socketErrorCount) socketErrorCount += 1 sleep(1) diff --git a/Subsystems/cmdGui/CHeaderParser.py b/Subsystems/cmdGui/CHeaderParser.py index 52fd4dc..25196ec 100644 --- a/Subsystems/cmdGui/CHeaderParser.py +++ b/Subsystems/cmdGui/CHeaderParser.py @@ -103,13 +103,11 @@ def getFileList(filename='CHeaderParser-hdr-paths.txt'): l = l.strip() if l and not l.startswith("#"): paths.append(l) - print(f"Using header files found in {filename}") - # Send paths back to caller function - return paths + print(f"Using header files found in {filename}") + # Send paths back to caller function + return paths except IOError: print("Couldn't find default file. Check command line arguments.") - except: - print("Unexpected error:", sys.exc_info()[0]) print("No header files found. Please make sure to provide the\n" "default file for loading headers (CHeaderParser-hdr-paths.txt)") @@ -449,7 +447,7 @@ def getFileList(filename='CHeaderParser-hdr-paths.txt'): input((f"Please enter the defined value for " f"{array_name_size[1]} (0 - 128): "))) except ValueError: - pass + pass # Ignore non-integer and try again # Add string length argument to parameter list stringLens.append(array_size) diff --git a/Subsystems/cmdGui/CommandSystem.py b/Subsystems/cmdGui/CommandSystem.py index 710d780..ec842ad 100644 --- a/Subsystems/cmdGui/CommandSystem.py +++ b/Subsystems/cmdGui/CommandSystem.py @@ -26,10 +26,13 @@ import sys from pathlib import Path -from PyQt5.QtWidgets import QApplication, QDialog +from PyQt5.QtWidgets import (QApplication, QDialog, QHeaderView, QPushButton, + QTableWidgetItem) -from CommandSystemDialog import Ui_CommandSystemDialog +from MiniCmdUtil import MiniCmdUtil +from Ui_CommandSystemDialog import Ui_CommandSystemDialog +## ../cFS/tools/cFS-GroundSystem/Subsystems/cmdGui/ ROOTDIR = Path(sys.argv[0]).resolve().parent @@ -42,24 +45,15 @@ def __init__(self): super().__init__() self.setupUi(self) self.move(800, 100) - - for n in range(21): - btn = getattr(self, f"pushButton_{n}") - btn.clicked.connect(lambda _, x=n: self.ProcessButtonGeneric(x)) - - for l in range(22): - btn = getattr(self, f"quickButton_{l+1}") - btn.clicked.connect(lambda _, x=l: self.ProcessQuickButton(x)) + self.mcu = None # # Processes 'Display Page' button # def ProcessButtonGeneric(self, idx): if cmdPageIsValid[idx]: - lePID = getattr(self, f'lineEditPktId_{idx}') - leAddr = getattr(self, f'lineEdit_{idx}') - pktId = lePID.text() - address = leAddr.text() + pktId = self.tblCmdSys.item(idx, 1).text() + address = self.tblCmdSys.item(idx, 2).text() launch_string = ( f'python3 {ROOTDIR}/{cmdClass[0]} ' f'--title=\"{cmdPageDesc[idx]}\" --pktid={pktId} ' @@ -87,10 +81,8 @@ def checkParams(idx): def ProcessQuickButton(self, idx): if cmdPageIsValid[idx] and quickIndices[idx] >= 0: qIdx = quickIndices[idx] - lePID = getattr(self, f'lineEditPktId_{idx}') - leAddr = getattr(self, f'lineEdit_{idx}') - pktId = lePID.text() - address = leAddr.text() + pktId = self.tblCmdSys.item(idx, 1).text() + address = self.tblCmdSys.item(idx, 2).text() # if requires parameters if self.checkParams(qIdx): @@ -102,15 +94,24 @@ def ProcessQuickButton(self, idx): f'--port={quickPort[qIdx]} ' f'--pktid={pktId} --endian={quickEndian[qIdx]} ' f'--cmdcode={quickCode[qIdx]} --file={quickParam[qIdx]}') + cmd_args = shlex.split(launch_string) + subprocess.Popen(cmd_args) # if doesn't require parameters else: - launch_string = ( - f'{ROOTDIR}/../cmdUtil/cmdUtil ' - f'--host=\"{address}\" --port={quickPort[qIdx]} ' - f'--pktid={pktId} --endian={quickEndian[qIdx]} ' - f'--cmdcode={quickCode[qIdx]}') - cmd_args = shlex.split(launch_string) - subprocess.Popen(cmd_args) + self.mcu = MiniCmdUtil(address, quickPort[qIdx], + quickEndian[qIdx], pktId, + quickCode[qIdx]) + sendSuccess = self.mcu.sendPacket() + print("Command sent successfully:", sendSuccess) + # launch_string = ( + # f'{ROOTDIR.parent}/cmdUtil/cmdUtil ' + # f'--host=\"{address}\" --port={quickPort[qIdx]} ' + # f'--pktid={pktId} --endian={quickEndian[qIdx]} ' + # f'--cmdcode={quickCode[qIdx]}') + + def closeEvent(self, event): + self.mcu.mm.close() + super().closeEvent(event) # @@ -128,6 +129,7 @@ def ProcessQuickButton(self, idx): # app = QApplication(sys.argv) Command = CommandSystem() + tbl = Command.tblCmdSys # # Read in the contents of the telemetry packet definition @@ -141,7 +143,7 @@ def ProcessQuickButton(self, idx): reader = csv.reader(cmdfile, skipinitialspace=True) for cmdRow in reader: try: - if cmdRow[0][0] != '#': + if not cmdRow[0].startswith('#'): cmdPageIsValid.append(True) cmdPageDesc.append(cmdRow[0]) cmdPageDefFile.append(cmdRow[1]) @@ -161,7 +163,7 @@ def ProcessQuickButton(self, idx): # # Mark the remaining values as invalid # - for j in range(i, 22): + for _ in range(i, 22): cmdPageAppid.append(0) cmdPageIsValid.append(False) @@ -176,7 +178,7 @@ def ProcessQuickButton(self, idx): with open(f'{ROOTDIR}/{quickDefFile}') as subFile: reader = csv.reader(subFile) for fileRow in reader: - if fileRow[0][0] != '#': + if not fileRow[0].startswith('#'): subsys.append(fileRow[0]) subsysFile.append(fileRow[1]) quickCmd.append(fileRow[2].strip()) @@ -190,24 +192,30 @@ def ProcessQuickButton(self, idx): # # fill the data fields on the page # - for k in range(22): - subsysBrowser = getattr(Command, f'SubsysBrowser_{k}') + for k, desc in enumerate(cmdPageDesc): if cmdPageIsValid[k]: - lineEditPktId = getattr(Command, f'lineEditPktId_{k}') - lineEditAddress = getattr(Command, f'lineEdit_{k}') - quickButton = getattr(Command, f'quickButton_{k+1}') - subsysBrowser.setText(cmdPageDesc[k]) - lineEditPktId.setText(hex(cmdPageAppid[k])) - lineEditAddress.setText(cmdPageAddress[k]) + tbl.insertRow(k) + for col, text in enumerate( + (desc, hex(cmdPageAppid[k]), cmdPageAddress[k])): + tblItem = QTableWidgetItem(text) + tbl.setItem(k, col, tblItem) + tblBtn = QPushButton("Display Page") + tblBtn.clicked.connect( + lambda _, x=k: Command.ProcessButtonGeneric(x)) + tbl.setCellWidget(k, 3, tblBtn) quickIdx = -1 try: - quickIdx = subsys.index(cmdPageDesc[k]) - quickButton.setText(quickCmd[quickIdx]) + quickIdx = subsys.index(desc) except ValueError: - pass + pass # Ignore quick button + else: + quickBtn = QPushButton(quickCmd[quickIdx]) + quickBtn.clicked.connect( + lambda _, x=k: Command.ProcessQuickButton(x)) + tbl.setCellWidget(k, 4, quickBtn) quickIndices.append(quickIdx) - else: - subsysBrowser.setText("(unused)") + tbl.horizontalHeader().setSectionResizeMode(QHeaderView.ResizeToContents) + tbl.horizontalHeader().setStretchLastSection(True) # # Display the page diff --git a/Subsystems/cmdGui/CommandSystemDialog.py b/Subsystems/cmdGui/CommandSystemDialog.py deleted file mode 100644 index 0445337..0000000 --- a/Subsystems/cmdGui/CommandSystemDialog.py +++ /dev/null @@ -1,1176 +0,0 @@ -# -*- coding: utf-8 -*- - -# Form implementation generated from reading ui file '/home/lbleier/cFS/tools/cFS-GroundSystem/Subsystems/cmdGui/CommandSystemDialog.ui' -# -# Created by: PyQt5 UI code generator 5.10.1 -# -# WARNING! All changes made in this file will be lost! - -from PyQt5 import QtCore, QtGui, QtWidgets - -class Ui_CommandSystemDialog(object): - def setupUi(self, CommandSystemDialog): - CommandSystemDialog.setObjectName("CommandSystemDialog") - CommandSystemDialog.resize(772, 1020) - self.layoutWidget_2 = QtWidgets.QWidget(CommandSystemDialog) - self.layoutWidget_2.setGeometry(QtCore.QRect(80, 20, 621, 25)) - self.layoutWidget_2.setObjectName("layoutWidget_2") - self.horizontalLayout = QtWidgets.QHBoxLayout(self.layoutWidget_2) - self.horizontalLayout.setContentsMargins(0, 0, 0, 0) - self.horizontalLayout.setObjectName("horizontalLayout") - spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout.addItem(spacerItem) - self.label = QtWidgets.QLabel(self.layoutWidget_2) - self.label.setObjectName("label") - self.horizontalLayout.addWidget(self.label) - spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout.addItem(spacerItem1) - self.layoutWidget_3 = QtWidgets.QWidget(CommandSystemDialog) - self.layoutWidget_3.setGeometry(QtCore.QRect(80, 60, 621, 33)) - self.layoutWidget_3.setObjectName("layoutWidget_3") - self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.layoutWidget_3) - self.horizontalLayout_2.setContentsMargins(0, 0, 0, 0) - self.horizontalLayout_2.setObjectName("horizontalLayout_2") - spacerItem2 = QtWidgets.QSpacerItem(90, 20, QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout_2.addItem(spacerItem2) - spacerItem3 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout_2.addItem(spacerItem3) - self.label_2 = QtWidgets.QLabel(self.layoutWidget_3) - self.label_2.setObjectName("label_2") - self.horizontalLayout_2.addWidget(self.label_2) - spacerItem4 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout_2.addItem(spacerItem4) - self.buttonBox = QtWidgets.QDialogButtonBox(self.layoutWidget_3) - self.buttonBox.setOrientation(QtCore.Qt.Vertical) - self.buttonBox.setStandardButtons(QtWidgets.QDialogButtonBox.Close) - self.buttonBox.setCenterButtons(True) - self.buttonBox.setObjectName("buttonBox") - self.horizontalLayout_2.addWidget(self.buttonBox) - self.layoutWidget = QtWidgets.QWidget(CommandSystemDialog) - self.layoutWidget.setGeometry(QtCore.QRect(70, 120, 630, 857)) - self.layoutWidget.setObjectName("layoutWidget") - self.gridLayout = QtWidgets.QGridLayout(self.layoutWidget) - self.gridLayout.setContentsMargins(0, 0, 0, 0) - self.gridLayout.setObjectName("gridLayout") - self.quickButton_3 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.quickButton_3.sizePolicy().hasHeightForWidth()) - self.quickButton_3.setSizePolicy(sizePolicy) - self.quickButton_3.setMinimumSize(QtCore.QSize(121, 0)) - self.quickButton_3.setMaximumSize(QtCore.QSize(121, 16777215)) - self.quickButton_3.setText("") - self.quickButton_3.setObjectName("quickButton_3") - self.gridLayout.addWidget(self.quickButton_3, 3, 4, 1, 1) - self.SubsysBrowser_6 = QtWidgets.QLineEdit(self.layoutWidget) - self.SubsysBrowser_6.setMinimumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_6.setMaximumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_6.setReadOnly(True) - self.SubsysBrowser_6.setObjectName("SubsysBrowser_6") - self.gridLayout.addWidget(self.SubsysBrowser_6, 7, 0, 1, 1) - self.quickButton_4 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.quickButton_4.sizePolicy().hasHeightForWidth()) - self.quickButton_4.setSizePolicy(sizePolicy) - self.quickButton_4.setMinimumSize(QtCore.QSize(121, 0)) - self.quickButton_4.setMaximumSize(QtCore.QSize(121, 16777215)) - self.quickButton_4.setText("") - self.quickButton_4.setObjectName("quickButton_4") - self.gridLayout.addWidget(self.quickButton_4, 4, 4, 1, 1) - self.SubsysBrowser_18 = QtWidgets.QLineEdit(self.layoutWidget) - self.SubsysBrowser_18.setMinimumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_18.setMaximumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_18.setReadOnly(True) - self.SubsysBrowser_18.setObjectName("SubsysBrowser_18") - self.gridLayout.addWidget(self.SubsysBrowser_18, 19, 0, 1, 1) - self.lineEditPktId_18 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEditPktId_18.sizePolicy().hasHeightForWidth()) - self.lineEditPktId_18.setSizePolicy(sizePolicy) - self.lineEditPktId_18.setMinimumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_18.setMaximumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_18.setObjectName("lineEditPktId_18") - self.gridLayout.addWidget(self.lineEditPktId_18, 19, 1, 1, 1) - self.lineEdit_18 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEdit_18.sizePolicy().hasHeightForWidth()) - self.lineEdit_18.setSizePolicy(sizePolicy) - self.lineEdit_18.setMinimumSize(QtCore.QSize(100, 31)) - self.lineEdit_18.setMaximumSize(QtCore.QSize(100, 31)) - self.lineEdit_18.setObjectName("lineEdit_18") - self.gridLayout.addWidget(self.lineEdit_18, 19, 2, 1, 1) - self.pushButton_18 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_18.sizePolicy().hasHeightForWidth()) - self.pushButton_18.setSizePolicy(sizePolicy) - self.pushButton_18.setMinimumSize(QtCore.QSize(101, 31)) - self.pushButton_18.setMaximumSize(QtCore.QSize(101, 31)) - self.pushButton_18.setFocusPolicy(QtCore.Qt.NoFocus) - self.pushButton_18.setObjectName("pushButton_18") - self.gridLayout.addWidget(self.pushButton_18, 19, 3, 1, 1) - self.quickButton_19 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.quickButton_19.sizePolicy().hasHeightForWidth()) - self.quickButton_19.setSizePolicy(sizePolicy) - self.quickButton_19.setMinimumSize(QtCore.QSize(121, 32)) - self.quickButton_19.setMaximumSize(QtCore.QSize(121, 32)) - self.quickButton_19.setText("") - self.quickButton_19.setObjectName("quickButton_19") - self.gridLayout.addWidget(self.quickButton_19, 19, 4, 1, 1) - self.SubsysBrowser_19 = QtWidgets.QLineEdit(self.layoutWidget) - self.SubsysBrowser_19.setMinimumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_19.setMaximumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_19.setReadOnly(True) - self.SubsysBrowser_19.setObjectName("SubsysBrowser_19") - self.gridLayout.addWidget(self.SubsysBrowser_19, 20, 0, 1, 1) - self.lineEditPktId_19 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEditPktId_19.sizePolicy().hasHeightForWidth()) - self.lineEditPktId_19.setSizePolicy(sizePolicy) - self.lineEditPktId_19.setMinimumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_19.setMaximumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_19.setObjectName("lineEditPktId_19") - self.gridLayout.addWidget(self.lineEditPktId_19, 20, 1, 1, 1) - self.lineEdit_19 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEdit_19.sizePolicy().hasHeightForWidth()) - self.lineEdit_19.setSizePolicy(sizePolicy) - self.lineEdit_19.setMinimumSize(QtCore.QSize(100, 31)) - self.lineEdit_19.setMaximumSize(QtCore.QSize(100, 31)) - self.lineEdit_19.setObjectName("lineEdit_19") - self.gridLayout.addWidget(self.lineEdit_19, 20, 2, 1, 1) - self.pushButton_19 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_19.sizePolicy().hasHeightForWidth()) - self.pushButton_19.setSizePolicy(sizePolicy) - self.pushButton_19.setMinimumSize(QtCore.QSize(101, 31)) - self.pushButton_19.setMaximumSize(QtCore.QSize(101, 31)) - self.pushButton_19.setFocusPolicy(QtCore.Qt.NoFocus) - self.pushButton_19.setObjectName("pushButton_19") - self.gridLayout.addWidget(self.pushButton_19, 20, 3, 1, 1) - self.SubsysBrowser_16 = QtWidgets.QLineEdit(self.layoutWidget) - self.SubsysBrowser_16.setMinimumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_16.setMaximumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_16.setReadOnly(True) - self.SubsysBrowser_16.setObjectName("SubsysBrowser_16") - self.gridLayout.addWidget(self.SubsysBrowser_16, 17, 0, 1, 1) - self.lineEditPktId_16 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEditPktId_16.sizePolicy().hasHeightForWidth()) - self.lineEditPktId_16.setSizePolicy(sizePolicy) - self.lineEditPktId_16.setMinimumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_16.setMaximumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_16.setObjectName("lineEditPktId_16") - self.gridLayout.addWidget(self.lineEditPktId_16, 17, 1, 1, 1) - self.lineEdit_16 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEdit_16.sizePolicy().hasHeightForWidth()) - self.lineEdit_16.setSizePolicy(sizePolicy) - self.lineEdit_16.setMinimumSize(QtCore.QSize(100, 31)) - self.lineEdit_16.setMaximumSize(QtCore.QSize(100, 31)) - self.lineEdit_16.setObjectName("lineEdit_16") - self.gridLayout.addWidget(self.lineEdit_16, 17, 2, 1, 1) - self.pushButton_16 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_16.sizePolicy().hasHeightForWidth()) - self.pushButton_16.setSizePolicy(sizePolicy) - self.pushButton_16.setMinimumSize(QtCore.QSize(101, 31)) - self.pushButton_16.setMaximumSize(QtCore.QSize(101, 31)) - self.pushButton_16.setFocusPolicy(QtCore.Qt.NoFocus) - self.pushButton_16.setObjectName("pushButton_16") - self.gridLayout.addWidget(self.pushButton_16, 17, 3, 1, 1) - self.quickButton_17 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.quickButton_17.sizePolicy().hasHeightForWidth()) - self.quickButton_17.setSizePolicy(sizePolicy) - self.quickButton_17.setMinimumSize(QtCore.QSize(121, 32)) - self.quickButton_17.setMaximumSize(QtCore.QSize(121, 32)) - self.quickButton_17.setText("") - self.quickButton_17.setObjectName("quickButton_17") - self.gridLayout.addWidget(self.quickButton_17, 17, 4, 1, 1) - self.quickButton_9 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.quickButton_9.sizePolicy().hasHeightForWidth()) - self.quickButton_9.setSizePolicy(sizePolicy) - self.quickButton_9.setMinimumSize(QtCore.QSize(121, 0)) - self.quickButton_9.setMaximumSize(QtCore.QSize(121, 16777215)) - self.quickButton_9.setText("") - self.quickButton_9.setObjectName("quickButton_9") - self.gridLayout.addWidget(self.quickButton_9, 9, 4, 1, 1) - self.SubsysBrowser_9 = QtWidgets.QLineEdit(self.layoutWidget) - self.SubsysBrowser_9.setMinimumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_9.setMaximumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_9.setReadOnly(True) - self.SubsysBrowser_9.setObjectName("SubsysBrowser_9") - self.gridLayout.addWidget(self.SubsysBrowser_9, 10, 0, 1, 1) - self.SubsysBrowser_3 = QtWidgets.QLineEdit(self.layoutWidget) - self.SubsysBrowser_3.setMinimumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_3.setMaximumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_3.setReadOnly(True) - self.SubsysBrowser_3.setObjectName("SubsysBrowser_3") - self.gridLayout.addWidget(self.SubsysBrowser_3, 4, 0, 1, 1) - self.pushButton_5 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_5.sizePolicy().hasHeightForWidth()) - self.pushButton_5.setSizePolicy(sizePolicy) - self.pushButton_5.setMinimumSize(QtCore.QSize(101, 31)) - self.pushButton_5.setMaximumSize(QtCore.QSize(101, 31)) - self.pushButton_5.setFocusPolicy(QtCore.Qt.NoFocus) - self.pushButton_5.setObjectName("pushButton_5") - self.gridLayout.addWidget(self.pushButton_5, 6, 3, 1, 1) - self.lineEditPktId_4 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEditPktId_4.sizePolicy().hasHeightForWidth()) - self.lineEditPktId_4.setSizePolicy(sizePolicy) - self.lineEditPktId_4.setMinimumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_4.setMaximumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_4.setObjectName("lineEditPktId_4") - self.gridLayout.addWidget(self.lineEditPktId_4, 5, 1, 1, 1) - self.label_4 = QtWidgets.QLabel(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_4.sizePolicy().hasHeightForWidth()) - self.label_4.setSizePolicy(sizePolicy) - self.label_4.setMinimumSize(QtCore.QSize(81, 31)) - self.label_4.setMaximumSize(QtCore.QSize(81, 31)) - self.label_4.setObjectName("label_4") - self.gridLayout.addWidget(self.label_4, 0, 1, 1, 1) - self.SubsysBrowser_4 = QtWidgets.QLineEdit(self.layoutWidget) - self.SubsysBrowser_4.setMinimumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_4.setMaximumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_4.setReadOnly(True) - self.SubsysBrowser_4.setObjectName("SubsysBrowser_4") - self.gridLayout.addWidget(self.SubsysBrowser_4, 5, 0, 1, 1) - self.lineEdit_5 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEdit_5.sizePolicy().hasHeightForWidth()) - self.lineEdit_5.setSizePolicy(sizePolicy) - self.lineEdit_5.setMinimumSize(QtCore.QSize(100, 31)) - self.lineEdit_5.setMaximumSize(QtCore.QSize(100, 31)) - self.lineEdit_5.setObjectName("lineEdit_5") - self.gridLayout.addWidget(self.lineEdit_5, 6, 2, 1, 1) - self.lineEdit_4 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEdit_4.sizePolicy().hasHeightForWidth()) - self.lineEdit_4.setSizePolicy(sizePolicy) - self.lineEdit_4.setMinimumSize(QtCore.QSize(100, 31)) - self.lineEdit_4.setMaximumSize(QtCore.QSize(100, 31)) - self.lineEdit_4.setObjectName("lineEdit_4") - self.gridLayout.addWidget(self.lineEdit_4, 5, 2, 1, 1) - self.pushButton_3 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_3.sizePolicy().hasHeightForWidth()) - self.pushButton_3.setSizePolicy(sizePolicy) - self.pushButton_3.setMinimumSize(QtCore.QSize(101, 31)) - self.pushButton_3.setMaximumSize(QtCore.QSize(101, 31)) - self.pushButton_3.setFocusPolicy(QtCore.Qt.NoFocus) - self.pushButton_3.setObjectName("pushButton_3") - self.gridLayout.addWidget(self.pushButton_3, 4, 3, 1, 1) - self.lineEdit_11 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEdit_11.sizePolicy().hasHeightForWidth()) - self.lineEdit_11.setSizePolicy(sizePolicy) - self.lineEdit_11.setMinimumSize(QtCore.QSize(100, 31)) - self.lineEdit_11.setMaximumSize(QtCore.QSize(100, 31)) - self.lineEdit_11.setObjectName("lineEdit_11") - self.gridLayout.addWidget(self.lineEdit_11, 12, 2, 1, 1) - self.pushButton_11 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_11.sizePolicy().hasHeightForWidth()) - self.pushButton_11.setSizePolicy(sizePolicy) - self.pushButton_11.setMinimumSize(QtCore.QSize(101, 31)) - self.pushButton_11.setMaximumSize(QtCore.QSize(101, 31)) - self.pushButton_11.setFocusPolicy(QtCore.Qt.NoFocus) - self.pushButton_11.setObjectName("pushButton_11") - self.gridLayout.addWidget(self.pushButton_11, 12, 3, 1, 1) - self.quickButton_12 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.quickButton_12.sizePolicy().hasHeightForWidth()) - self.quickButton_12.setSizePolicy(sizePolicy) - self.quickButton_12.setMinimumSize(QtCore.QSize(121, 0)) - self.quickButton_12.setMaximumSize(QtCore.QSize(121, 16777215)) - self.quickButton_12.setText("") - self.quickButton_12.setObjectName("quickButton_12") - self.gridLayout.addWidget(self.quickButton_12, 12, 4, 1, 1) - self.SubsysBrowser_12 = QtWidgets.QLineEdit(self.layoutWidget) - self.SubsysBrowser_12.setMinimumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_12.setMaximumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_12.setReadOnly(True) - self.SubsysBrowser_12.setObjectName("SubsysBrowser_12") - self.gridLayout.addWidget(self.SubsysBrowser_12, 13, 0, 1, 1) - self.quickButton_2 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.quickButton_2.sizePolicy().hasHeightForWidth()) - self.quickButton_2.setSizePolicy(sizePolicy) - self.quickButton_2.setMinimumSize(QtCore.QSize(121, 0)) - self.quickButton_2.setMaximumSize(QtCore.QSize(121, 16777215)) - self.quickButton_2.setText("") - self.quickButton_2.setObjectName("quickButton_2") - self.gridLayout.addWidget(self.quickButton_2, 2, 4, 1, 1) - self.SubsysBrowser_2 = QtWidgets.QLineEdit(self.layoutWidget) - self.SubsysBrowser_2.setMinimumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_2.setMaximumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_2.setReadOnly(True) - self.SubsysBrowser_2.setObjectName("SubsysBrowser_2") - self.gridLayout.addWidget(self.SubsysBrowser_2, 3, 0, 1, 1) - self.SubsysBrowser_0 = QtWidgets.QLineEdit(self.layoutWidget) - self.SubsysBrowser_0.setMinimumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_0.setMaximumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_0.setReadOnly(True) - self.SubsysBrowser_0.setObjectName("SubsysBrowser_0") - self.gridLayout.addWidget(self.SubsysBrowser_0, 1, 0, 1, 1) - self.pushButton_10 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_10.sizePolicy().hasHeightForWidth()) - self.pushButton_10.setSizePolicy(sizePolicy) - self.pushButton_10.setMinimumSize(QtCore.QSize(101, 31)) - self.pushButton_10.setMaximumSize(QtCore.QSize(101, 31)) - self.pushButton_10.setFocusPolicy(QtCore.Qt.NoFocus) - self.pushButton_10.setObjectName("pushButton_10") - self.gridLayout.addWidget(self.pushButton_10, 11, 3, 1, 1) - self.quickButton_11 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.quickButton_11.sizePolicy().hasHeightForWidth()) - self.quickButton_11.setSizePolicy(sizePolicy) - self.quickButton_11.setMinimumSize(QtCore.QSize(121, 0)) - self.quickButton_11.setMaximumSize(QtCore.QSize(121, 16777215)) - self.quickButton_11.setText("") - self.quickButton_11.setObjectName("quickButton_11") - self.gridLayout.addWidget(self.quickButton_11, 11, 4, 1, 1) - self.SubsysBrowser_11 = QtWidgets.QLineEdit(self.layoutWidget) - self.SubsysBrowser_11.setMinimumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_11.setMaximumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_11.setReadOnly(True) - self.SubsysBrowser_11.setObjectName("SubsysBrowser_11") - self.gridLayout.addWidget(self.SubsysBrowser_11, 12, 0, 1, 1) - self.lineEditPktId_11 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEditPktId_11.sizePolicy().hasHeightForWidth()) - self.lineEditPktId_11.setSizePolicy(sizePolicy) - self.lineEditPktId_11.setMinimumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_11.setMaximumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_11.setObjectName("lineEditPktId_11") - self.gridLayout.addWidget(self.lineEditPktId_11, 12, 1, 1, 1) - self.lineEditPktId_12 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEditPktId_12.sizePolicy().hasHeightForWidth()) - self.lineEditPktId_12.setSizePolicy(sizePolicy) - self.lineEditPktId_12.setMinimumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_12.setMaximumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_12.setObjectName("lineEditPktId_12") - self.gridLayout.addWidget(self.lineEditPktId_12, 13, 1, 1, 1) - self.lineEdit_0 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEdit_0.sizePolicy().hasHeightForWidth()) - self.lineEdit_0.setSizePolicy(sizePolicy) - self.lineEdit_0.setMinimumSize(QtCore.QSize(100, 31)) - self.lineEdit_0.setMaximumSize(QtCore.QSize(100, 31)) - self.lineEdit_0.setObjectName("lineEdit_0") - self.gridLayout.addWidget(self.lineEdit_0, 1, 2, 1, 1) - self.lineEditPktId_7 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEditPktId_7.sizePolicy().hasHeightForWidth()) - self.lineEditPktId_7.setSizePolicy(sizePolicy) - self.lineEditPktId_7.setMinimumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_7.setMaximumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_7.setObjectName("lineEditPktId_7") - self.gridLayout.addWidget(self.lineEditPktId_7, 8, 1, 1, 1) - self.lineEdit_7 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEdit_7.sizePolicy().hasHeightForWidth()) - self.lineEdit_7.setSizePolicy(sizePolicy) - self.lineEdit_7.setMinimumSize(QtCore.QSize(100, 31)) - self.lineEdit_7.setMaximumSize(QtCore.QSize(100, 31)) - self.lineEdit_7.setObjectName("lineEdit_7") - self.gridLayout.addWidget(self.lineEdit_7, 8, 2, 1, 1) - self.lineEditPktId_0 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEditPktId_0.sizePolicy().hasHeightForWidth()) - self.lineEditPktId_0.setSizePolicy(sizePolicy) - self.lineEditPktId_0.setMinimumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_0.setMaximumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_0.setObjectName("lineEditPktId_0") - self.gridLayout.addWidget(self.lineEditPktId_0, 1, 1, 1, 1) - self.pushButton_2 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_2.sizePolicy().hasHeightForWidth()) - self.pushButton_2.setSizePolicy(sizePolicy) - self.pushButton_2.setMinimumSize(QtCore.QSize(101, 31)) - self.pushButton_2.setMaximumSize(QtCore.QSize(101, 31)) - self.pushButton_2.setFocusPolicy(QtCore.Qt.NoFocus) - self.pushButton_2.setObjectName("pushButton_2") - self.gridLayout.addWidget(self.pushButton_2, 3, 3, 1, 1) - self.label_5 = QtWidgets.QLabel(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_5.sizePolicy().hasHeightForWidth()) - self.label_5.setSizePolicy(sizePolicy) - self.label_5.setMinimumSize(QtCore.QSize(81, 31)) - self.label_5.setMaximumSize(QtCore.QSize(81, 31)) - self.label_5.setObjectName("label_5") - self.gridLayout.addWidget(self.label_5, 0, 2, 1, 1) - self.pushButton_1 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_1.sizePolicy().hasHeightForWidth()) - self.pushButton_1.setSizePolicy(sizePolicy) - self.pushButton_1.setMinimumSize(QtCore.QSize(101, 31)) - self.pushButton_1.setMaximumSize(QtCore.QSize(101, 31)) - self.pushButton_1.setFocusPolicy(QtCore.Qt.NoFocus) - self.pushButton_1.setObjectName("pushButton_1") - self.gridLayout.addWidget(self.pushButton_1, 2, 3, 1, 1) - self.SubsysBrowser_1 = QtWidgets.QLineEdit(self.layoutWidget) - self.SubsysBrowser_1.setMinimumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_1.setMaximumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_1.setReadOnly(True) - self.SubsysBrowser_1.setObjectName("SubsysBrowser_1") - self.gridLayout.addWidget(self.SubsysBrowser_1, 2, 0, 1, 1) - self.pushButton_7 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_7.sizePolicy().hasHeightForWidth()) - self.pushButton_7.setSizePolicy(sizePolicy) - self.pushButton_7.setMinimumSize(QtCore.QSize(101, 31)) - self.pushButton_7.setMaximumSize(QtCore.QSize(101, 31)) - self.pushButton_7.setFocusPolicy(QtCore.Qt.NoFocus) - self.pushButton_7.setObjectName("pushButton_7") - self.gridLayout.addWidget(self.pushButton_7, 8, 3, 1, 1) - self.quickButton_8 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.quickButton_8.sizePolicy().hasHeightForWidth()) - self.quickButton_8.setSizePolicy(sizePolicy) - self.quickButton_8.setMinimumSize(QtCore.QSize(121, 0)) - self.quickButton_8.setMaximumSize(QtCore.QSize(121, 16777215)) - self.quickButton_8.setText("") - self.quickButton_8.setObjectName("quickButton_8") - self.gridLayout.addWidget(self.quickButton_8, 8, 4, 1, 1) - self.lineEditPktId_2 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEditPktId_2.sizePolicy().hasHeightForWidth()) - self.lineEditPktId_2.setSizePolicy(sizePolicy) - self.lineEditPktId_2.setMinimumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_2.setMaximumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_2.setObjectName("lineEditPktId_2") - self.gridLayout.addWidget(self.lineEditPktId_2, 3, 1, 1, 1) - self.lineEditPktId_5 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEditPktId_5.sizePolicy().hasHeightForWidth()) - self.lineEditPktId_5.setSizePolicy(sizePolicy) - self.lineEditPktId_5.setMinimumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_5.setMaximumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_5.setObjectName("lineEditPktId_5") - self.gridLayout.addWidget(self.lineEditPktId_5, 6, 1, 1, 1) - self.pushButton_6 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_6.sizePolicy().hasHeightForWidth()) - self.pushButton_6.setSizePolicy(sizePolicy) - self.pushButton_6.setMinimumSize(QtCore.QSize(101, 31)) - self.pushButton_6.setMaximumSize(QtCore.QSize(101, 31)) - self.pushButton_6.setFocusPolicy(QtCore.Qt.NoFocus) - self.pushButton_6.setObjectName("pushButton_6") - self.gridLayout.addWidget(self.pushButton_6, 7, 3, 1, 1) - self.pushButton_9 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_9.sizePolicy().hasHeightForWidth()) - self.pushButton_9.setSizePolicy(sizePolicy) - self.pushButton_9.setMinimumSize(QtCore.QSize(101, 31)) - self.pushButton_9.setMaximumSize(QtCore.QSize(101, 31)) - self.pushButton_9.setFocusPolicy(QtCore.Qt.NoFocus) - self.pushButton_9.setObjectName("pushButton_9") - self.gridLayout.addWidget(self.pushButton_9, 10, 3, 1, 1) - self.quickButton_10 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.quickButton_10.sizePolicy().hasHeightForWidth()) - self.quickButton_10.setSizePolicy(sizePolicy) - self.quickButton_10.setMinimumSize(QtCore.QSize(121, 0)) - self.quickButton_10.setMaximumSize(QtCore.QSize(121, 16777215)) - self.quickButton_10.setText("") - self.quickButton_10.setObjectName("quickButton_10") - self.gridLayout.addWidget(self.quickButton_10, 10, 4, 1, 1) - self.SubsysBrowser_15 = QtWidgets.QLineEdit(self.layoutWidget) - self.SubsysBrowser_15.setMinimumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_15.setMaximumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_15.setReadOnly(True) - self.SubsysBrowser_15.setObjectName("SubsysBrowser_15") - self.gridLayout.addWidget(self.SubsysBrowser_15, 16, 0, 1, 1) - self.lineEditPktId_15 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEditPktId_15.sizePolicy().hasHeightForWidth()) - self.lineEditPktId_15.setSizePolicy(sizePolicy) - self.lineEditPktId_15.setMinimumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_15.setMaximumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_15.setObjectName("lineEditPktId_15") - self.gridLayout.addWidget(self.lineEditPktId_15, 16, 1, 1, 1) - self.lineEdit_15 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEdit_15.sizePolicy().hasHeightForWidth()) - self.lineEdit_15.setSizePolicy(sizePolicy) - self.lineEdit_15.setMinimumSize(QtCore.QSize(100, 31)) - self.lineEdit_15.setMaximumSize(QtCore.QSize(100, 31)) - self.lineEdit_15.setObjectName("lineEdit_15") - self.gridLayout.addWidget(self.lineEdit_15, 16, 2, 1, 1) - self.pushButton_15 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_15.sizePolicy().hasHeightForWidth()) - self.pushButton_15.setSizePolicy(sizePolicy) - self.pushButton_15.setMinimumSize(QtCore.QSize(101, 31)) - self.pushButton_15.setMaximumSize(QtCore.QSize(101, 31)) - self.pushButton_15.setFocusPolicy(QtCore.Qt.NoFocus) - self.pushButton_15.setObjectName("pushButton_15") - self.gridLayout.addWidget(self.pushButton_15, 16, 3, 1, 1) - self.quickButton_16 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.quickButton_16.sizePolicy().hasHeightForWidth()) - self.quickButton_16.setSizePolicy(sizePolicy) - self.quickButton_16.setMinimumSize(QtCore.QSize(121, 32)) - self.quickButton_16.setMaximumSize(QtCore.QSize(121, 32)) - self.quickButton_16.setText("") - self.quickButton_16.setObjectName("quickButton_16") - self.gridLayout.addWidget(self.quickButton_16, 16, 4, 1, 1) - self.quickButton_6 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.quickButton_6.sizePolicy().hasHeightForWidth()) - self.quickButton_6.setSizePolicy(sizePolicy) - self.quickButton_6.setMinimumSize(QtCore.QSize(121, 0)) - self.quickButton_6.setMaximumSize(QtCore.QSize(121, 16777215)) - self.quickButton_6.setText("") - self.quickButton_6.setObjectName("quickButton_6") - self.gridLayout.addWidget(self.quickButton_6, 6, 4, 1, 1) - self.lineEdit_12 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEdit_12.sizePolicy().hasHeightForWidth()) - self.lineEdit_12.setSizePolicy(sizePolicy) - self.lineEdit_12.setMinimumSize(QtCore.QSize(100, 31)) - self.lineEdit_12.setMaximumSize(QtCore.QSize(100, 31)) - self.lineEdit_12.setObjectName("lineEdit_12") - self.gridLayout.addWidget(self.lineEdit_12, 13, 2, 1, 1) - self.pushButton_12 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_12.sizePolicy().hasHeightForWidth()) - self.pushButton_12.setSizePolicy(sizePolicy) - self.pushButton_12.setMinimumSize(QtCore.QSize(101, 31)) - self.pushButton_12.setMaximumSize(QtCore.QSize(101, 31)) - self.pushButton_12.setFocusPolicy(QtCore.Qt.NoFocus) - self.pushButton_12.setObjectName("pushButton_12") - self.gridLayout.addWidget(self.pushButton_12, 13, 3, 1, 1) - self.quickButton_13 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.quickButton_13.sizePolicy().hasHeightForWidth()) - self.quickButton_13.setSizePolicy(sizePolicy) - self.quickButton_13.setMinimumSize(QtCore.QSize(121, 32)) - self.quickButton_13.setMaximumSize(QtCore.QSize(121, 32)) - self.quickButton_13.setText("") - self.quickButton_13.setObjectName("quickButton_13") - self.gridLayout.addWidget(self.quickButton_13, 13, 4, 1, 1) - self.SubsysBrowser_13 = QtWidgets.QLineEdit(self.layoutWidget) - self.SubsysBrowser_13.setMinimumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_13.setMaximumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_13.setReadOnly(True) - self.SubsysBrowser_13.setObjectName("SubsysBrowser_13") - self.gridLayout.addWidget(self.SubsysBrowser_13, 14, 0, 1, 1) - self.SubsysBrowser_14 = QtWidgets.QLineEdit(self.layoutWidget) - self.SubsysBrowser_14.setMinimumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_14.setMaximumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_14.setReadOnly(True) - self.SubsysBrowser_14.setObjectName("SubsysBrowser_14") - self.gridLayout.addWidget(self.SubsysBrowser_14, 15, 0, 1, 1) - self.lineEditPktId_14 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEditPktId_14.sizePolicy().hasHeightForWidth()) - self.lineEditPktId_14.setSizePolicy(sizePolicy) - self.lineEditPktId_14.setMinimumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_14.setMaximumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_14.setObjectName("lineEditPktId_14") - self.gridLayout.addWidget(self.lineEditPktId_14, 15, 1, 1, 1) - self.lineEdit_14 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEdit_14.sizePolicy().hasHeightForWidth()) - self.lineEdit_14.setSizePolicy(sizePolicy) - self.lineEdit_14.setMinimumSize(QtCore.QSize(100, 31)) - self.lineEdit_14.setMaximumSize(QtCore.QSize(100, 31)) - self.lineEdit_14.setObjectName("lineEdit_14") - self.gridLayout.addWidget(self.lineEdit_14, 15, 2, 1, 1) - self.pushButton_14 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_14.sizePolicy().hasHeightForWidth()) - self.pushButton_14.setSizePolicy(sizePolicy) - self.pushButton_14.setMinimumSize(QtCore.QSize(101, 31)) - self.pushButton_14.setMaximumSize(QtCore.QSize(101, 31)) - self.pushButton_14.setFocusPolicy(QtCore.Qt.NoFocus) - self.pushButton_14.setObjectName("pushButton_14") - self.gridLayout.addWidget(self.pushButton_14, 15, 3, 1, 1) - self.quickButton_15 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.quickButton_15.sizePolicy().hasHeightForWidth()) - self.quickButton_15.setSizePolicy(sizePolicy) - self.quickButton_15.setMinimumSize(QtCore.QSize(121, 32)) - self.quickButton_15.setMaximumSize(QtCore.QSize(121, 32)) - self.quickButton_15.setText("") - self.quickButton_15.setObjectName("quickButton_15") - self.gridLayout.addWidget(self.quickButton_15, 15, 4, 1, 1) - self.SubsysBrowser_8 = QtWidgets.QLineEdit(self.layoutWidget) - self.SubsysBrowser_8.setMinimumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_8.setMaximumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_8.setReadOnly(True) - self.SubsysBrowser_8.setObjectName("SubsysBrowser_8") - self.gridLayout.addWidget(self.SubsysBrowser_8, 9, 0, 1, 1) - self.lineEditPktId_8 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEditPktId_8.sizePolicy().hasHeightForWidth()) - self.lineEditPktId_8.setSizePolicy(sizePolicy) - self.lineEditPktId_8.setMinimumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_8.setMaximumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_8.setObjectName("lineEditPktId_8") - self.gridLayout.addWidget(self.lineEditPktId_8, 9, 1, 1, 1) - self.lineEditPktId_13 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEditPktId_13.sizePolicy().hasHeightForWidth()) - self.lineEditPktId_13.setSizePolicy(sizePolicy) - self.lineEditPktId_13.setMinimumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_13.setMaximumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_13.setObjectName("lineEditPktId_13") - self.gridLayout.addWidget(self.lineEditPktId_13, 14, 1, 1, 1) - self.lineEdit_13 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEdit_13.sizePolicy().hasHeightForWidth()) - self.lineEdit_13.setSizePolicy(sizePolicy) - self.lineEdit_13.setMinimumSize(QtCore.QSize(100, 31)) - self.lineEdit_13.setMaximumSize(QtCore.QSize(100, 31)) - self.lineEdit_13.setObjectName("lineEdit_13") - self.gridLayout.addWidget(self.lineEdit_13, 14, 2, 1, 1) - self.pushButton_13 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_13.sizePolicy().hasHeightForWidth()) - self.pushButton_13.setSizePolicy(sizePolicy) - self.pushButton_13.setMinimumSize(QtCore.QSize(101, 31)) - self.pushButton_13.setMaximumSize(QtCore.QSize(101, 31)) - self.pushButton_13.setFocusPolicy(QtCore.Qt.NoFocus) - self.pushButton_13.setObjectName("pushButton_13") - self.gridLayout.addWidget(self.pushButton_13, 14, 3, 1, 1) - self.quickButton_14 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.quickButton_14.sizePolicy().hasHeightForWidth()) - self.quickButton_14.setSizePolicy(sizePolicy) - self.quickButton_14.setMinimumSize(QtCore.QSize(121, 32)) - self.quickButton_14.setMaximumSize(QtCore.QSize(121, 32)) - self.quickButton_14.setText("") - self.quickButton_14.setObjectName("quickButton_14") - self.gridLayout.addWidget(self.quickButton_14, 14, 4, 1, 1) - self.pushButton_4 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_4.sizePolicy().hasHeightForWidth()) - self.pushButton_4.setSizePolicy(sizePolicy) - self.pushButton_4.setMinimumSize(QtCore.QSize(101, 31)) - self.pushButton_4.setMaximumSize(QtCore.QSize(101, 31)) - self.pushButton_4.setFocusPolicy(QtCore.Qt.NoFocus) - self.pushButton_4.setObjectName("pushButton_4") - self.gridLayout.addWidget(self.pushButton_4, 5, 3, 1, 1) - self.lineEdit_3 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEdit_3.sizePolicy().hasHeightForWidth()) - self.lineEdit_3.setSizePolicy(sizePolicy) - self.lineEdit_3.setMinimumSize(QtCore.QSize(100, 31)) - self.lineEdit_3.setMaximumSize(QtCore.QSize(100, 31)) - self.lineEdit_3.setObjectName("lineEdit_3") - self.gridLayout.addWidget(self.lineEdit_3, 4, 2, 1, 1) - self.SubsysBrowser_7 = QtWidgets.QLineEdit(self.layoutWidget) - self.SubsysBrowser_7.setMinimumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_7.setMaximumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_7.setReadOnly(True) - self.SubsysBrowser_7.setObjectName("SubsysBrowser_7") - self.gridLayout.addWidget(self.SubsysBrowser_7, 8, 0, 1, 1) - self.pushButton_0 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_0.sizePolicy().hasHeightForWidth()) - self.pushButton_0.setSizePolicy(sizePolicy) - self.pushButton_0.setMinimumSize(QtCore.QSize(101, 31)) - self.pushButton_0.setMaximumSize(QtCore.QSize(101, 31)) - self.pushButton_0.setFocusPolicy(QtCore.Qt.NoFocus) - self.pushButton_0.setObjectName("pushButton_0") - self.gridLayout.addWidget(self.pushButton_0, 1, 3, 1, 1) - self.lineEditPktId_6 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEditPktId_6.sizePolicy().hasHeightForWidth()) - self.lineEditPktId_6.setSizePolicy(sizePolicy) - self.lineEditPktId_6.setMinimumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_6.setMaximumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_6.setObjectName("lineEditPktId_6") - self.gridLayout.addWidget(self.lineEditPktId_6, 7, 1, 1, 1) - self.SubsysBrowser_10 = QtWidgets.QLineEdit(self.layoutWidget) - self.SubsysBrowser_10.setMinimumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_10.setMaximumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_10.setReadOnly(True) - self.SubsysBrowser_10.setObjectName("SubsysBrowser_10") - self.gridLayout.addWidget(self.SubsysBrowser_10, 11, 0, 1, 1) - self.lineEditPktId_10 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEditPktId_10.sizePolicy().hasHeightForWidth()) - self.lineEditPktId_10.setSizePolicy(sizePolicy) - self.lineEditPktId_10.setMinimumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_10.setMaximumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_10.setObjectName("lineEditPktId_10") - self.gridLayout.addWidget(self.lineEditPktId_10, 11, 1, 1, 1) - self.lineEdit_10 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEdit_10.sizePolicy().hasHeightForWidth()) - self.lineEdit_10.setSizePolicy(sizePolicy) - self.lineEdit_10.setMinimumSize(QtCore.QSize(100, 31)) - self.lineEdit_10.setMaximumSize(QtCore.QSize(100, 31)) - self.lineEdit_10.setObjectName("lineEdit_10") - self.gridLayout.addWidget(self.lineEdit_10, 11, 2, 1, 1) - self.lineEdit_2 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEdit_2.sizePolicy().hasHeightForWidth()) - self.lineEdit_2.setSizePolicy(sizePolicy) - self.lineEdit_2.setMinimumSize(QtCore.QSize(100, 31)) - self.lineEdit_2.setMaximumSize(QtCore.QSize(100, 31)) - self.lineEdit_2.setObjectName("lineEdit_2") - self.gridLayout.addWidget(self.lineEdit_2, 3, 2, 1, 1) - self.SubsysBrowser_5 = QtWidgets.QLineEdit(self.layoutWidget) - self.SubsysBrowser_5.setMinimumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_5.setMaximumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_5.setReadOnly(True) - self.SubsysBrowser_5.setObjectName("SubsysBrowser_5") - self.gridLayout.addWidget(self.SubsysBrowser_5, 6, 0, 1, 1) - self.lineEditPktId_3 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEditPktId_3.sizePolicy().hasHeightForWidth()) - self.lineEditPktId_3.setSizePolicy(sizePolicy) - self.lineEditPktId_3.setMinimumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_3.setMaximumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_3.setObjectName("lineEditPktId_3") - self.gridLayout.addWidget(self.lineEditPktId_3, 4, 1, 1, 1) - self.lineEdit_1 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEdit_1.sizePolicy().hasHeightForWidth()) - self.lineEdit_1.setSizePolicy(sizePolicy) - self.lineEdit_1.setMinimumSize(QtCore.QSize(100, 31)) - self.lineEdit_1.setMaximumSize(QtCore.QSize(100, 31)) - self.lineEdit_1.setObjectName("lineEdit_1") - self.gridLayout.addWidget(self.lineEdit_1, 2, 2, 1, 1) - self.lineEdit_8 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEdit_8.sizePolicy().hasHeightForWidth()) - self.lineEdit_8.setSizePolicy(sizePolicy) - self.lineEdit_8.setMinimumSize(QtCore.QSize(100, 31)) - self.lineEdit_8.setMaximumSize(QtCore.QSize(100, 31)) - self.lineEdit_8.setObjectName("lineEdit_8") - self.gridLayout.addWidget(self.lineEdit_8, 9, 2, 1, 1) - self.pushButton_8 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_8.sizePolicy().hasHeightForWidth()) - self.pushButton_8.setSizePolicy(sizePolicy) - self.pushButton_8.setMinimumSize(QtCore.QSize(101, 31)) - self.pushButton_8.setMaximumSize(QtCore.QSize(101, 31)) - self.pushButton_8.setFocusPolicy(QtCore.Qt.NoFocus) - self.pushButton_8.setObjectName("pushButton_8") - self.gridLayout.addWidget(self.pushButton_8, 9, 3, 1, 1) - self.lineEditPktId_1 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEditPktId_1.sizePolicy().hasHeightForWidth()) - self.lineEditPktId_1.setSizePolicy(sizePolicy) - self.lineEditPktId_1.setMinimumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_1.setMaximumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_1.setObjectName("lineEditPktId_1") - self.gridLayout.addWidget(self.lineEditPktId_1, 2, 1, 1, 1) - self.lineEdit_6 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEdit_6.sizePolicy().hasHeightForWidth()) - self.lineEdit_6.setSizePolicy(sizePolicy) - self.lineEdit_6.setMinimumSize(QtCore.QSize(100, 31)) - self.lineEdit_6.setMaximumSize(QtCore.QSize(100, 31)) - self.lineEdit_6.setObjectName("lineEdit_6") - self.gridLayout.addWidget(self.lineEdit_6, 7, 2, 1, 1) - self.lineEditPktId_9 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEditPktId_9.sizePolicy().hasHeightForWidth()) - self.lineEditPktId_9.setSizePolicy(sizePolicy) - self.lineEditPktId_9.setMinimumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_9.setMaximumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_9.setObjectName("lineEditPktId_9") - self.gridLayout.addWidget(self.lineEditPktId_9, 10, 1, 1, 1) - self.lineEdit_9 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEdit_9.sizePolicy().hasHeightForWidth()) - self.lineEdit_9.setSizePolicy(sizePolicy) - self.lineEdit_9.setMinimumSize(QtCore.QSize(100, 31)) - self.lineEdit_9.setMaximumSize(QtCore.QSize(100, 31)) - self.lineEdit_9.setObjectName("lineEdit_9") - self.gridLayout.addWidget(self.lineEdit_9, 10, 2, 1, 1) - self.quickButton_7 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.quickButton_7.sizePolicy().hasHeightForWidth()) - self.quickButton_7.setSizePolicy(sizePolicy) - self.quickButton_7.setMinimumSize(QtCore.QSize(121, 0)) - self.quickButton_7.setMaximumSize(QtCore.QSize(121, 16777215)) - self.quickButton_7.setText("") - self.quickButton_7.setObjectName("quickButton_7") - self.gridLayout.addWidget(self.quickButton_7, 7, 4, 1, 1) - self.quickButton_5 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.quickButton_5.sizePolicy().hasHeightForWidth()) - self.quickButton_5.setSizePolicy(sizePolicy) - self.quickButton_5.setMinimumSize(QtCore.QSize(121, 0)) - self.quickButton_5.setMaximumSize(QtCore.QSize(121, 16777215)) - self.quickButton_5.setText("") - self.quickButton_5.setObjectName("quickButton_5") - self.gridLayout.addWidget(self.quickButton_5, 5, 4, 1, 1) - self.SubsysBrowser_17 = QtWidgets.QLineEdit(self.layoutWidget) - self.SubsysBrowser_17.setMinimumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_17.setMaximumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_17.setReadOnly(True) - self.SubsysBrowser_17.setObjectName("SubsysBrowser_17") - self.gridLayout.addWidget(self.SubsysBrowser_17, 18, 0, 1, 1) - self.lineEditPktId_17 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEditPktId_17.sizePolicy().hasHeightForWidth()) - self.lineEditPktId_17.setSizePolicy(sizePolicy) - self.lineEditPktId_17.setMinimumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_17.setMaximumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_17.setObjectName("lineEditPktId_17") - self.gridLayout.addWidget(self.lineEditPktId_17, 18, 1, 1, 1) - self.lineEdit_17 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEdit_17.sizePolicy().hasHeightForWidth()) - self.lineEdit_17.setSizePolicy(sizePolicy) - self.lineEdit_17.setMinimumSize(QtCore.QSize(100, 31)) - self.lineEdit_17.setMaximumSize(QtCore.QSize(100, 31)) - self.lineEdit_17.setObjectName("lineEdit_17") - self.gridLayout.addWidget(self.lineEdit_17, 18, 2, 1, 1) - self.pushButton_17 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_17.sizePolicy().hasHeightForWidth()) - self.pushButton_17.setSizePolicy(sizePolicy) - self.pushButton_17.setMinimumSize(QtCore.QSize(101, 31)) - self.pushButton_17.setMaximumSize(QtCore.QSize(101, 31)) - self.pushButton_17.setFocusPolicy(QtCore.Qt.NoFocus) - self.pushButton_17.setObjectName("pushButton_17") - self.gridLayout.addWidget(self.pushButton_17, 18, 3, 1, 1) - self.quickButton_18 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.quickButton_18.sizePolicy().hasHeightForWidth()) - self.quickButton_18.setSizePolicy(sizePolicy) - self.quickButton_18.setMinimumSize(QtCore.QSize(121, 32)) - self.quickButton_18.setMaximumSize(QtCore.QSize(121, 32)) - self.quickButton_18.setText("") - self.quickButton_18.setObjectName("quickButton_18") - self.gridLayout.addWidget(self.quickButton_18, 18, 4, 1, 1) - self.quickButton_20 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.quickButton_20.sizePolicy().hasHeightForWidth()) - self.quickButton_20.setSizePolicy(sizePolicy) - self.quickButton_20.setMinimumSize(QtCore.QSize(121, 32)) - self.quickButton_20.setMaximumSize(QtCore.QSize(121, 32)) - self.quickButton_20.setText("") - self.quickButton_20.setObjectName("quickButton_20") - self.gridLayout.addWidget(self.quickButton_20, 20, 4, 1, 1) - self.SubsysBrowser_20 = QtWidgets.QLineEdit(self.layoutWidget) - self.SubsysBrowser_20.setMinimumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_20.setMaximumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_20.setReadOnly(True) - self.SubsysBrowser_20.setObjectName("SubsysBrowser_20") - self.gridLayout.addWidget(self.SubsysBrowser_20, 21, 0, 1, 1) - self.lineEditPktId_20 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEditPktId_20.sizePolicy().hasHeightForWidth()) - self.lineEditPktId_20.setSizePolicy(sizePolicy) - self.lineEditPktId_20.setMinimumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_20.setMaximumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_20.setObjectName("lineEditPktId_20") - self.gridLayout.addWidget(self.lineEditPktId_20, 21, 1, 1, 1) - self.lineEdit_20 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEdit_20.sizePolicy().hasHeightForWidth()) - self.lineEdit_20.setSizePolicy(sizePolicy) - self.lineEdit_20.setMinimumSize(QtCore.QSize(100, 31)) - self.lineEdit_20.setMaximumSize(QtCore.QSize(100, 31)) - self.lineEdit_20.setObjectName("lineEdit_20") - self.gridLayout.addWidget(self.lineEdit_20, 21, 2, 1, 1) - self.pushButton_20 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_20.sizePolicy().hasHeightForWidth()) - self.pushButton_20.setSizePolicy(sizePolicy) - self.pushButton_20.setMinimumSize(QtCore.QSize(101, 31)) - self.pushButton_20.setMaximumSize(QtCore.QSize(101, 31)) - self.pushButton_20.setFocusPolicy(QtCore.Qt.NoFocus) - self.pushButton_20.setObjectName("pushButton_20") - self.gridLayout.addWidget(self.pushButton_20, 21, 3, 1, 1) - self.quickButton_21 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.quickButton_21.sizePolicy().hasHeightForWidth()) - self.quickButton_21.setSizePolicy(sizePolicy) - self.quickButton_21.setMinimumSize(QtCore.QSize(121, 32)) - self.quickButton_21.setMaximumSize(QtCore.QSize(121, 32)) - self.quickButton_21.setText("") - self.quickButton_21.setObjectName("quickButton_21") - self.gridLayout.addWidget(self.quickButton_21, 21, 4, 1, 1) - self.SubsysBrowser_21 = QtWidgets.QLineEdit(self.layoutWidget) - self.SubsysBrowser_21.setMinimumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_21.setMaximumSize(QtCore.QSize(201, 31)) - self.SubsysBrowser_21.setReadOnly(True) - self.SubsysBrowser_21.setObjectName("SubsysBrowser_21") - self.gridLayout.addWidget(self.SubsysBrowser_21, 22, 0, 1, 1) - self.lineEditPktId_21 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEditPktId_21.sizePolicy().hasHeightForWidth()) - self.lineEditPktId_21.setSizePolicy(sizePolicy) - self.lineEditPktId_21.setMinimumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_21.setMaximumSize(QtCore.QSize(81, 31)) - self.lineEditPktId_21.setObjectName("lineEditPktId_21") - self.gridLayout.addWidget(self.lineEditPktId_21, 22, 1, 1, 1) - self.lineEdit_21 = QtWidgets.QLineEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.lineEdit_21.sizePolicy().hasHeightForWidth()) - self.lineEdit_21.setSizePolicy(sizePolicy) - self.lineEdit_21.setMinimumSize(QtCore.QSize(100, 31)) - self.lineEdit_21.setMaximumSize(QtCore.QSize(100, 31)) - self.lineEdit_21.setObjectName("lineEdit_21") - self.gridLayout.addWidget(self.lineEdit_21, 22, 2, 1, 1) - self.pushButton_21 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_21.sizePolicy().hasHeightForWidth()) - self.pushButton_21.setSizePolicy(sizePolicy) - self.pushButton_21.setMinimumSize(QtCore.QSize(101, 31)) - self.pushButton_21.setMaximumSize(QtCore.QSize(101, 31)) - self.pushButton_21.setFocusPolicy(QtCore.Qt.NoFocus) - self.pushButton_21.setObjectName("pushButton_21") - self.gridLayout.addWidget(self.pushButton_21, 22, 3, 1, 1) - self.quickButton_22 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.quickButton_22.sizePolicy().hasHeightForWidth()) - self.quickButton_22.setSizePolicy(sizePolicy) - self.quickButton_22.setMinimumSize(QtCore.QSize(121, 32)) - self.quickButton_22.setMaximumSize(QtCore.QSize(121, 32)) - self.quickButton_22.setText("") - self.quickButton_22.setObjectName("quickButton_22") - self.gridLayout.addWidget(self.quickButton_22, 22, 4, 1, 1) - self.quickButton_1 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.quickButton_1.sizePolicy().hasHeightForWidth()) - self.quickButton_1.setSizePolicy(sizePolicy) - self.quickButton_1.setMinimumSize(QtCore.QSize(121, 0)) - self.quickButton_1.setMaximumSize(QtCore.QSize(121, 16777215)) - self.quickButton_1.setText("") - self.quickButton_1.setObjectName("quickButton_1") - self.gridLayout.addWidget(self.quickButton_1, 1, 4, 1, 1) - self.label_3 = QtWidgets.QLabel(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_3.sizePolicy().hasHeightForWidth()) - self.label_3.setSizePolicy(sizePolicy) - self.label_3.setMinimumSize(QtCore.QSize(201, 31)) - self.label_3.setMaximumSize(QtCore.QSize(201, 31)) - self.label_3.setObjectName("label_3") - self.gridLayout.addWidget(self.label_3, 0, 0, 1, 1) - - self.retranslateUi(CommandSystemDialog) - self.buttonBox.clicked['QAbstractButton*'].connect(CommandSystemDialog.close) - QtCore.QMetaObject.connectSlotsByName(CommandSystemDialog) - - def retranslateUi(self, CommandSystemDialog): - _translate = QtCore.QCoreApplication.translate - CommandSystemDialog.setWindowTitle(_translate("CommandSystemDialog", "Command System Main Page")) - self.label.setText(_translate("CommandSystemDialog", "cFE/CFS Subsystem Commands")) - self.label_2.setText(_translate("CommandSystemDialog", "Available Pages")) - self.pushButton_18.setText(_translate("CommandSystemDialog", "Display Page")) - self.pushButton_19.setText(_translate("CommandSystemDialog", "Display Page")) - self.pushButton_16.setText(_translate("CommandSystemDialog", "Display Page")) - self.pushButton_5.setText(_translate("CommandSystemDialog", "Display Page")) - self.label_4.setText(_translate("CommandSystemDialog", "Packet ID")) - self.pushButton_3.setText(_translate("CommandSystemDialog", "Display Page")) - self.pushButton_11.setText(_translate("CommandSystemDialog", "Display Page")) - self.pushButton_10.setText(_translate("CommandSystemDialog", "Display Page")) - self.pushButton_2.setText(_translate("CommandSystemDialog", "Display Page")) - self.label_5.setText(_translate("CommandSystemDialog", "Send To")) - self.pushButton_1.setText(_translate("CommandSystemDialog", "Display Page")) - self.pushButton_7.setText(_translate("CommandSystemDialog", "Display Page")) - self.pushButton_6.setText(_translate("CommandSystemDialog", "Display Page")) - self.pushButton_9.setText(_translate("CommandSystemDialog", "Display Page")) - self.pushButton_15.setText(_translate("CommandSystemDialog", "Display Page")) - self.pushButton_12.setText(_translate("CommandSystemDialog", "Display Page")) - self.pushButton_14.setText(_translate("CommandSystemDialog", "Display Page")) - self.pushButton_13.setText(_translate("CommandSystemDialog", "Display Page")) - self.pushButton_4.setText(_translate("CommandSystemDialog", "Display Page")) - self.pushButton_0.setText(_translate("CommandSystemDialog", "Display Page")) - self.pushButton_8.setText(_translate("CommandSystemDialog", "Display Page")) - self.pushButton_17.setText(_translate("CommandSystemDialog", "Display Page")) - self.pushButton_20.setText(_translate("CommandSystemDialog", "Display Page")) - self.pushButton_21.setText(_translate("CommandSystemDialog", "Display Page")) - self.label_3.setText(_translate("CommandSystemDialog", "Subsystem/Page")) - diff --git a/Subsystems/cmdGui/CommandSystemDialog.ui b/Subsystems/cmdGui/CommandSystemDialog.ui index f0c4e0c..74a0f3d 100644 --- a/Subsystems/cmdGui/CommandSystemDialog.ui +++ b/Subsystems/cmdGui/CommandSystemDialog.ui @@ -132,2644 +132,46 @@ - + - 70 + 30 120 - 630 - 857 + 701 + 721 - - - - - - 0 - 0 - - - - - 121 - 0 - - - - - 121 - 16777215 - - - - - - - - - - - - 201 - 31 - - - - - 201 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 121 - 0 - - - - - 121 - 16777215 - - - - - - - - - - - - 201 - 31 - - - - - 201 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 0 - 0 - - - - - 100 - 31 - - - - - 100 - 31 - - - - - - - - - 0 - 0 - - - - - 101 - 31 - - - - - 101 - 31 - - - - Qt::NoFocus - - - Display Page - - - - - - - - 0 - 0 - - - - - 121 - 32 - - - - - 121 - 32 - - - - - - - - - - - - 201 - 31 - - - - - 201 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 0 - 0 - - - - - 100 - 31 - - - - - 100 - 31 - - - - - - - - - 0 - 0 - - - - - 101 - 31 - - - - - 101 - 31 - - - - Qt::NoFocus - - - Display Page - - - - - - - - 201 - 31 - - - - - 201 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 0 - 0 - - - - - 100 - 31 - - - - - 100 - 31 - - - - - - - - - 0 - 0 - - - - - 101 - 31 - - - - - 101 - 31 - - - - Qt::NoFocus - - - Display Page - - - - - - - - 0 - 0 - - - - - 121 - 32 - - - - - 121 - 32 - - - - - - - - - - - - 0 - 0 - - - - - 121 - 0 - - - - - 121 - 16777215 - - - - - - - - - - - - 201 - 31 - - - - - 201 - 31 - - - - true - - - - - - - - 201 - 31 - - - - - 201 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 101 - 31 - - - - - 101 - 31 - - - - Qt::NoFocus - - - Display Page - - - - - - - - 0 - 0 - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 0 - 0 - - - - - 81 - 31 - - - - - 81 - 31 - - - - Packet ID - - - - - - - - 201 - 31 - - - - - 201 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 100 - 31 - - - - - 100 - 31 - - - - - - - - - 0 - 0 - - - - - 100 - 31 - - - - - 100 - 31 - - - - - - - - - 0 - 0 - - - - - 101 - 31 - - - - - 101 - 31 - - - - Qt::NoFocus - - - Display Page - - - - - - - - 0 - 0 - - - - - 100 - 31 - - - - - 100 - 31 - - - - - - - - - 0 - 0 - - - - - 101 - 31 - - - - - 101 - 31 - - - - Qt::NoFocus - - - Display Page - - - - - - - - 0 - 0 - - - - - 121 - 0 - - - - - 121 - 16777215 - - - - - - - - - - - - 201 - 31 - - - - - 201 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 121 - 0 - - - - - 121 - 16777215 - - - - - - - - - - - - 201 - 31 - - - - - 201 - 31 - - - - true - - - - - - - - 201 - 31 - - - - - 201 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 101 - 31 - - - - - 101 - 31 - - - - Qt::NoFocus - - - Display Page - - - - - - - - 0 - 0 - - - - - 121 - 0 - - - - - 121 - 16777215 - - - - - - - - - - - - 201 - 31 - - - - - 201 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 0 - 0 - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 0 - 0 - - - - - 100 - 31 - - - - - 100 - 31 - - - - - - - - - 0 - 0 - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 0 - 0 - - - - - 100 - 31 - - - - - 100 - 31 - - - - - - - - - 0 - 0 - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 0 - 0 - - - - - 101 - 31 - - - - - 101 - 31 - - - - Qt::NoFocus - - - Display Page - - - - - - - - 0 - 0 - - - - - 81 - 31 - - - - - 81 - 31 - - - - Send To - - - - - - - - 0 - 0 - - - - - 101 - 31 - - - - - 101 - 31 - - - - Qt::NoFocus - - - Display Page - - - - - - - - 201 - 31 - - - - - 201 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 101 - 31 - - - - - 101 - 31 - - - - Qt::NoFocus - - - Display Page - - - - - - - - 0 - 0 - - - - - 121 - 0 - - - - - 121 - 16777215 - - - - - - - - - - - - 0 - 0 - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 0 - 0 - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 0 - 0 - - - - - 101 - 31 - - - - - 101 - 31 - - - - Qt::NoFocus - - - Display Page - - - - - - - - 0 - 0 - - - - - 101 - 31 - - - - - 101 - 31 - - - - Qt::NoFocus - - - Display Page - - - - - - - - 0 - 0 - - - - - 121 - 0 - - - - - 121 - 16777215 - - - - - - - - - - - - 201 - 31 - - - - - 201 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 0 - 0 - - - - - 100 - 31 - - - - - 100 - 31 - - - - - - - - - 0 - 0 - - - - - 101 - 31 - - - - - 101 - 31 - - - - Qt::NoFocus - - - Display Page - - - - - - - - 0 - 0 - - - - - 121 - 32 - - - - - 121 - 32 - - - - - - - - - - - - 0 - 0 - - - - - 121 - 0 - - - - - 121 - 16777215 - - - - - - - - - - - - 0 - 0 - - - - - 100 - 31 - - - - - 100 - 31 - - - - - - - - - 0 - 0 - - - - - 101 - 31 - - - - - 101 - 31 - - - - Qt::NoFocus - - - Display Page - - - - - - - - 0 - 0 - - - - - 121 - 32 - - - - - 121 - 32 - - - - - - - - - - - - 201 - 31 - - - - - 201 - 31 - - - - true - - - - - - - - 201 - 31 - - - - - 201 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 0 - 0 - - - - - 100 - 31 - - - - - 100 - 31 - - - - - - - - - 0 - 0 - - - - - 101 - 31 - - - - - 101 - 31 - - - - Qt::NoFocus - - - Display Page - - - - - - - - 0 - 0 - - - - - 121 - 32 - - - - - 121 - 32 - - - - - - - - - - - - 201 - 31 - - - - - 201 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 0 - 0 - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 0 - 0 - - - - - 100 - 31 - - - - - 100 - 31 - - - - - - - - - 0 - 0 - - - - - 101 - 31 - - - - - 101 - 31 - - - - Qt::NoFocus - - - Display Page - - - - - - - - 0 - 0 - - - - - 121 - 32 - - - - - 121 - 32 - - - - - - - - - - - - 0 - 0 - - - - - 101 - 31 - - - - - 101 - 31 - - - - Qt::NoFocus - - - Display Page - - - - - - - - 0 - 0 - - - - - 100 - 31 - - - - - 100 - 31 - - - - - - - - - 201 - 31 - - - - - 201 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 101 - 31 - - - - - 101 - 31 - - - - Qt::NoFocus - - - Display Page - - - - - - - - 0 - 0 - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 201 - 31 - - - - - 201 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 0 - 0 - - - - - 100 - 31 - - - - - 100 - 31 - - - - - - - - - 0 - 0 - - - - - 100 - 31 - - - - - 100 - 31 - - - - - - - - - 201 - 31 - - - - - 201 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 0 - 0 - - - - - 100 - 31 - - - - - 100 - 31 - - - - - - - - - 0 - 0 - - - - - 100 - 31 - - - - - 100 - 31 - - - - - - - - - 0 - 0 - - - - - 101 - 31 - - - - - 101 - 31 - - - - Qt::NoFocus - - - Display Page - - - - - - - - 0 - 0 - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 0 - 0 - - - - - 100 - 31 - - - - - 100 - 31 - - - - - - - - - 0 - 0 - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 0 - 0 - - - - - 100 - 31 - - - - - 100 - 31 - - - - - - - - - 0 - 0 - - - - - 121 - 0 - - - - - 121 - 16777215 - - - - - - - - - - - - 0 - 0 - - - - - 121 - 0 - - - - - 121 - 16777215 - - - - - - - - - - - - 201 - 31 - - - - - 201 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 0 - 0 - - - - - 100 - 31 - - - - - 100 - 31 - - - - - - - - - 0 - 0 - - - - - 101 - 31 - - - - - 101 - 31 - - - - Qt::NoFocus - - - Display Page - - - - - - - - 0 - 0 - - - - - 121 - 32 - - - - - 121 - 32 - - - - - - - - - - - - 0 - 0 - - - - - 121 - 32 - - - - - 121 - 32 - - - - - - - - - - - - 201 - 31 - - - - - 201 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 0 - 0 - - - - - 100 - 31 - - - - - 100 - 31 - - - - - - - - - 0 - 0 - - - - - 101 - 31 - - - - - 101 - 31 - - - - Qt::NoFocus - - - Display Page - - - - - - - - 0 - 0 - - - - - 121 - 32 - - - - - 121 - 32 - - - - - - - - - - - - 201 - 31 - - - - - 201 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 0 - 0 - - - - - 100 - 31 - - - - - 100 - 31 - - - - - - - - - 0 - 0 - - - - - 101 - 31 - - - - - 101 - 31 - - - - Qt::NoFocus - - - Display Page - - - - - - - - 0 - 0 - - - - - 121 - 32 - - - - - 121 - 32 - - - - - - - - - - - - 0 - 0 - - - - - 121 - 0 - - - - - 121 - 16777215 - - - - - - - - - - - - 0 - 0 - - - - - 201 - 31 - - - - - 201 - 31 - - - - Subsystem/Page - - - - + + QAbstractItemView::NoEditTriggers + + + false + + + + Subsystem/Page + + + + + Packet ID + + + + + Send To + + + + + + + + + + + + diff --git a/Subsystems/cmdGui/GenericCommandDialog.py b/Subsystems/cmdGui/GenericCommandDialog.py deleted file mode 100644 index 0996edc..0000000 --- a/Subsystems/cmdGui/GenericCommandDialog.py +++ /dev/null @@ -1,603 +0,0 @@ -# -*- coding: utf-8 -*- - -# Form implementation generated from reading ui file '/home/lbleier/cFS/tools/cFS-GroundSystem/Subsystems/cmdGui/GenericCommandDialog.ui' -# -# Created by: PyQt5 UI code generator 5.10.1 -# -# WARNING! All changes made in this file will be lost! - -from PyQt5 import QtCore, QtGui, QtWidgets - -class Ui_GenericCommandDialog(object): - def setupUi(self, GenericCommandDialog): - GenericCommandDialog.setObjectName("GenericCommandDialog") - GenericCommandDialog.resize(549, 1058) - self.verticalLayout_6 = QtWidgets.QVBoxLayout(GenericCommandDialog) - self.verticalLayout_6.setObjectName("verticalLayout_6") - self.verticalLayout_4 = QtWidgets.QVBoxLayout() - self.verticalLayout_4.setObjectName("verticalLayout_4") - self.horizontalLayout = QtWidgets.QHBoxLayout() - self.horizontalLayout.setObjectName("horizontalLayout") - self.verticalLayout = QtWidgets.QVBoxLayout() - self.verticalLayout.setObjectName("verticalLayout") - self.subSystemCommandPageLabel = QtWidgets.QLabel(GenericCommandDialog) - self.subSystemCommandPageLabel.setAlignment(QtCore.Qt.AlignCenter) - self.subSystemCommandPageLabel.setObjectName("subSystemCommandPageLabel") - self.verticalLayout.addWidget(self.subSystemCommandPageLabel) - self.subSystemLineEdit = QtWidgets.QLineEdit(GenericCommandDialog) - self.subSystemLineEdit.setMinimumSize(QtCore.QSize(159, 31)) - self.subSystemLineEdit.setMaximumSize(QtCore.QSize(300, 31)) - self.subSystemLineEdit.setObjectName("subSystemLineEdit") - self.verticalLayout.addWidget(self.subSystemLineEdit) - self.horizontalLayout.addLayout(self.verticalLayout) - self.verticalLayout_2 = QtWidgets.QVBoxLayout() - self.verticalLayout_2.setObjectName("verticalLayout_2") - self.packetIdLabel = QtWidgets.QLabel(GenericCommandDialog) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.packetIdLabel.sizePolicy().hasHeightForWidth()) - self.packetIdLabel.setSizePolicy(sizePolicy) - self.packetIdLabel.setMinimumSize(QtCore.QSize(0, 13)) - self.packetIdLabel.setMaximumSize(QtCore.QSize(16777193, 13)) - self.packetIdLabel.setObjectName("packetIdLabel") - self.verticalLayout_2.addWidget(self.packetIdLabel) - self.packetId = QtWidgets.QLCDNumber(GenericCommandDialog) - self.packetId.setObjectName("packetId") - self.verticalLayout_2.addWidget(self.packetId) - self.horizontalLayout.addLayout(self.verticalLayout_2) - self.verticalLayout_3 = QtWidgets.QVBoxLayout() - self.verticalLayout_3.setObjectName("verticalLayout_3") - self.label_5 = QtWidgets.QLabel(GenericCommandDialog) - self.label_5.setAlignment(QtCore.Qt.AlignCenter) - self.label_5.setObjectName("label_5") - self.verticalLayout_3.addWidget(self.label_5) - self.commandAddressLineEdit = QtWidgets.QLineEdit(GenericCommandDialog) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.commandAddressLineEdit.sizePolicy().hasHeightForWidth()) - self.commandAddressLineEdit.setSizePolicy(sizePolicy) - self.commandAddressLineEdit.setMinimumSize(QtCore.QSize(135, 31)) - self.commandAddressLineEdit.setMaximumSize(QtCore.QSize(135, 31)) - self.commandAddressLineEdit.setObjectName("commandAddressLineEdit") - self.verticalLayout_3.addWidget(self.commandAddressLineEdit) - self.horizontalLayout.addLayout(self.verticalLayout_3) - spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout.addItem(spacerItem) - self.buttonBox = QtWidgets.QDialogButtonBox(GenericCommandDialog) - self.buttonBox.setOrientation(QtCore.Qt.Horizontal) - self.buttonBox.setStandardButtons(QtWidgets.QDialogButtonBox.Close) - self.buttonBox.setObjectName("buttonBox") - self.horizontalLayout.addWidget(self.buttonBox) - self.verticalLayout_4.addLayout(self.horizontalLayout) - self.label = QtWidgets.QLabel(GenericCommandDialog) - self.label.setAlignment(QtCore.Qt.AlignCenter) - self.label.setObjectName("label") - self.verticalLayout_4.addWidget(self.label) - self.verticalLayout_6.addLayout(self.verticalLayout_4) - self.scrollArea = QtWidgets.QScrollArea(GenericCommandDialog) - self.scrollArea.setVerticalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOn) - self.scrollArea.setWidgetResizable(True) - self.scrollArea.setObjectName("scrollArea") - self.scrollAreaWidgetContents = QtWidgets.QWidget() - self.scrollAreaWidgetContents.setGeometry(QtCore.QRect(0, 0, 515, 1000)) - self.scrollAreaWidgetContents.setMinimumSize(QtCore.QSize(0, 1000)) - self.scrollAreaWidgetContents.setObjectName("scrollAreaWidgetContents") - self.verticalLayout_5 = QtWidgets.QVBoxLayout(self.scrollAreaWidgetContents) - self.verticalLayout_5.setObjectName("verticalLayout_5") - self.horizontalLayout_2 = QtWidgets.QHBoxLayout() - self.horizontalLayout_2.setObjectName("horizontalLayout_2") - self.itemLabelTextBrowser_1 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemLabelTextBrowser_1.setMinimumSize(QtCore.QSize(391, 31)) - self.itemLabelTextBrowser_1.setMaximumSize(QtCore.QSize(1234, 31)) - self.itemLabelTextBrowser_1.setReadOnly(True) - self.itemLabelTextBrowser_1.setObjectName("itemLabelTextBrowser_1") - self.horizontalLayout_2.addWidget(self.itemLabelTextBrowser_1) - self.SendButton_1 = QtWidgets.QPushButton(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SendButton_1.sizePolicy().hasHeightForWidth()) - self.SendButton_1.setSizePolicy(sizePolicy) - self.SendButton_1.setMinimumSize(QtCore.QSize(73, 32)) - self.SendButton_1.setMaximumSize(QtCore.QSize(73, 32)) - self.SendButton_1.setObjectName("SendButton_1") - self.horizontalLayout_2.addWidget(self.SendButton_1) - self.verticalLayout_5.addLayout(self.horizontalLayout_2) - self.horizontalLayout_3 = QtWidgets.QHBoxLayout() - self.horizontalLayout_3.setObjectName("horizontalLayout_3") - self.itemLabelTextBrowser_2 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemLabelTextBrowser_2.setMinimumSize(QtCore.QSize(391, 31)) - self.itemLabelTextBrowser_2.setMaximumSize(QtCore.QSize(1234, 31)) - self.itemLabelTextBrowser_2.setReadOnly(True) - self.itemLabelTextBrowser_2.setObjectName("itemLabelTextBrowser_2") - self.horizontalLayout_3.addWidget(self.itemLabelTextBrowser_2) - self.SendButton_2 = QtWidgets.QPushButton(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SendButton_2.sizePolicy().hasHeightForWidth()) - self.SendButton_2.setSizePolicy(sizePolicy) - self.SendButton_2.setMinimumSize(QtCore.QSize(73, 32)) - self.SendButton_2.setMaximumSize(QtCore.QSize(73, 32)) - self.SendButton_2.setObjectName("SendButton_2") - self.horizontalLayout_3.addWidget(self.SendButton_2) - self.verticalLayout_5.addLayout(self.horizontalLayout_3) - self.horizontalLayout_4 = QtWidgets.QHBoxLayout() - self.horizontalLayout_4.setObjectName("horizontalLayout_4") - self.itemLabelTextBrowser_3 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemLabelTextBrowser_3.setMinimumSize(QtCore.QSize(391, 31)) - self.itemLabelTextBrowser_3.setMaximumSize(QtCore.QSize(1234, 31)) - self.itemLabelTextBrowser_3.setReadOnly(True) - self.itemLabelTextBrowser_3.setObjectName("itemLabelTextBrowser_3") - self.horizontalLayout_4.addWidget(self.itemLabelTextBrowser_3) - self.SendButton_3 = QtWidgets.QPushButton(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SendButton_3.sizePolicy().hasHeightForWidth()) - self.SendButton_3.setSizePolicy(sizePolicy) - self.SendButton_3.setMinimumSize(QtCore.QSize(73, 32)) - self.SendButton_3.setMaximumSize(QtCore.QSize(73, 32)) - self.SendButton_3.setObjectName("SendButton_3") - self.horizontalLayout_4.addWidget(self.SendButton_3) - self.verticalLayout_5.addLayout(self.horizontalLayout_4) - self.horizontalLayout_5 = QtWidgets.QHBoxLayout() - self.horizontalLayout_5.setObjectName("horizontalLayout_5") - self.itemLabelTextBrowser_4 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemLabelTextBrowser_4.setMinimumSize(QtCore.QSize(391, 31)) - self.itemLabelTextBrowser_4.setMaximumSize(QtCore.QSize(1234, 31)) - self.itemLabelTextBrowser_4.setReadOnly(True) - self.itemLabelTextBrowser_4.setObjectName("itemLabelTextBrowser_4") - self.horizontalLayout_5.addWidget(self.itemLabelTextBrowser_4) - self.SendButton_4 = QtWidgets.QPushButton(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SendButton_4.sizePolicy().hasHeightForWidth()) - self.SendButton_4.setSizePolicy(sizePolicy) - self.SendButton_4.setMinimumSize(QtCore.QSize(73, 32)) - self.SendButton_4.setMaximumSize(QtCore.QSize(73, 32)) - self.SendButton_4.setObjectName("SendButton_4") - self.horizontalLayout_5.addWidget(self.SendButton_4) - self.verticalLayout_5.addLayout(self.horizontalLayout_5) - self.horizontalLayout_6 = QtWidgets.QHBoxLayout() - self.horizontalLayout_6.setObjectName("horizontalLayout_6") - self.itemLabelTextBrowser_5 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemLabelTextBrowser_5.setMinimumSize(QtCore.QSize(391, 31)) - self.itemLabelTextBrowser_5.setMaximumSize(QtCore.QSize(1234, 31)) - self.itemLabelTextBrowser_5.setReadOnly(True) - self.itemLabelTextBrowser_5.setObjectName("itemLabelTextBrowser_5") - self.horizontalLayout_6.addWidget(self.itemLabelTextBrowser_5) - self.SendButton_5 = QtWidgets.QPushButton(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SendButton_5.sizePolicy().hasHeightForWidth()) - self.SendButton_5.setSizePolicy(sizePolicy) - self.SendButton_5.setMinimumSize(QtCore.QSize(73, 32)) - self.SendButton_5.setMaximumSize(QtCore.QSize(73, 32)) - self.SendButton_5.setObjectName("SendButton_5") - self.horizontalLayout_6.addWidget(self.SendButton_5) - self.verticalLayout_5.addLayout(self.horizontalLayout_6) - self.horizontalLayout_7 = QtWidgets.QHBoxLayout() - self.horizontalLayout_7.setObjectName("horizontalLayout_7") - self.itemLabelTextBrowser_6 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemLabelTextBrowser_6.setMinimumSize(QtCore.QSize(391, 31)) - self.itemLabelTextBrowser_6.setMaximumSize(QtCore.QSize(1234, 31)) - self.itemLabelTextBrowser_6.setReadOnly(True) - self.itemLabelTextBrowser_6.setObjectName("itemLabelTextBrowser_6") - self.horizontalLayout_7.addWidget(self.itemLabelTextBrowser_6) - self.SendButton_6 = QtWidgets.QPushButton(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SendButton_6.sizePolicy().hasHeightForWidth()) - self.SendButton_6.setSizePolicy(sizePolicy) - self.SendButton_6.setMinimumSize(QtCore.QSize(73, 32)) - self.SendButton_6.setMaximumSize(QtCore.QSize(73, 32)) - self.SendButton_6.setObjectName("SendButton_6") - self.horizontalLayout_7.addWidget(self.SendButton_6) - self.verticalLayout_5.addLayout(self.horizontalLayout_7) - self.horizontalLayout_8 = QtWidgets.QHBoxLayout() - self.horizontalLayout_8.setObjectName("horizontalLayout_8") - self.itemLabelTextBrowser_7 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemLabelTextBrowser_7.setMinimumSize(QtCore.QSize(391, 31)) - self.itemLabelTextBrowser_7.setMaximumSize(QtCore.QSize(1234, 31)) - self.itemLabelTextBrowser_7.setReadOnly(True) - self.itemLabelTextBrowser_7.setObjectName("itemLabelTextBrowser_7") - self.horizontalLayout_8.addWidget(self.itemLabelTextBrowser_7) - self.SendButton_7 = QtWidgets.QPushButton(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SendButton_7.sizePolicy().hasHeightForWidth()) - self.SendButton_7.setSizePolicy(sizePolicy) - self.SendButton_7.setMinimumSize(QtCore.QSize(73, 32)) - self.SendButton_7.setMaximumSize(QtCore.QSize(73, 32)) - self.SendButton_7.setObjectName("SendButton_7") - self.horizontalLayout_8.addWidget(self.SendButton_7) - self.verticalLayout_5.addLayout(self.horizontalLayout_8) - self.horizontalLayout_9 = QtWidgets.QHBoxLayout() - self.horizontalLayout_9.setObjectName("horizontalLayout_9") - self.itemLabelTextBrowser_8 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemLabelTextBrowser_8.setMinimumSize(QtCore.QSize(391, 31)) - self.itemLabelTextBrowser_8.setMaximumSize(QtCore.QSize(1234, 31)) - self.itemLabelTextBrowser_8.setReadOnly(True) - self.itemLabelTextBrowser_8.setObjectName("itemLabelTextBrowser_8") - self.horizontalLayout_9.addWidget(self.itemLabelTextBrowser_8) - self.SendButton_8 = QtWidgets.QPushButton(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SendButton_8.sizePolicy().hasHeightForWidth()) - self.SendButton_8.setSizePolicy(sizePolicy) - self.SendButton_8.setMinimumSize(QtCore.QSize(73, 32)) - self.SendButton_8.setMaximumSize(QtCore.QSize(73, 32)) - self.SendButton_8.setObjectName("SendButton_8") - self.horizontalLayout_9.addWidget(self.SendButton_8) - self.verticalLayout_5.addLayout(self.horizontalLayout_9) - self.horizontalLayout_10 = QtWidgets.QHBoxLayout() - self.horizontalLayout_10.setObjectName("horizontalLayout_10") - self.itemLabelTextBrowser_9 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemLabelTextBrowser_9.setMinimumSize(QtCore.QSize(391, 31)) - self.itemLabelTextBrowser_9.setMaximumSize(QtCore.QSize(1234, 31)) - self.itemLabelTextBrowser_9.setReadOnly(True) - self.itemLabelTextBrowser_9.setObjectName("itemLabelTextBrowser_9") - self.horizontalLayout_10.addWidget(self.itemLabelTextBrowser_9) - self.SendButton_9 = QtWidgets.QPushButton(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SendButton_9.sizePolicy().hasHeightForWidth()) - self.SendButton_9.setSizePolicy(sizePolicy) - self.SendButton_9.setMinimumSize(QtCore.QSize(73, 32)) - self.SendButton_9.setMaximumSize(QtCore.QSize(73, 32)) - self.SendButton_9.setObjectName("SendButton_9") - self.horizontalLayout_10.addWidget(self.SendButton_9) - self.verticalLayout_5.addLayout(self.horizontalLayout_10) - self.horizontalLayout_11 = QtWidgets.QHBoxLayout() - self.horizontalLayout_11.setObjectName("horizontalLayout_11") - self.itemLabelTextBrowser_10 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemLabelTextBrowser_10.setMinimumSize(QtCore.QSize(391, 31)) - self.itemLabelTextBrowser_10.setMaximumSize(QtCore.QSize(1234, 31)) - self.itemLabelTextBrowser_10.setReadOnly(True) - self.itemLabelTextBrowser_10.setObjectName("itemLabelTextBrowser_10") - self.horizontalLayout_11.addWidget(self.itemLabelTextBrowser_10) - self.SendButton_10 = QtWidgets.QPushButton(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SendButton_10.sizePolicy().hasHeightForWidth()) - self.SendButton_10.setSizePolicy(sizePolicy) - self.SendButton_10.setMinimumSize(QtCore.QSize(73, 32)) - self.SendButton_10.setMaximumSize(QtCore.QSize(73, 32)) - self.SendButton_10.setObjectName("SendButton_10") - self.horizontalLayout_11.addWidget(self.SendButton_10) - self.verticalLayout_5.addLayout(self.horizontalLayout_11) - self.horizontalLayout_12 = QtWidgets.QHBoxLayout() - self.horizontalLayout_12.setObjectName("horizontalLayout_12") - self.itemLabelTextBrowser_11 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemLabelTextBrowser_11.setMinimumSize(QtCore.QSize(391, 31)) - self.itemLabelTextBrowser_11.setMaximumSize(QtCore.QSize(1234, 31)) - self.itemLabelTextBrowser_11.setReadOnly(True) - self.itemLabelTextBrowser_11.setObjectName("itemLabelTextBrowser_11") - self.horizontalLayout_12.addWidget(self.itemLabelTextBrowser_11) - self.SendButton_11 = QtWidgets.QPushButton(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SendButton_11.sizePolicy().hasHeightForWidth()) - self.SendButton_11.setSizePolicy(sizePolicy) - self.SendButton_11.setMinimumSize(QtCore.QSize(73, 32)) - self.SendButton_11.setMaximumSize(QtCore.QSize(73, 32)) - self.SendButton_11.setObjectName("SendButton_11") - self.horizontalLayout_12.addWidget(self.SendButton_11) - self.verticalLayout_5.addLayout(self.horizontalLayout_12) - self.horizontalLayout_13 = QtWidgets.QHBoxLayout() - self.horizontalLayout_13.setObjectName("horizontalLayout_13") - self.itemLabelTextBrowser_12 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemLabelTextBrowser_12.setMinimumSize(QtCore.QSize(391, 31)) - self.itemLabelTextBrowser_12.setMaximumSize(QtCore.QSize(1234, 31)) - self.itemLabelTextBrowser_12.setReadOnly(True) - self.itemLabelTextBrowser_12.setObjectName("itemLabelTextBrowser_12") - self.horizontalLayout_13.addWidget(self.itemLabelTextBrowser_12) - self.SendButton_12 = QtWidgets.QPushButton(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SendButton_12.sizePolicy().hasHeightForWidth()) - self.SendButton_12.setSizePolicy(sizePolicy) - self.SendButton_12.setMinimumSize(QtCore.QSize(73, 32)) - self.SendButton_12.setMaximumSize(QtCore.QSize(73, 32)) - self.SendButton_12.setObjectName("SendButton_12") - self.horizontalLayout_13.addWidget(self.SendButton_12) - self.verticalLayout_5.addLayout(self.horizontalLayout_13) - self.horizontalLayout_14 = QtWidgets.QHBoxLayout() - self.horizontalLayout_14.setObjectName("horizontalLayout_14") - self.itemLabelTextBrowser_13 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemLabelTextBrowser_13.setMinimumSize(QtCore.QSize(391, 31)) - self.itemLabelTextBrowser_13.setMaximumSize(QtCore.QSize(1234, 31)) - self.itemLabelTextBrowser_13.setReadOnly(True) - self.itemLabelTextBrowser_13.setObjectName("itemLabelTextBrowser_13") - self.horizontalLayout_14.addWidget(self.itemLabelTextBrowser_13) - self.SendButton_13 = QtWidgets.QPushButton(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SendButton_13.sizePolicy().hasHeightForWidth()) - self.SendButton_13.setSizePolicy(sizePolicy) - self.SendButton_13.setMinimumSize(QtCore.QSize(73, 32)) - self.SendButton_13.setMaximumSize(QtCore.QSize(73, 32)) - self.SendButton_13.setObjectName("SendButton_13") - self.horizontalLayout_14.addWidget(self.SendButton_13) - self.verticalLayout_5.addLayout(self.horizontalLayout_14) - self.horizontalLayout_15 = QtWidgets.QHBoxLayout() - self.horizontalLayout_15.setObjectName("horizontalLayout_15") - self.itemLabelTextBrowser_14 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemLabelTextBrowser_14.setMinimumSize(QtCore.QSize(391, 31)) - self.itemLabelTextBrowser_14.setMaximumSize(QtCore.QSize(1234, 31)) - self.itemLabelTextBrowser_14.setReadOnly(True) - self.itemLabelTextBrowser_14.setObjectName("itemLabelTextBrowser_14") - self.horizontalLayout_15.addWidget(self.itemLabelTextBrowser_14) - self.SendButton_14 = QtWidgets.QPushButton(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SendButton_14.sizePolicy().hasHeightForWidth()) - self.SendButton_14.setSizePolicy(sizePolicy) - self.SendButton_14.setMinimumSize(QtCore.QSize(73, 32)) - self.SendButton_14.setMaximumSize(QtCore.QSize(73, 32)) - self.SendButton_14.setObjectName("SendButton_14") - self.horizontalLayout_15.addWidget(self.SendButton_14) - self.verticalLayout_5.addLayout(self.horizontalLayout_15) - self.horizontalLayout_16 = QtWidgets.QHBoxLayout() - self.horizontalLayout_16.setObjectName("horizontalLayout_16") - self.itemLabelTextBrowser_15 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemLabelTextBrowser_15.setMinimumSize(QtCore.QSize(391, 31)) - self.itemLabelTextBrowser_15.setMaximumSize(QtCore.QSize(1234, 31)) - self.itemLabelTextBrowser_15.setReadOnly(True) - self.itemLabelTextBrowser_15.setObjectName("itemLabelTextBrowser_15") - self.horizontalLayout_16.addWidget(self.itemLabelTextBrowser_15) - self.SendButton_15 = QtWidgets.QPushButton(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SendButton_15.sizePolicy().hasHeightForWidth()) - self.SendButton_15.setSizePolicy(sizePolicy) - self.SendButton_15.setMinimumSize(QtCore.QSize(73, 32)) - self.SendButton_15.setMaximumSize(QtCore.QSize(73, 32)) - self.SendButton_15.setObjectName("SendButton_15") - self.horizontalLayout_16.addWidget(self.SendButton_15) - self.verticalLayout_5.addLayout(self.horizontalLayout_16) - self.horizontalLayout_17 = QtWidgets.QHBoxLayout() - self.horizontalLayout_17.setObjectName("horizontalLayout_17") - self.itemLabelTextBrowser_16 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemLabelTextBrowser_16.setMinimumSize(QtCore.QSize(391, 31)) - self.itemLabelTextBrowser_16.setMaximumSize(QtCore.QSize(1234, 31)) - self.itemLabelTextBrowser_16.setReadOnly(True) - self.itemLabelTextBrowser_16.setObjectName("itemLabelTextBrowser_16") - self.horizontalLayout_17.addWidget(self.itemLabelTextBrowser_16) - self.SendButton_16 = QtWidgets.QPushButton(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SendButton_16.sizePolicy().hasHeightForWidth()) - self.SendButton_16.setSizePolicy(sizePolicy) - self.SendButton_16.setMinimumSize(QtCore.QSize(73, 32)) - self.SendButton_16.setMaximumSize(QtCore.QSize(73, 32)) - self.SendButton_16.setObjectName("SendButton_16") - self.horizontalLayout_17.addWidget(self.SendButton_16) - self.verticalLayout_5.addLayout(self.horizontalLayout_17) - self.horizontalLayout_18 = QtWidgets.QHBoxLayout() - self.horizontalLayout_18.setObjectName("horizontalLayout_18") - self.itemLabelTextBrowser_17 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemLabelTextBrowser_17.setMinimumSize(QtCore.QSize(391, 31)) - self.itemLabelTextBrowser_17.setMaximumSize(QtCore.QSize(1234, 31)) - self.itemLabelTextBrowser_17.setReadOnly(True) - self.itemLabelTextBrowser_17.setObjectName("itemLabelTextBrowser_17") - self.horizontalLayout_18.addWidget(self.itemLabelTextBrowser_17) - self.SendButton_17 = QtWidgets.QPushButton(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SendButton_17.sizePolicy().hasHeightForWidth()) - self.SendButton_17.setSizePolicy(sizePolicy) - self.SendButton_17.setMinimumSize(QtCore.QSize(73, 32)) - self.SendButton_17.setMaximumSize(QtCore.QSize(73, 32)) - self.SendButton_17.setObjectName("SendButton_17") - self.horizontalLayout_18.addWidget(self.SendButton_17) - self.verticalLayout_5.addLayout(self.horizontalLayout_18) - self.horizontalLayout_19 = QtWidgets.QHBoxLayout() - self.horizontalLayout_19.setObjectName("horizontalLayout_19") - self.itemLabelTextBrowser_18 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemLabelTextBrowser_18.setMinimumSize(QtCore.QSize(391, 31)) - self.itemLabelTextBrowser_18.setMaximumSize(QtCore.QSize(1234, 31)) - self.itemLabelTextBrowser_18.setReadOnly(True) - self.itemLabelTextBrowser_18.setObjectName("itemLabelTextBrowser_18") - self.horizontalLayout_19.addWidget(self.itemLabelTextBrowser_18) - self.SendButton_18 = QtWidgets.QPushButton(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SendButton_18.sizePolicy().hasHeightForWidth()) - self.SendButton_18.setSizePolicy(sizePolicy) - self.SendButton_18.setMinimumSize(QtCore.QSize(73, 32)) - self.SendButton_18.setMaximumSize(QtCore.QSize(73, 32)) - self.SendButton_18.setObjectName("SendButton_18") - self.horizontalLayout_19.addWidget(self.SendButton_18) - self.verticalLayout_5.addLayout(self.horizontalLayout_19) - self.horizontalLayout_20 = QtWidgets.QHBoxLayout() - self.horizontalLayout_20.setObjectName("horizontalLayout_20") - self.itemLabelTextBrowser_19 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemLabelTextBrowser_19.setMinimumSize(QtCore.QSize(391, 31)) - self.itemLabelTextBrowser_19.setMaximumSize(QtCore.QSize(1234, 31)) - self.itemLabelTextBrowser_19.setReadOnly(True) - self.itemLabelTextBrowser_19.setObjectName("itemLabelTextBrowser_19") - self.horizontalLayout_20.addWidget(self.itemLabelTextBrowser_19) - self.SendButton_19 = QtWidgets.QPushButton(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SendButton_19.sizePolicy().hasHeightForWidth()) - self.SendButton_19.setSizePolicy(sizePolicy) - self.SendButton_19.setMinimumSize(QtCore.QSize(73, 32)) - self.SendButton_19.setMaximumSize(QtCore.QSize(73, 32)) - self.SendButton_19.setObjectName("SendButton_19") - self.horizontalLayout_20.addWidget(self.SendButton_19) - self.verticalLayout_5.addLayout(self.horizontalLayout_20) - self.horizontalLayout_21 = QtWidgets.QHBoxLayout() - self.horizontalLayout_21.setObjectName("horizontalLayout_21") - self.itemLabelTextBrowser_20 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemLabelTextBrowser_20.setMinimumSize(QtCore.QSize(391, 31)) - self.itemLabelTextBrowser_20.setMaximumSize(QtCore.QSize(1234, 31)) - self.itemLabelTextBrowser_20.setReadOnly(True) - self.itemLabelTextBrowser_20.setObjectName("itemLabelTextBrowser_20") - self.horizontalLayout_21.addWidget(self.itemLabelTextBrowser_20) - self.SendButton_20 = QtWidgets.QPushButton(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SendButton_20.sizePolicy().hasHeightForWidth()) - self.SendButton_20.setSizePolicy(sizePolicy) - self.SendButton_20.setMinimumSize(QtCore.QSize(73, 32)) - self.SendButton_20.setMaximumSize(QtCore.QSize(73, 32)) - self.SendButton_20.setObjectName("SendButton_20") - self.horizontalLayout_21.addWidget(self.SendButton_20) - self.verticalLayout_5.addLayout(self.horizontalLayout_21) - self.horizontalLayout_22 = QtWidgets.QHBoxLayout() - self.horizontalLayout_22.setObjectName("horizontalLayout_22") - self.itemLabelTextBrowser_21 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemLabelTextBrowser_21.setMinimumSize(QtCore.QSize(391, 31)) - self.itemLabelTextBrowser_21.setMaximumSize(QtCore.QSize(1234, 31)) - self.itemLabelTextBrowser_21.setReadOnly(True) - self.itemLabelTextBrowser_21.setObjectName("itemLabelTextBrowser_21") - self.horizontalLayout_22.addWidget(self.itemLabelTextBrowser_21) - self.SendButton_21 = QtWidgets.QPushButton(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SendButton_21.sizePolicy().hasHeightForWidth()) - self.SendButton_21.setSizePolicy(sizePolicy) - self.SendButton_21.setMinimumSize(QtCore.QSize(73, 32)) - self.SendButton_21.setMaximumSize(QtCore.QSize(73, 32)) - self.SendButton_21.setObjectName("SendButton_21") - self.horizontalLayout_22.addWidget(self.SendButton_21) - self.verticalLayout_5.addLayout(self.horizontalLayout_22) - self.horizontalLayout_23 = QtWidgets.QHBoxLayout() - self.horizontalLayout_23.setObjectName("horizontalLayout_23") - self.itemLabelTextBrowser_22 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemLabelTextBrowser_22.setMinimumSize(QtCore.QSize(391, 31)) - self.itemLabelTextBrowser_22.setMaximumSize(QtCore.QSize(1234, 31)) - self.itemLabelTextBrowser_22.setReadOnly(True) - self.itemLabelTextBrowser_22.setObjectName("itemLabelTextBrowser_22") - self.horizontalLayout_23.addWidget(self.itemLabelTextBrowser_22) - self.SendButton_22 = QtWidgets.QPushButton(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SendButton_22.sizePolicy().hasHeightForWidth()) - self.SendButton_22.setSizePolicy(sizePolicy) - self.SendButton_22.setMinimumSize(QtCore.QSize(73, 32)) - self.SendButton_22.setMaximumSize(QtCore.QSize(73, 32)) - self.SendButton_22.setObjectName("SendButton_22") - self.horizontalLayout_23.addWidget(self.SendButton_22) - self.verticalLayout_5.addLayout(self.horizontalLayout_23) - self.horizontalLayout_24 = QtWidgets.QHBoxLayout() - self.horizontalLayout_24.setObjectName("horizontalLayout_24") - self.itemLabelTextBrowser_23 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemLabelTextBrowser_23.setMinimumSize(QtCore.QSize(391, 31)) - self.itemLabelTextBrowser_23.setMaximumSize(QtCore.QSize(1234, 31)) - self.itemLabelTextBrowser_23.setReadOnly(True) - self.itemLabelTextBrowser_23.setObjectName("itemLabelTextBrowser_23") - self.horizontalLayout_24.addWidget(self.itemLabelTextBrowser_23) - self.SendButton_23 = QtWidgets.QPushButton(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SendButton_23.sizePolicy().hasHeightForWidth()) - self.SendButton_23.setSizePolicy(sizePolicy) - self.SendButton_23.setMinimumSize(QtCore.QSize(73, 32)) - self.SendButton_23.setMaximumSize(QtCore.QSize(73, 32)) - self.SendButton_23.setObjectName("SendButton_23") - self.horizontalLayout_24.addWidget(self.SendButton_23) - self.verticalLayout_5.addLayout(self.horizontalLayout_24) - self.horizontalLayout_25 = QtWidgets.QHBoxLayout() - self.horizontalLayout_25.setObjectName("horizontalLayout_25") - self.itemLabelTextBrowser_24 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemLabelTextBrowser_24.setMinimumSize(QtCore.QSize(391, 31)) - self.itemLabelTextBrowser_24.setMaximumSize(QtCore.QSize(1234, 31)) - self.itemLabelTextBrowser_24.setReadOnly(True) - self.itemLabelTextBrowser_24.setObjectName("itemLabelTextBrowser_24") - self.horizontalLayout_25.addWidget(self.itemLabelTextBrowser_24) - self.SendButton_24 = QtWidgets.QPushButton(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SendButton_24.sizePolicy().hasHeightForWidth()) - self.SendButton_24.setSizePolicy(sizePolicy) - self.SendButton_24.setMinimumSize(QtCore.QSize(73, 32)) - self.SendButton_24.setMaximumSize(QtCore.QSize(73, 32)) - self.SendButton_24.setObjectName("SendButton_24") - self.horizontalLayout_25.addWidget(self.SendButton_24) - self.verticalLayout_5.addLayout(self.horizontalLayout_25) - self.horizontalLayout_26 = QtWidgets.QHBoxLayout() - self.horizontalLayout_26.setObjectName("horizontalLayout_26") - self.itemLabelTextBrowser_25 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemLabelTextBrowser_25.setMinimumSize(QtCore.QSize(391, 31)) - self.itemLabelTextBrowser_25.setMaximumSize(QtCore.QSize(1234, 31)) - self.itemLabelTextBrowser_25.setReadOnly(True) - self.itemLabelTextBrowser_25.setObjectName("itemLabelTextBrowser_25") - self.horizontalLayout_26.addWidget(self.itemLabelTextBrowser_25) - self.SendButton_25 = QtWidgets.QPushButton(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SendButton_25.sizePolicy().hasHeightForWidth()) - self.SendButton_25.setSizePolicy(sizePolicy) - self.SendButton_25.setMinimumSize(QtCore.QSize(73, 32)) - self.SendButton_25.setMaximumSize(QtCore.QSize(73, 32)) - self.SendButton_25.setObjectName("SendButton_25") - self.horizontalLayout_26.addWidget(self.SendButton_25) - self.verticalLayout_5.addLayout(self.horizontalLayout_26) - self.scrollArea.setWidget(self.scrollAreaWidgetContents) - self.verticalLayout_6.addWidget(self.scrollArea) - - self.retranslateUi(GenericCommandDialog) - self.buttonBox.clicked['QAbstractButton*'].connect(GenericCommandDialog.close) - QtCore.QMetaObject.connectSlotsByName(GenericCommandDialog) - - def retranslateUi(self, GenericCommandDialog): - _translate = QtCore.QCoreApplication.translate - GenericCommandDialog.setWindowTitle(_translate("GenericCommandDialog", "Command Page")) - self.subSystemCommandPageLabel.setText(_translate("GenericCommandDialog", "Subsystem")) - self.packetIdLabel.setText(_translate("GenericCommandDialog", "Packet ID")) - self.label_5.setText(_translate("GenericCommandDialog", "Send To:")) - self.label.setText(_translate("GenericCommandDialog", "Command")) - self.SendButton_1.setText(_translate("GenericCommandDialog", "Send")) - self.SendButton_2.setText(_translate("GenericCommandDialog", "Send")) - self.SendButton_3.setText(_translate("GenericCommandDialog", "Send")) - self.SendButton_4.setText(_translate("GenericCommandDialog", "Send")) - self.SendButton_5.setText(_translate("GenericCommandDialog", "Send")) - self.SendButton_6.setText(_translate("GenericCommandDialog", "Send")) - self.SendButton_7.setText(_translate("GenericCommandDialog", "Send")) - self.SendButton_8.setText(_translate("GenericCommandDialog", "Send")) - self.SendButton_9.setText(_translate("GenericCommandDialog", "Send")) - self.SendButton_10.setText(_translate("GenericCommandDialog", "Send")) - self.SendButton_11.setText(_translate("GenericCommandDialog", "Send")) - self.SendButton_12.setText(_translate("GenericCommandDialog", "Send")) - self.SendButton_13.setText(_translate("GenericCommandDialog", "Send")) - self.SendButton_14.setText(_translate("GenericCommandDialog", "Send")) - self.SendButton_15.setText(_translate("GenericCommandDialog", "Send")) - self.SendButton_16.setText(_translate("GenericCommandDialog", "Send")) - self.SendButton_17.setText(_translate("GenericCommandDialog", "Send")) - self.SendButton_18.setText(_translate("GenericCommandDialog", "Send")) - self.SendButton_19.setText(_translate("GenericCommandDialog", "Send")) - self.SendButton_20.setText(_translate("GenericCommandDialog", "Send")) - self.SendButton_21.setText(_translate("GenericCommandDialog", "Send")) - self.SendButton_22.setText(_translate("GenericCommandDialog", "Send")) - self.SendButton_23.setText(_translate("GenericCommandDialog", "Send")) - self.SendButton_24.setText(_translate("GenericCommandDialog", "Send")) - self.SendButton_25.setText(_translate("GenericCommandDialog", "Send")) - diff --git a/Subsystems/cmdGui/GenericCommandDialog.ui b/Subsystems/cmdGui/GenericCommandDialog.ui index 984b4b9..42c425a 100644 --- a/Subsystems/cmdGui/GenericCommandDialog.ui +++ b/Subsystems/cmdGui/GenericCommandDialog.ui @@ -151,1236 +151,31 @@ + + + + QAbstractItemView::NoEditTriggers + + + false + + + 40 + + + + Command + + + + + + + + + - - - - Qt::ScrollBarAlwaysOn - - - true - - - - - 0 - 0 - 515 - 1000 - - - - - 0 - 1000 - - - - - - - - - - 391 - 31 - - - - - 1234 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 73 - 32 - - - - - 73 - 32 - - - - Send - - - - - - - - - - - - 391 - 31 - - - - - 1234 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 73 - 32 - - - - - 73 - 32 - - - - Send - - - - - - - - - - - - 391 - 31 - - - - - 1234 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 73 - 32 - - - - - 73 - 32 - - - - Send - - - - - - - - - - - - 391 - 31 - - - - - 1234 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 73 - 32 - - - - - 73 - 32 - - - - Send - - - - - - - - - - - - 391 - 31 - - - - - 1234 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 73 - 32 - - - - - 73 - 32 - - - - Send - - - - - - - - - - - - 391 - 31 - - - - - 1234 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 73 - 32 - - - - - 73 - 32 - - - - Send - - - - - - - - - - - - 391 - 31 - - - - - 1234 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 73 - 32 - - - - - 73 - 32 - - - - Send - - - - - - - - - - - - 391 - 31 - - - - - 1234 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 73 - 32 - - - - - 73 - 32 - - - - Send - - - - - - - - - - - - 391 - 31 - - - - - 1234 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 73 - 32 - - - - - 73 - 32 - - - - Send - - - - - - - - - - - - 391 - 31 - - - - - 1234 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 73 - 32 - - - - - 73 - 32 - - - - Send - - - - - - - - - - - - 391 - 31 - - - - - 1234 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 73 - 32 - - - - - 73 - 32 - - - - Send - - - - - - - - - - - - 391 - 31 - - - - - 1234 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 73 - 32 - - - - - 73 - 32 - - - - Send - - - - - - - - - - - - 391 - 31 - - - - - 1234 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 73 - 32 - - - - - 73 - 32 - - - - Send - - - - - - - - - - - - 391 - 31 - - - - - 1234 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 73 - 32 - - - - - 73 - 32 - - - - Send - - - - - - - - - - - - 391 - 31 - - - - - 1234 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 73 - 32 - - - - - 73 - 32 - - - - Send - - - - - - - - - - - - 391 - 31 - - - - - 1234 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 73 - 32 - - - - - 73 - 32 - - - - Send - - - - - - - - - - - - 391 - 31 - - - - - 1234 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 73 - 32 - - - - - 73 - 32 - - - - Send - - - - - - - - - - - - 391 - 31 - - - - - 1234 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 73 - 32 - - - - - 73 - 32 - - - - Send - - - - - - - - - - - - 391 - 31 - - - - - 1234 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 73 - 32 - - - - - 73 - 32 - - - - Send - - - - - - - - - - - - 391 - 31 - - - - - 1234 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 73 - 32 - - - - - 73 - 32 - - - - Send - - - - - - - - - - - - 391 - 31 - - - - - 1234 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 73 - 32 - - - - - 73 - 32 - - - - Send - - - - - - - - - - - - 391 - 31 - - - - - 1234 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 73 - 32 - - - - - 73 - 32 - - - - Send - - - - - - - - - - - - 391 - 31 - - - - - 1234 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 73 - 32 - - - - - 73 - 32 - - - - Send - - - - - - - - - - - - 391 - 31 - - - - - 1234 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 73 - 32 - - - - - 73 - 32 - - - - Send - - - - - - - - - - - - 391 - 31 - - - - - 1234 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 73 - 32 - - - - - 73 - 32 - - - - Send - - - - - - - - - diff --git a/Subsystems/cmdGui/MiniCmdUtil.py b/Subsystems/cmdGui/MiniCmdUtil.py new file mode 100644 index 0000000..cae208f --- /dev/null +++ b/Subsystems/cmdGui/MiniCmdUtil.py @@ -0,0 +1,159 @@ +# +# GSC-18128-1, "Core Flight Executive Version 6.7" +# +# Copyright (c) 2006-2019 United States Government as represented by +# the Administrator of the National Aeronautics and Space Administration. +# All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +## This file is a Python implementation of a subset of functions in cmdUtil +## to support the GroundSystem GUI + +import mmap +import sys +from pathlib import Path +from collections import namedtuple + +ROOTDIR = Path(sys.argv[0]).resolve().parent +sys.path.append(str(ROOTDIR.parent.parent)) +## The two preceding lines must be above +## the next import or the import will fail +from shareddata import sock + + +class MiniCmdUtil: + checksum = 0xFF + cfsCmdSecHdr = bytearray(2) + TypeSignature = namedtuple("TypeSignature", 'byteLen, signed, endian') + dataTypes = { + ("b", "int8", "byte"): TypeSignature(1, True, None), + ("m", "uint8"): TypeSignature(1, False, None), + ("h", "int16", "half"): TypeSignature(2, True, None), + ("n", "uint16"): TypeSignature(2, False, None), + ("l", "int32", "long", "word"): TypeSignature(4, True, None), + ("o", "uint32"): TypeSignature(4, False, None), + ("q", "int64"): TypeSignature(8, True, None), + ("p", "uint64"): TypeSignature(8, False, None), + ("i", "int16b"): TypeSignature(2, True, "big"), + ("j", "int32b"): TypeSignature(4, True, "big"), + ("k", "int64b"): TypeSignature(8, True, "big"), + ("w", "uint16b"): TypeSignature(2, False, "big"), + ("x", "uint32b"): TypeSignature(4, False, "big"), + ("y", "uint64b"): TypeSignature(8, False, "big") + } + + def __init__(self, + host="127.0.0.1", + port=1234, + endian="BE", + pktID=0, + cmdCode=0, + parameters=None): + + self.host = host + self.port = int(port) + self.endian = "big" if endian == "BE" else "little" + self.pktID = int(pktID, 16) + self.cmdCode = int(cmdCode) + self.parameters = parameters + self.payload = bytearray() + self.packet = bytearray() + with open("/tmp/OffsetData", "r+b") as f: + self.mm = mmap.mmap(f.fileno(), 0, prot=mmap.PROT_READ) + + self.cmdOffsetPri = 0 + self.cmdOffsetSec = 0 + + def assemblePriHeader(self): + self._getOffsets() + ccsdsPri = bytearray(6) + ccsdsPri[:2] = self.pktID.to_bytes(2, byteorder='big') + ccsdsPri[2:4] = (0xC000).to_bytes(2, byteorder='big') + totalPacketLen = len(ccsdsPri) + len(self.cfsCmdSecHdr) + self.assemblePayload() + totalPacketLen += len(self.payload) + totalPacketLen += self.cmdOffsetPri + self.cmdOffsetSec + ccsdsPri[4:] = (totalPacketLen - 7).to_bytes(2, byteorder="big") + return ccsdsPri + + def assemblePayload(self): + if self.parameters: + paramList = self.parameters.split(" ") + for param in paramList: + items = param.split("=") ## e.g. ["--uint16", "2"] + if "--string" not in param: ## non-string param + dataType = items[0].strip("-") ## Remove "--" prefix + dataVal = int(items[1]) + for key in self.dataTypes: ## Loop thru dictionary keys + if dataType in key: ## Check if e.g. "uint16" in key tuple + ## Get the TypeSignature tuple + typeSig = self.dataTypes[key] + break ## Stop checking dictionary + ## If TypeSignature endian is None, get the + ## user-provided/default endian. Otherwise get + ## the TypeSignature endian + endian = typeSig.endian or self.endian + ## Convert to bytes of correct length, endianess, and sign + dataValB = dataVal.to_bytes(typeSig.byteLen, + byteorder=endian, + signed=typeSig.signed) + ## Add data to payload bytearray + self.payload.extend(dataValB) + else: + stringParams = items[1].strip("\"").split( + ":") ## e.g. ["16", "ES_APP"] + ## Zero init'd bytearray of length e.g. 16 + fixedLenStr = bytearray(int(stringParams[0])) + stringB = stringParams[1].encode( + ) ## Param string to bytes + ## Insert param bytes into front of bytearray + fixedLenStr[:len(stringB)] = stringB + ## Add data to payload bytearray + self.payload.extend(fixedLenStr) + + def assemblePacket(self): + self._getOffsets() + pri = self.assemblePriHeader() + self.packet.extend(pri) + priOffset = bytearray(self.cmdOffsetPri) + self.packet.extend(priOffset) + self.cfsCmdSecHdr[0] = self.cmdCode + secOffset = bytearray(self.cmdOffsetSec) + for b in b''.join( + (pri, priOffset, self.cfsCmdSecHdr, secOffset, self.payload)): + self.checksum ^= b + self.cfsCmdSecHdr[1] = self.checksum + self.packet.extend(self.cfsCmdSecHdr) + self.packet.extend(secOffset) + self.packet.extend(self.payload) + self.checksum = 0xFF + + def sendPacket(self): + self.assemblePacket() + print("Data to send:") + for i, v in enumerate(self.packet): + print(f"0x{format(v, '02X')}", end=" ") + if (i + 1) % 8 == 0: + print() + print() + bytesSent = sock.sendto(self.packet, (self.host, self.port)) + return bytesSent > 0 + + def _getOffsets(self): + try: + self.cmdOffsetPri = self.mm[1] + self.cmdOffsetSec = self.mm[2] + except ValueError: + pass diff --git a/Subsystems/cmdGui/Parameter.py b/Subsystems/cmdGui/Parameter.py index b069d6b..cc531ea 100644 --- a/Subsystems/cmdGui/Parameter.py +++ b/Subsystems/cmdGui/Parameter.py @@ -25,10 +25,13 @@ import sys from pathlib import Path -from PyQt5.QtWidgets import QApplication, QDialog +from PyQt5.QtCore import Qt +from PyQt5.QtWidgets import (QApplication, QDialog, QHeaderView, + QTableWidgetItem) from HTMLDocsParser import HTMLDocsParser -from ParameterDialog import Ui_Dialog +from MiniCmdUtil import MiniCmdUtil +from Ui_ParameterDialog import Ui_Dialog ROOTDIR = Path(sys.argv[0]).resolve().parent @@ -43,34 +46,42 @@ def __init__(self): self.parser = HTMLDocsParser() self.setWindowTitle("Parameter Dialog") self.SendButton_1.clicked.connect(self.ProcessSendButton) + self.mcu = None # # Button method # def ProcessSendButton(self): input_list = [] - for j in range(1, 11): - inputStr = getattr(self, f"input_{j}") - input_list.append(inputStr.text().strip()) + for j in range(self.tblParameters.rowCount()): + item = tbl.item(j, 2) + input_list.append(item.text().strip()) - k = 0 param_list = [] - while input_list[k]: + for k, inpt in enumerate(input_list): dataType = dataTypesNew[k] if dataType == '--string': - param_list.append( - f'{dataType}=\"{stringLen[k]}:{input_list[k]}\"') + param_list.append(f'{dataType}=\"{stringLen[k]}:{inpt}\"') else: - param_list.append(f'{dataType}={input_list[k]}') # --byte=4 - k += 1 + param_list.append(f'{dataType}={inpt}') # --byte=4 param_string = ' '.join(param_list) - launch_string = ( - f'{ROOTDIR}/../cmdUtil/cmdUtil --host={pageAddress} ' - f'--port={pagePort} --pktid={pagePktId} --endian={pageEndian} ' - f'--cmdcode={cmdCode} {param_string.strip()}') - cmd_args = shlex.split(launch_string) - subprocess.Popen(cmd_args) - self.status_box.setText('Command sent!') + self.mcu = MiniCmdUtil(pageAddress, pagePort, pageEndian, pagePktId, + cmdCode, param_string.strip()) + sendSuccess = self.mcu.sendPacket() + # launch_string = ( + # f'{ROOTDIR.parent}/cmdUtil/cmdUtil --host={pageAddress} ' + # f'--port={pagePort} --pktid={pagePktId} --endian={pageEndian} ' + # f'--cmdcode={cmdCode} {param_string.strip()}')result + # cmd_args = shlex.split(launch_string) + # subprocess.Popen(cmd_args) + if sendSuccess: + self.status_box.setText('Command sent!') + else: + self.status_box.setText('Error occured') + + def closeEvent(self, event): + self.mcu.mm.close() + super().closeEvent(event) # @@ -82,7 +93,7 @@ def ProcessSendButton(self): # subsysTitle, cmdDesc, pageEndian, pageAddress, cmdCode, params = ( '' for _ in range(6)) - idx, pagePktId, pagePort = (0 for _ in range(3)) + pagePktId, pagePort = 0, 0 param_file = 'struct_c_f_e___e_s___start_app_cmd__t.html' # @@ -99,7 +110,7 @@ def ProcessSendButton(self): elif opt in ("-d", "--descrip"): cmdDesc = arg # command name, eg No-Op elif opt in ("-i", "--idx"): - idx = int(arg) # comand index in command definition file + _ = int(arg) # command index in command definition file elif opt in ("-h", "--host"): pageAddress = arg # send to address elif opt in ("-p", "--port"): @@ -118,13 +129,14 @@ def ProcessSendButton(self): # app = QApplication(sys.argv) # creates instance of QtApplication class param = Parameter() # creates instance of Parameter class + tbl = param.tblParameters # # Gets parameter information from pickle files # pickle_file = f'{ROOTDIR}/ParameterFiles/' + re.split(r'\.', param_file)[0] with open(pickle_file, 'rb') as pickle_obj: - dataTypesOrig, paramNames, paramLen, paramDesc, dataTypesNew, stringLen = pickle.load( + _, paramNames, _, paramDesc, dataTypesNew, stringLen = pickle.load( pickle_obj) # @@ -134,14 +146,22 @@ def ProcessSendButton(self): param.commandAddressTextBrowser.setText( f'{cmdDesc} Command') # command name - for i in range(10): - paramName = getattr(param, f"paramName_{i+1}") - descrip = getattr(param, f"descrip_{i+1}") + for i, name in enumerate(paramNames): + tbl.insertRow(i) + ## Create and insert the table items + for n in range(tbl.columnCount()): + tblItem = QTableWidgetItem() + tbl.setItem(i, n, tblItem) + ## Make the first two items in each row uneditable + for n in range(tbl.columnCount() - 1): + tbl.item(i, n).setFlags(Qt.ItemIsEnabled) try: - paramName.setText(paramNames[i]) - descrip.setText(paramDesc[i]) + tbl.item(i, 0).setText(name) + tbl.item(i, 1).setText(paramDesc[i]) except IndexError: - pass + pass # Ignore nonexistent array items + tbl.horizontalHeader().setSectionResizeMode(QHeaderView.Stretch) + # tbl.verticalHeader().setSectionResizeMode(QHeaderView.Stretch) # # Displays the dialog diff --git a/Subsystems/cmdGui/ParameterDialog.py b/Subsystems/cmdGui/ParameterDialog.py deleted file mode 100644 index 3644c4e..0000000 --- a/Subsystems/cmdGui/ParameterDialog.py +++ /dev/null @@ -1,273 +0,0 @@ -# -*- coding: utf-8 -*- - -# Form implementation generated from reading ui file '/home/lbleier/cFS/tools/cFS-GroundSystem/Subsystems/cmdGui/ParameterDialog.ui' -# -# Created by: PyQt5 UI code generator 5.10.1 -# -# WARNING! All changes made in this file will be lost! - -from PyQt5 import QtCore, QtGui, QtWidgets - -class Ui_Dialog(object): - def setupUi(self, Dialog): - Dialog.setObjectName("Dialog") - Dialog.setEnabled(True) - Dialog.resize(786, 534) - self.label_title = QtWidgets.QLabel(Dialog) - self.label_title.setGeometry(QtCore.QRect(330, 120, 91, 31)) - font = QtGui.QFont() - font.setFamily("Sans Serif") - font.setPointSize(10) - self.label_title.setFont(font) - self.label_title.setAlignment(QtCore.Qt.AlignCenter) - self.label_title.setObjectName("label_title") - self.label_instructions = QtWidgets.QLabel(Dialog) - self.label_instructions.setGeometry(QtCore.QRect(120, 140, 551, 31)) - self.label_instructions.setAlignment(QtCore.Qt.AlignCenter) - self.label_instructions.setObjectName("label_instructions") - self.buttonBox = QtWidgets.QDialogButtonBox(Dialog) - self.buttonBox.setGeometry(QtCore.QRect(670, 490, 101, 31)) - self.buttonBox.setLayoutDirection(QtCore.Qt.LeftToRight) - self.buttonBox.setOrientation(QtCore.Qt.Horizontal) - self.buttonBox.setStandardButtons(QtWidgets.QDialogButtonBox.Close) - self.buttonBox.setCenterButtons(True) - self.buttonBox.setObjectName("buttonBox") - self.status_box = QtWidgets.QTextBrowser(Dialog) - self.status_box.setGeometry(QtCore.QRect(480, 40, 201, 41)) - self.status_box.setAutoFillBackground(False) - self.status_box.setObjectName("status_box") - self.label_param_title_2 = QtWidgets.QLabel(Dialog) - self.label_param_title_2.setGeometry(QtCore.QRect(480, 10, 61, 21)) - self.label_param_title_2.setObjectName("label_param_title_2") - self.SendButton_1 = QtWidgets.QPushButton(Dialog) - self.SendButton_1.setGeometry(QtCore.QRect(690, 47, 71, 27)) - self.SendButton_1.setAutoDefault(False) - self.SendButton_1.setDefault(True) - self.SendButton_1.setObjectName("SendButton_1") - self.label_5 = QtWidgets.QLabel(Dialog) - self.label_5.setGeometry(QtCore.QRect(260, 10, 81, 20)) - self.label_5.setObjectName("label_5") - self.subSystemCommandPageLabel = QtWidgets.QLabel(Dialog) - self.subSystemCommandPageLabel.setGeometry(QtCore.QRect(30, 10, 91, 24)) - self.subSystemCommandPageLabel.setObjectName("subSystemCommandPageLabel") - self.subSystemTextBrowser = QtWidgets.QTextBrowser(Dialog) - self.subSystemTextBrowser.setGeometry(QtCore.QRect(30, 40, 221, 41)) - self.subSystemTextBrowser.setObjectName("subSystemTextBrowser") - self.commandAddressTextBrowser = QtWidgets.QTextBrowser(Dialog) - self.commandAddressTextBrowser.setGeometry(QtCore.QRect(260, 40, 211, 41)) - self.commandAddressTextBrowser.setObjectName("commandAddressTextBrowser") - self.scrollArea_2 = QtWidgets.QScrollArea(Dialog) - self.scrollArea_2.setGeometry(QtCore.QRect(20, 180, 741, 301)) - self.scrollArea_2.setMinimumSize(QtCore.QSize(0, 0)) - self.scrollArea_2.setBaseSize(QtCore.QSize(0, 500)) - self.scrollArea_2.setObjectName("scrollArea_2") - self.scrollAreaWidgetContents_2 = QtWidgets.QWidget() - self.scrollAreaWidgetContents_2.setGeometry(QtCore.QRect(0, 0, 725, 1000)) - self.scrollAreaWidgetContents_2.setMinimumSize(QtCore.QSize(0, 1000)) - self.scrollAreaWidgetContents_2.setObjectName("scrollAreaWidgetContents_2") - self.descrip_1 = QtWidgets.QTextBrowser(self.scrollAreaWidgetContents_2) - self.descrip_1.setGeometry(QtCore.QRect(150, 30, 281, 41)) - self.descrip_1.setMinimumSize(QtCore.QSize(281, 41)) - self.descrip_1.setMaximumSize(QtCore.QSize(300, 41)) - font = QtGui.QFont() - font.setPointSize(8) - self.descrip_1.setFont(font) - self.descrip_1.setObjectName("descrip_1") - self.label_input_title_2 = QtWidgets.QLabel(self.scrollAreaWidgetContents_2) - self.label_input_title_2.setGeometry(QtCore.QRect(440, 10, 91, 21)) - font = QtGui.QFont() - font.setFamily("Sans Serif") - font.setPointSize(10) - self.label_input_title_2.setFont(font) - self.label_input_title_2.setObjectName("label_input_title_2") - self.label_param_title_3 = QtWidgets.QLabel(self.scrollAreaWidgetContents_2) - self.label_param_title_3.setGeometry(QtCore.QRect(10, 10, 111, 21)) - font = QtGui.QFont() - font.setFamily("Sans Serif") - font.setPointSize(10) - self.label_param_title_3.setFont(font) - self.label_param_title_3.setObjectName("label_param_title_3") - self.label_descrip_2 = QtWidgets.QLabel(self.scrollAreaWidgetContents_2) - self.label_descrip_2.setGeometry(QtCore.QRect(150, 10, 111, 21)) - font = QtGui.QFont() - font.setFamily("Sans Serif") - font.setPointSize(10) - self.label_descrip_2.setFont(font) - self.label_descrip_2.setObjectName("label_descrip_2") - self.descrip_2 = QtWidgets.QTextBrowser(self.scrollAreaWidgetContents_2) - self.descrip_2.setGeometry(QtCore.QRect(150, 80, 281, 41)) - font = QtGui.QFont() - font.setPointSize(8) - self.descrip_2.setFont(font) - self.descrip_2.setObjectName("descrip_2") - self.descrip_3 = QtWidgets.QTextBrowser(self.scrollAreaWidgetContents_2) - self.descrip_3.setGeometry(QtCore.QRect(150, 130, 281, 41)) - font = QtGui.QFont() - font.setPointSize(8) - self.descrip_3.setFont(font) - self.descrip_3.setObjectName("descrip_3") - self.descrip_4 = QtWidgets.QTextBrowser(self.scrollAreaWidgetContents_2) - self.descrip_4.setGeometry(QtCore.QRect(150, 180, 281, 41)) - font = QtGui.QFont() - font.setPointSize(8) - self.descrip_4.setFont(font) - self.descrip_4.setObjectName("descrip_4") - self.descrip_5 = QtWidgets.QTextBrowser(self.scrollAreaWidgetContents_2) - self.descrip_5.setGeometry(QtCore.QRect(150, 230, 281, 41)) - font = QtGui.QFont() - font.setPointSize(8) - self.descrip_5.setFont(font) - self.descrip_5.setObjectName("descrip_5") - self.descrip_6 = QtWidgets.QTextBrowser(self.scrollAreaWidgetContents_2) - self.descrip_6.setGeometry(QtCore.QRect(150, 280, 281, 41)) - font = QtGui.QFont() - font.setPointSize(8) - self.descrip_6.setFont(font) - self.descrip_6.setObjectName("descrip_6") - self.descrip_7 = QtWidgets.QTextBrowser(self.scrollAreaWidgetContents_2) - self.descrip_7.setGeometry(QtCore.QRect(150, 330, 281, 41)) - font = QtGui.QFont() - font.setPointSize(8) - self.descrip_7.setFont(font) - self.descrip_7.setObjectName("descrip_7") - self.descrip_8 = QtWidgets.QTextBrowser(self.scrollAreaWidgetContents_2) - self.descrip_8.setGeometry(QtCore.QRect(150, 380, 281, 41)) - font = QtGui.QFont() - font.setPointSize(8) - self.descrip_8.setFont(font) - self.descrip_8.setObjectName("descrip_8") - self.descrip_9 = QtWidgets.QTextBrowser(self.scrollAreaWidgetContents_2) - self.descrip_9.setGeometry(QtCore.QRect(150, 430, 281, 41)) - font = QtGui.QFont() - font.setPointSize(8) - self.descrip_9.setFont(font) - self.descrip_9.setObjectName("descrip_9") - self.descrip_10 = QtWidgets.QTextBrowser(self.scrollAreaWidgetContents_2) - self.descrip_10.setGeometry(QtCore.QRect(150, 480, 281, 41)) - font = QtGui.QFont() - font.setPointSize(8) - self.descrip_10.setFont(font) - self.descrip_10.setObjectName("descrip_10") - self.input_1 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents_2) - self.input_1.setGeometry(QtCore.QRect(440, 30, 271, 41)) - self.input_1.setObjectName("input_1") - self.input_2 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents_2) - self.input_2.setGeometry(QtCore.QRect(440, 80, 271, 41)) - self.input_2.setObjectName("input_2") - self.input_3 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents_2) - self.input_3.setGeometry(QtCore.QRect(440, 130, 271, 41)) - self.input_3.setObjectName("input_3") - self.input_4 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents_2) - self.input_4.setGeometry(QtCore.QRect(440, 180, 271, 41)) - self.input_4.setObjectName("input_4") - self.input_5 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents_2) - self.input_5.setGeometry(QtCore.QRect(440, 230, 271, 41)) - self.input_5.setObjectName("input_5") - self.input_6 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents_2) - self.input_6.setGeometry(QtCore.QRect(440, 280, 271, 41)) - self.input_6.setObjectName("input_6") - self.input_7 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents_2) - self.input_7.setGeometry(QtCore.QRect(440, 330, 271, 41)) - self.input_7.setObjectName("input_7") - self.input_8 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents_2) - self.input_8.setGeometry(QtCore.QRect(440, 380, 271, 41)) - self.input_8.setObjectName("input_8") - self.input_9 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents_2) - self.input_9.setGeometry(QtCore.QRect(440, 430, 271, 41)) - self.input_9.setObjectName("input_9") - self.input_10 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents_2) - self.input_10.setGeometry(QtCore.QRect(440, 480, 271, 41)) - self.input_10.setObjectName("input_10") - self.paramName_1 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents_2) - self.paramName_1.setGeometry(QtCore.QRect(10, 30, 131, 41)) - self.paramName_1.setReadOnly(True) - self.paramName_1.setObjectName("paramName_1") - self.paramName_2 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents_2) - self.paramName_2.setGeometry(QtCore.QRect(10, 80, 131, 41)) - self.paramName_2.setReadOnly(True) - self.paramName_2.setObjectName("paramName_2") - self.paramName_3 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents_2) - self.paramName_3.setGeometry(QtCore.QRect(10, 130, 131, 41)) - self.paramName_3.setReadOnly(True) - self.paramName_3.setObjectName("paramName_3") - self.paramName_4 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents_2) - self.paramName_4.setGeometry(QtCore.QRect(10, 180, 131, 41)) - self.paramName_4.setReadOnly(True) - self.paramName_4.setObjectName("paramName_4") - self.paramName_5 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents_2) - self.paramName_5.setGeometry(QtCore.QRect(10, 230, 131, 41)) - self.paramName_5.setReadOnly(True) - self.paramName_5.setObjectName("paramName_5") - self.paramName_6 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents_2) - self.paramName_6.setGeometry(QtCore.QRect(10, 280, 131, 41)) - self.paramName_6.setReadOnly(True) - self.paramName_6.setObjectName("paramName_6") - self.paramName_7 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents_2) - self.paramName_7.setGeometry(QtCore.QRect(10, 330, 131, 41)) - self.paramName_7.setReadOnly(True) - self.paramName_7.setObjectName("paramName_7") - self.paramName_8 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents_2) - self.paramName_8.setGeometry(QtCore.QRect(10, 380, 131, 41)) - self.paramName_8.setReadOnly(True) - self.paramName_8.setObjectName("paramName_8") - self.paramName_9 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents_2) - self.paramName_9.setGeometry(QtCore.QRect(10, 430, 131, 41)) - self.paramName_9.setReadOnly(True) - self.paramName_9.setObjectName("paramName_9") - self.paramName_10 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents_2) - self.paramName_10.setGeometry(QtCore.QRect(10, 480, 131, 41)) - self.paramName_10.setReadOnly(True) - self.paramName_10.setObjectName("paramName_10") - self.scrollArea_2.setWidget(self.scrollAreaWidgetContents_2) - - self.retranslateUi(Dialog) - self.buttonBox.clicked['QAbstractButton*'].connect(Dialog.close) - QtCore.QMetaObject.connectSlotsByName(Dialog) - Dialog.setTabOrder(self.input_1, self.input_2) - Dialog.setTabOrder(self.input_2, self.input_3) - Dialog.setTabOrder(self.input_3, self.input_4) - Dialog.setTabOrder(self.input_4, self.input_5) - Dialog.setTabOrder(self.input_5, self.input_6) - Dialog.setTabOrder(self.input_6, self.input_7) - Dialog.setTabOrder(self.input_7, self.input_8) - Dialog.setTabOrder(self.input_8, self.input_9) - Dialog.setTabOrder(self.input_9, self.input_10) - Dialog.setTabOrder(self.input_10, self.descrip_4) - Dialog.setTabOrder(self.descrip_4, self.descrip_5) - Dialog.setTabOrder(self.descrip_5, self.descrip_2) - Dialog.setTabOrder(self.descrip_2, self.descrip_6) - Dialog.setTabOrder(self.descrip_6, self.descrip_7) - Dialog.setTabOrder(self.descrip_7, self.descrip_8) - Dialog.setTabOrder(self.descrip_8, self.descrip_9) - Dialog.setTabOrder(self.descrip_9, self.descrip_10) - Dialog.setTabOrder(self.descrip_10, self.status_box) - Dialog.setTabOrder(self.status_box, self.SendButton_1) - Dialog.setTabOrder(self.SendButton_1, self.subSystemTextBrowser) - Dialog.setTabOrder(self.subSystemTextBrowser, self.commandAddressTextBrowser) - Dialog.setTabOrder(self.commandAddressTextBrowser, self.scrollArea_2) - Dialog.setTabOrder(self.scrollArea_2, self.descrip_1) - Dialog.setTabOrder(self.descrip_1, self.descrip_3) - Dialog.setTabOrder(self.descrip_3, self.paramName_1) - Dialog.setTabOrder(self.paramName_1, self.paramName_2) - Dialog.setTabOrder(self.paramName_2, self.paramName_3) - Dialog.setTabOrder(self.paramName_3, self.paramName_4) - Dialog.setTabOrder(self.paramName_4, self.paramName_5) - Dialog.setTabOrder(self.paramName_5, self.paramName_6) - Dialog.setTabOrder(self.paramName_6, self.paramName_7) - Dialog.setTabOrder(self.paramName_7, self.paramName_8) - Dialog.setTabOrder(self.paramName_8, self.paramName_9) - Dialog.setTabOrder(self.paramName_9, self.paramName_10) - - def retranslateUi(self, Dialog): - _translate = QtCore.QCoreApplication.translate - Dialog.setWindowTitle(_translate("Dialog", "Dialog")) - self.label_title.setText(_translate("Dialog", "Parameters")) - self.label_instructions.setText(_translate("Dialog", "Please enter the following parameters then click \'Send\':")) - self.label_param_title_2.setText(_translate("Dialog", "Status:")) - self.SendButton_1.setText(_translate("Dialog", "Send")) - self.label_5.setText(_translate("Dialog", "Command:")) - self.subSystemCommandPageLabel.setText(_translate("Dialog", "Subsystem:")) - self.label_input_title_2.setText(_translate("Dialog", "Input")) - self.label_param_title_3.setText(_translate("Dialog", "Parameter")) - self.label_descrip_2.setText(_translate("Dialog", "Description")) - diff --git a/Subsystems/cmdGui/ParameterDialog.ui b/Subsystems/cmdGui/ParameterDialog.ui index 3998ce8..b89c55d 100644 --- a/Subsystems/cmdGui/ParameterDialog.ui +++ b/Subsystems/cmdGui/ParameterDialog.ui @@ -9,8 +9,8 @@ 0 0 - 786 - 534 + 782 + 550 @@ -167,530 +167,40 @@ - + 20 180 - 741 + 731 301 - - - 0 - 0 - - - - - 0 - 500 - - - - - - 0 - 0 - 725 - 1000 - + + false + + + + Parameter + + + + + Description - - - 0 - 1000 - + + + + Input - - - - 150 - 30 - 281 - 41 - - - - - 281 - 41 - - - - - 300 - 41 - - - - - 8 - - - - - - - 440 - 10 - 91 - 21 - - - - - Sans Serif - 10 - - - - Input - - - - - - 10 - 10 - 111 - 21 - - - - - Sans Serif - 10 - - - - Parameter - - - - - - 150 - 10 - 111 - 21 - - - - - Sans Serif - 10 - - - - Description - - - - - - 150 - 80 - 281 - 41 - - - - - 8 - - - - - - - 150 - 130 - 281 - 41 - - - - - 8 - - - - - - - 150 - 180 - 281 - 41 - - - - - 8 - - - - - - - 150 - 230 - 281 - 41 - - - - - 8 - - - - - - - 150 - 280 - 281 - 41 - - - - - 8 - - - - - - - 150 - 330 - 281 - 41 - - - - - 8 - - - - - - - 150 - 380 - 281 - 41 - - - - - 8 - - - - - - - 150 - 430 - 281 - 41 - - - - - 8 - - - - - - - 150 - 480 - 281 - 41 - - - - - 8 - - - - - - - 440 - 30 - 271 - 41 - - - - - - - 440 - 80 - 271 - 41 - - - - - - - 440 - 130 - 271 - 41 - - - - - - - 440 - 180 - 271 - 41 - - - - - - - 440 - 230 - 271 - 41 - - - - - - - 440 - 280 - 271 - 41 - - - - - - - 440 - 330 - 271 - 41 - - - - - - - 440 - 380 - 271 - 41 - - - - - - - 440 - 430 - 271 - 41 - - - - - - - 440 - 480 - 271 - 41 - - - - - - - 10 - 30 - 131 - 41 - - - - true - - - - - - 10 - 80 - 131 - 41 - - - - true - - - - - - 10 - 130 - 131 - 41 - - - - true - - - - - - 10 - 180 - 131 - 41 - - - - true - - - - - - 10 - 230 - 131 - 41 - - - - true - - - - - - 10 - 280 - 131 - 41 - - - - true - - - - - - 10 - 330 - 131 - 41 - - - - true - - - - - - 10 - 380 - 131 - 41 - - - - true - - - - - - 10 - 430 - 131 - 41 - - - - true - - - - - - 10 - 480 - 131 - 41 - - - - true - - - + - input_1 - input_2 - input_3 - input_4 - input_5 - input_6 - input_7 - input_8 - input_9 - input_10 - descrip_4 - descrip_5 - descrip_2 - descrip_6 - descrip_7 - descrip_8 - descrip_9 - descrip_10 status_box SendButton_1 subSystemTextBrowser commandAddressTextBrowser - scrollArea_2 - descrip_1 - descrip_3 - paramName_1 - paramName_2 - paramName_3 - paramName_4 - paramName_5 - paramName_6 - paramName_7 - paramName_8 - paramName_9 - paramName_10 diff --git a/Subsystems/cmdGui/UdpCommands.py b/Subsystems/cmdGui/UdpCommands.py index b5a96ed..dc1cceb 100644 --- a/Subsystems/cmdGui/UdpCommands.py +++ b/Subsystems/cmdGui/UdpCommands.py @@ -39,10 +39,13 @@ import sys from pathlib import Path -from PyQt5.QtWidgets import QApplication, QDialog +from PyQt5.QtWidgets import (QApplication, QDialog, QHeaderView, QPushButton, + QTableWidgetItem) -from GenericCommandDialog import Ui_GenericCommandDialog +from MiniCmdUtil import MiniCmdUtil +from Ui_GenericCommandDialog import Ui_GenericCommandDialog +## ../cFS/tools/cFS-GroundSystem/Subsystems/cmdGui/ ROOTDIR = Path(sys.argv[0]).resolve().parent @@ -54,11 +57,12 @@ def __init__(self): super().__init__() self.setupUi(self) self.setWindowTitle(pageTitle) + self.mcu = None - for j in range(25): - btn = getattr(self, f"SendButton_{j+1}") - btn.clicked.connect( - lambda _, x=j: self.ProcessSendButtonGeneric(x)) + # for j in range(self.tblCommands.rowCount()): + # btn = self.tblCommands.cellWidget(j, 1) + # btn.clicked.connect( + # lambda _, x=j: self.ProcessSendButtonGeneric(x)) # # Determines if command requires parameters @@ -89,16 +93,22 @@ def ProcessSendButtonGeneric(self, idx): f'--host=\"{address}\" --port={pagePort} ' f'--pktid={pagePktId} --endian={pageEndian} ' f'--cmdcode={cmdCodes[idx]} --file={param_files[idx]}') - + cmd_args = shlex.split(launch_string) + subprocess.Popen(cmd_args) # If parameters not required, directly calls cmdUtil to send command else: - launch_string = ( - f'{ROOTDIR}/../cmdUtil/cmdUtil --host=\"{address}\" ' - f'--port={pagePort} --pktid={pagePktId} ' - f'--endian={pageEndian} --cmdcode={cmdCodes[idx]}') + self.mcu = MiniCmdUtil(address, pagePort, pageEndian, + pagePktId, cmdCodes[idx]) + sendSuccess = self.mcu.sendPacket() + print("Command sent successfully:", sendSuccess) + # launch_string = ( + # f'{ROOTDIR.parent}/cmdUtil/cmdUtil --host=\"{address}\" ' + # f'--port={pagePort} --pktid={pagePktId} ' + # f'--endian={pageEndian} --cmdcode={cmdCodes[idx]}') - cmd_args = shlex.split(launch_string) - subprocess.Popen(cmd_args) + def closeEvent(self, event): + self.mcu.mm.close() + super().closeEvent(event) # @@ -163,6 +173,7 @@ def usage(): Commands.subSystemLineEdit.setText(pageTitle) Commands.packetId.display(pagePktId) Commands.commandAddressLineEdit.setText(pageAddress) + tbl = Commands.tblCommands # # Reads commands from command definition file @@ -174,18 +185,22 @@ def usage(): cmdItemIsValid = [] for i in range(len(cmdDesc)): cmdItemIsValid.append(True) - for i in range(len(cmdDesc), 26): - cmdItemIsValid.append(False) # # Fill the data fields on the page # - for i in range(25): - itemLabelTextBrowser = getattr(Commands, f"itemLabelTextBrowser_{i+1}") + for i, cmd in enumerate(cmdDesc): if cmdItemIsValid[i]: - itemLabelTextBrowser.setText(cmdDesc[i]) - else: - itemLabelTextBrowser.setText("(unused)") + tbl.insertRow(i) + tblItem = QTableWidgetItem(cmdDesc[i]) + tbl.setItem(i, 0, tblItem) + tblBtn = QPushButton("Send") + tblBtn.clicked.connect( + lambda _, x=i: Commands.ProcessSendButtonGeneric(x)) + tbl.setCellWidget(i, 1, tblBtn) + tbl.horizontalHeader().setSectionResizeMode(QHeaderView.ResizeToContents) + tbl.horizontalHeader().setStretchLastSection(True) + # tbl.verticalHeader().setSectionResizeMode(QHeaderView.Stretch) # # Display the page diff --git a/Subsystems/cmdGui/Ui_CommandSystemDialog.py b/Subsystems/cmdGui/Ui_CommandSystemDialog.py new file mode 100644 index 0000000..6ae441b --- /dev/null +++ b/Subsystems/cmdGui/Ui_CommandSystemDialog.py @@ -0,0 +1,82 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file '/home/lbleier/cFS/tools/cFS-GroundSystem/Subsystems/cmdGui/CommandSystemDialog.ui' +# +# Created by: PyQt5 UI code generator 5.10.1 +# +# WARNING! All changes made in this file will be lost! + +from PyQt5 import QtCore, QtGui, QtWidgets + +class Ui_CommandSystemDialog(object): + def setupUi(self, CommandSystemDialog): + CommandSystemDialog.setObjectName("CommandSystemDialog") + CommandSystemDialog.resize(772, 1020) + self.layoutWidget_2 = QtWidgets.QWidget(CommandSystemDialog) + self.layoutWidget_2.setGeometry(QtCore.QRect(80, 20, 621, 25)) + self.layoutWidget_2.setObjectName("layoutWidget_2") + self.horizontalLayout = QtWidgets.QHBoxLayout(self.layoutWidget_2) + self.horizontalLayout.setContentsMargins(0, 0, 0, 0) + self.horizontalLayout.setObjectName("horizontalLayout") + spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) + self.horizontalLayout.addItem(spacerItem) + self.label = QtWidgets.QLabel(self.layoutWidget_2) + self.label.setObjectName("label") + self.horizontalLayout.addWidget(self.label) + spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) + self.horizontalLayout.addItem(spacerItem1) + self.layoutWidget_3 = QtWidgets.QWidget(CommandSystemDialog) + self.layoutWidget_3.setGeometry(QtCore.QRect(80, 60, 621, 33)) + self.layoutWidget_3.setObjectName("layoutWidget_3") + self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.layoutWidget_3) + self.horizontalLayout_2.setContentsMargins(0, 0, 0, 0) + self.horizontalLayout_2.setObjectName("horizontalLayout_2") + spacerItem2 = QtWidgets.QSpacerItem(90, 20, QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Minimum) + self.horizontalLayout_2.addItem(spacerItem2) + spacerItem3 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) + self.horizontalLayout_2.addItem(spacerItem3) + self.label_2 = QtWidgets.QLabel(self.layoutWidget_3) + self.label_2.setObjectName("label_2") + self.horizontalLayout_2.addWidget(self.label_2) + spacerItem4 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) + self.horizontalLayout_2.addItem(spacerItem4) + self.buttonBox = QtWidgets.QDialogButtonBox(self.layoutWidget_3) + self.buttonBox.setOrientation(QtCore.Qt.Vertical) + self.buttonBox.setStandardButtons(QtWidgets.QDialogButtonBox.Close) + self.buttonBox.setCenterButtons(True) + self.buttonBox.setObjectName("buttonBox") + self.horizontalLayout_2.addWidget(self.buttonBox) + self.tblCmdSys = QtWidgets.QTableWidget(CommandSystemDialog) + self.tblCmdSys.setGeometry(QtCore.QRect(30, 120, 701, 721)) + self.tblCmdSys.setEditTriggers(QtWidgets.QAbstractItemView.NoEditTriggers) + self.tblCmdSys.setObjectName("tblCmdSys") + self.tblCmdSys.setColumnCount(5) + self.tblCmdSys.setRowCount(0) + item = QtWidgets.QTableWidgetItem() + self.tblCmdSys.setHorizontalHeaderItem(0, item) + item = QtWidgets.QTableWidgetItem() + self.tblCmdSys.setHorizontalHeaderItem(1, item) + item = QtWidgets.QTableWidgetItem() + self.tblCmdSys.setHorizontalHeaderItem(2, item) + item = QtWidgets.QTableWidgetItem() + self.tblCmdSys.setHorizontalHeaderItem(3, item) + item = QtWidgets.QTableWidgetItem() + self.tblCmdSys.setHorizontalHeaderItem(4, item) + self.tblCmdSys.verticalHeader().setVisible(False) + + self.retranslateUi(CommandSystemDialog) + self.buttonBox.clicked['QAbstractButton*'].connect(CommandSystemDialog.close) + QtCore.QMetaObject.connectSlotsByName(CommandSystemDialog) + + def retranslateUi(self, CommandSystemDialog): + _translate = QtCore.QCoreApplication.translate + CommandSystemDialog.setWindowTitle(_translate("CommandSystemDialog", "Command System Main Page")) + self.label.setText(_translate("CommandSystemDialog", "cFE/CFS Subsystem Commands")) + self.label_2.setText(_translate("CommandSystemDialog", "Available Pages")) + item = self.tblCmdSys.horizontalHeaderItem(0) + item.setText(_translate("CommandSystemDialog", "Subsystem/Page")) + item = self.tblCmdSys.horizontalHeaderItem(1) + item.setText(_translate("CommandSystemDialog", "Packet ID")) + item = self.tblCmdSys.horizontalHeaderItem(2) + item.setText(_translate("CommandSystemDialog", "Send To")) + diff --git a/Subsystems/cmdGui/Ui_GenericCommandDialog.py b/Subsystems/cmdGui/Ui_GenericCommandDialog.py new file mode 100644 index 0000000..f5f7f15 --- /dev/null +++ b/Subsystems/cmdGui/Ui_GenericCommandDialog.py @@ -0,0 +1,105 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file '/home/lbleier/cFS/tools/cFS-GroundSystem/Subsystems/cmdGui/GenericCommandDialog.ui' +# +# Created by: PyQt5 UI code generator 5.10.1 +# +# WARNING! All changes made in this file will be lost! + +from PyQt5 import QtCore, QtGui, QtWidgets + +class Ui_GenericCommandDialog(object): + def setupUi(self, GenericCommandDialog): + GenericCommandDialog.setObjectName("GenericCommandDialog") + GenericCommandDialog.resize(549, 1058) + self.verticalLayout_6 = QtWidgets.QVBoxLayout(GenericCommandDialog) + self.verticalLayout_6.setObjectName("verticalLayout_6") + self.verticalLayout_4 = QtWidgets.QVBoxLayout() + self.verticalLayout_4.setObjectName("verticalLayout_4") + self.horizontalLayout = QtWidgets.QHBoxLayout() + self.horizontalLayout.setObjectName("horizontalLayout") + self.verticalLayout = QtWidgets.QVBoxLayout() + self.verticalLayout.setObjectName("verticalLayout") + self.subSystemCommandPageLabel = QtWidgets.QLabel(GenericCommandDialog) + self.subSystemCommandPageLabel.setAlignment(QtCore.Qt.AlignCenter) + self.subSystemCommandPageLabel.setObjectName("subSystemCommandPageLabel") + self.verticalLayout.addWidget(self.subSystemCommandPageLabel) + self.subSystemLineEdit = QtWidgets.QLineEdit(GenericCommandDialog) + self.subSystemLineEdit.setMinimumSize(QtCore.QSize(159, 31)) + self.subSystemLineEdit.setMaximumSize(QtCore.QSize(300, 31)) + self.subSystemLineEdit.setObjectName("subSystemLineEdit") + self.verticalLayout.addWidget(self.subSystemLineEdit) + self.horizontalLayout.addLayout(self.verticalLayout) + self.verticalLayout_2 = QtWidgets.QVBoxLayout() + self.verticalLayout_2.setObjectName("verticalLayout_2") + self.packetIdLabel = QtWidgets.QLabel(GenericCommandDialog) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.packetIdLabel.sizePolicy().hasHeightForWidth()) + self.packetIdLabel.setSizePolicy(sizePolicy) + self.packetIdLabel.setMinimumSize(QtCore.QSize(0, 13)) + self.packetIdLabel.setMaximumSize(QtCore.QSize(16777193, 13)) + self.packetIdLabel.setObjectName("packetIdLabel") + self.verticalLayout_2.addWidget(self.packetIdLabel) + self.packetId = QtWidgets.QLCDNumber(GenericCommandDialog) + self.packetId.setObjectName("packetId") + self.verticalLayout_2.addWidget(self.packetId) + self.horizontalLayout.addLayout(self.verticalLayout_2) + self.verticalLayout_3 = QtWidgets.QVBoxLayout() + self.verticalLayout_3.setObjectName("verticalLayout_3") + self.label_5 = QtWidgets.QLabel(GenericCommandDialog) + self.label_5.setAlignment(QtCore.Qt.AlignCenter) + self.label_5.setObjectName("label_5") + self.verticalLayout_3.addWidget(self.label_5) + self.commandAddressLineEdit = QtWidgets.QLineEdit(GenericCommandDialog) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.commandAddressLineEdit.sizePolicy().hasHeightForWidth()) + self.commandAddressLineEdit.setSizePolicy(sizePolicy) + self.commandAddressLineEdit.setMinimumSize(QtCore.QSize(135, 31)) + self.commandAddressLineEdit.setMaximumSize(QtCore.QSize(135, 31)) + self.commandAddressLineEdit.setObjectName("commandAddressLineEdit") + self.verticalLayout_3.addWidget(self.commandAddressLineEdit) + self.horizontalLayout.addLayout(self.verticalLayout_3) + spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) + self.horizontalLayout.addItem(spacerItem) + self.buttonBox = QtWidgets.QDialogButtonBox(GenericCommandDialog) + self.buttonBox.setOrientation(QtCore.Qt.Horizontal) + self.buttonBox.setStandardButtons(QtWidgets.QDialogButtonBox.Close) + self.buttonBox.setObjectName("buttonBox") + self.horizontalLayout.addWidget(self.buttonBox) + self.verticalLayout_4.addLayout(self.horizontalLayout) + self.label = QtWidgets.QLabel(GenericCommandDialog) + self.label.setAlignment(QtCore.Qt.AlignCenter) + self.label.setObjectName("label") + self.verticalLayout_4.addWidget(self.label) + self.tblCommands = QtWidgets.QTableWidget(GenericCommandDialog) + self.tblCommands.setEditTriggers(QtWidgets.QAbstractItemView.NoEditTriggers) + self.tblCommands.setObjectName("tblCommands") + self.tblCommands.setColumnCount(2) + self.tblCommands.setRowCount(0) + item = QtWidgets.QTableWidgetItem() + self.tblCommands.setHorizontalHeaderItem(0, item) + item = QtWidgets.QTableWidgetItem() + self.tblCommands.setHorizontalHeaderItem(1, item) + self.tblCommands.verticalHeader().setVisible(False) + self.tblCommands.verticalHeader().setMinimumSectionSize(40) + self.verticalLayout_4.addWidget(self.tblCommands) + self.verticalLayout_6.addLayout(self.verticalLayout_4) + + self.retranslateUi(GenericCommandDialog) + self.buttonBox.clicked['QAbstractButton*'].connect(GenericCommandDialog.close) + QtCore.QMetaObject.connectSlotsByName(GenericCommandDialog) + + def retranslateUi(self, GenericCommandDialog): + _translate = QtCore.QCoreApplication.translate + GenericCommandDialog.setWindowTitle(_translate("GenericCommandDialog", "Command Page")) + self.subSystemCommandPageLabel.setText(_translate("GenericCommandDialog", "Subsystem")) + self.packetIdLabel.setText(_translate("GenericCommandDialog", "Packet ID")) + self.label_5.setText(_translate("GenericCommandDialog", "Send To:")) + self.label.setText(_translate("GenericCommandDialog", "Command")) + item = self.tblCommands.horizontalHeaderItem(0) + item.setText(_translate("GenericCommandDialog", "Command")) + diff --git a/Subsystems/cmdGui/Ui_ParameterDialog.py b/Subsystems/cmdGui/Ui_ParameterDialog.py new file mode 100644 index 0000000..cfe226a --- /dev/null +++ b/Subsystems/cmdGui/Ui_ParameterDialog.py @@ -0,0 +1,94 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file '/home/lbleier/cFS/tools/cFS-GroundSystem/Subsystems/cmdGui/ParameterDialog.ui' +# +# Created by: PyQt5 UI code generator 5.10.1 +# +# WARNING! All changes made in this file will be lost! + +from PyQt5 import QtCore, QtGui, QtWidgets + +class Ui_Dialog(object): + def setupUi(self, Dialog): + Dialog.setObjectName("Dialog") + Dialog.setEnabled(True) + Dialog.resize(782, 550) + self.label_title = QtWidgets.QLabel(Dialog) + self.label_title.setGeometry(QtCore.QRect(330, 120, 91, 31)) + font = QtGui.QFont() + font.setFamily("Sans Serif") + font.setPointSize(10) + self.label_title.setFont(font) + self.label_title.setAlignment(QtCore.Qt.AlignCenter) + self.label_title.setObjectName("label_title") + self.label_instructions = QtWidgets.QLabel(Dialog) + self.label_instructions.setGeometry(QtCore.QRect(120, 140, 551, 31)) + self.label_instructions.setAlignment(QtCore.Qt.AlignCenter) + self.label_instructions.setObjectName("label_instructions") + self.buttonBox = QtWidgets.QDialogButtonBox(Dialog) + self.buttonBox.setGeometry(QtCore.QRect(670, 490, 101, 31)) + self.buttonBox.setLayoutDirection(QtCore.Qt.LeftToRight) + self.buttonBox.setOrientation(QtCore.Qt.Horizontal) + self.buttonBox.setStandardButtons(QtWidgets.QDialogButtonBox.Close) + self.buttonBox.setCenterButtons(True) + self.buttonBox.setObjectName("buttonBox") + self.status_box = QtWidgets.QTextBrowser(Dialog) + self.status_box.setGeometry(QtCore.QRect(480, 40, 201, 41)) + self.status_box.setAutoFillBackground(False) + self.status_box.setObjectName("status_box") + self.label_param_title_2 = QtWidgets.QLabel(Dialog) + self.label_param_title_2.setGeometry(QtCore.QRect(480, 10, 61, 21)) + self.label_param_title_2.setObjectName("label_param_title_2") + self.SendButton_1 = QtWidgets.QPushButton(Dialog) + self.SendButton_1.setGeometry(QtCore.QRect(690, 47, 71, 27)) + self.SendButton_1.setAutoDefault(False) + self.SendButton_1.setDefault(True) + self.SendButton_1.setObjectName("SendButton_1") + self.label_5 = QtWidgets.QLabel(Dialog) + self.label_5.setGeometry(QtCore.QRect(260, 10, 81, 20)) + self.label_5.setObjectName("label_5") + self.subSystemCommandPageLabel = QtWidgets.QLabel(Dialog) + self.subSystemCommandPageLabel.setGeometry(QtCore.QRect(30, 10, 91, 24)) + self.subSystemCommandPageLabel.setObjectName("subSystemCommandPageLabel") + self.subSystemTextBrowser = QtWidgets.QTextBrowser(Dialog) + self.subSystemTextBrowser.setGeometry(QtCore.QRect(30, 40, 221, 41)) + self.subSystemTextBrowser.setObjectName("subSystemTextBrowser") + self.commandAddressTextBrowser = QtWidgets.QTextBrowser(Dialog) + self.commandAddressTextBrowser.setGeometry(QtCore.QRect(260, 40, 211, 41)) + self.commandAddressTextBrowser.setObjectName("commandAddressTextBrowser") + self.tblParameters = QtWidgets.QTableWidget(Dialog) + self.tblParameters.setGeometry(QtCore.QRect(20, 180, 731, 301)) + self.tblParameters.setObjectName("tblParameters") + self.tblParameters.setColumnCount(3) + self.tblParameters.setRowCount(0) + item = QtWidgets.QTableWidgetItem() + self.tblParameters.setHorizontalHeaderItem(0, item) + item = QtWidgets.QTableWidgetItem() + self.tblParameters.setHorizontalHeaderItem(1, item) + item = QtWidgets.QTableWidgetItem() + self.tblParameters.setHorizontalHeaderItem(2, item) + self.tblParameters.verticalHeader().setVisible(False) + + self.retranslateUi(Dialog) + self.buttonBox.clicked['QAbstractButton*'].connect(Dialog.close) + QtCore.QMetaObject.connectSlotsByName(Dialog) + Dialog.setTabOrder(self.status_box, self.SendButton_1) + Dialog.setTabOrder(self.SendButton_1, self.subSystemTextBrowser) + Dialog.setTabOrder(self.subSystemTextBrowser, self.commandAddressTextBrowser) + + def retranslateUi(self, Dialog): + _translate = QtCore.QCoreApplication.translate + Dialog.setWindowTitle(_translate("Dialog", "Dialog")) + self.label_title.setText(_translate("Dialog", "Parameters")) + self.label_instructions.setText(_translate("Dialog", "Please enter the following parameters then click \'Send\':")) + self.label_param_title_2.setText(_translate("Dialog", "Status:")) + self.SendButton_1.setText(_translate("Dialog", "Send")) + self.label_5.setText(_translate("Dialog", "Command:")) + self.subSystemCommandPageLabel.setText(_translate("Dialog", "Subsystem:")) + item = self.tblParameters.horizontalHeaderItem(0) + item.setText(_translate("Dialog", "Parameter")) + item = self.tblParameters.horizontalHeaderItem(1) + item.setText(_translate("Dialog", "Description")) + item = self.tblParameters.horizontalHeaderItem(2) + item.setText(_translate("Dialog", "Input")) + diff --git a/Subsystems/tlmGUI/EventMessage.py b/Subsystems/tlmGUI/EventMessage.py index c067f75..5d31fd9 100644 --- a/Subsystems/tlmGUI/EventMessage.py +++ b/Subsystems/tlmGUI/EventMessage.py @@ -24,41 +24,30 @@ # The EVS Event Message has the following format # # -# ES HK format: -# -# Packet Header -# uint16 StreamId; 0 -# uint16 Sequence; 2 -# uint16 Length; 4 +# Packet Header Start Byte +# uint16 StreamId; 0 +# uint16 Sequence; 2 +# uint16 Length; 4 -# Tlm Secondary Header -# uint32 seconds 6 -# uint16 subseconds 10 +# Start byte values after primary header depend +# on header version. +# Add 4 to ALL the values below if header version 2 -# Packet data -# -# Event format: -# -# Packet Header -# uint16 StreamId; -# uint16 Sequence; -# uint16 Length; - -# Tlm Secondary Header -# uint32 seconds -# uint16 subseconds +# Tlm Secondary Header Start Byte +# uint32 seconds 6 +# uint16 subseconds 10 # Packet ID -# char AppName[20] -# uint16 EventID; -# uint16 EventType; -# uint32 SpacecraftID; -# uint32 ProcessorID; +# char AppName[20] 12 +# uint16 EventID; 32 +# uint16 EventType; 34 +# uint32 SpacecraftID; 36 +# uint32 ProcessorID; 40 # Message -# char Message[122]; -# uint8 Spare1; -# uint8 Spare2; +# char Message[122]; 44 +# uint8 Spare1; 166 +# uint8 Spare2; 167 import getopt import sys @@ -69,9 +58,13 @@ from PyQt5.QtCore import QThread, pyqtSignal from PyQt5.QtWidgets import QApplication, QDialog -from EventMessageDialog import Ui_EventMessageDialog +from Ui_EventMessageDialog import Ui_EventMessageDialog ROOTDIR = Path(sys.argv[0]).resolve().parent +sys.path.append(str(ROOTDIR.parent.parent)) +## The two preceding lines must be above +## the next import or the import will fail +from shareddata import tlmOffset class EventMessageTelemetry(QDialog, Ui_EventMessageDialog): @@ -107,13 +100,17 @@ def processPendingDatagrams(self, datagram): # # Get App Name, Event ID, Type and Event Text! # - appName = datagram[16:36].decode('utf-8', 'ignore') - eventID = int.from_bytes(datagram[36:38], byteorder='little') - eventType = int.from_bytes(datagram[38:40], byteorder='little') - eventText = datagram[48:].decode('utf-8', 'ignore') + print(tlmOffset) + startByte = 12 + tlmOffset + appName = datagram[startByte:startByte + 20].decode('utf-8', 'ignore') + eventID = int.from_bytes(datagram[startByte + 20:startByte + 22], + byteorder='little') + eventType = int.from_bytes(datagram[startByte + 22:startByte + 24], + byteorder='little') + eventText = datagram[startByte + 32:].decode('utf-8', 'ignore') appName = appName.split("\0")[0] eventText = eventText.split("\0")[0] - eventTypeStr = self.eventTypes.get(eventType, "Invalid Event Type") + eventTypeStr = self.eventTypes.get(eventType, "INVALID EVENT TYPE") eventString = f"EVENT --> {appName}-{eventTypeStr} Event ID: {eventID} : {eventText}" self.eventOutput.appendPlainText(eventString) @@ -168,9 +165,7 @@ def usage(): # Set defaults for the arguments # pageTitle = "Event Messages" - udpPort = 10000 appId = 999 - tlmDefFile = "not-needed.txt" endian = "L" subscription = "" @@ -190,11 +185,11 @@ def usage(): usage() sys.exit() if opt in ("-p", "--port"): - udpPort = arg + pass elif opt in ("-t", "--title"): pageTitle = arg elif opt in ("-f", "--file"): - tlmDefFile = arg + pass elif opt in ("-a", "--appid"): appId = arg elif opt in ("-e", "--endian"): @@ -207,8 +202,6 @@ def usage(): print('Event Messages Page started. Subscribed to', subscription) - py_endian = '<' if endian == 'L' else '>' - # # Init the QT application and the Event Message class # diff --git a/Subsystems/tlmGUI/GenericTelemetry.py b/Subsystems/tlmGUI/GenericTelemetry.py index 7d7252b..ad764ac 100644 --- a/Subsystems/tlmGUI/GenericTelemetry.py +++ b/Subsystems/tlmGUI/GenericTelemetry.py @@ -19,21 +19,28 @@ # #!/usr/bin/env python3 # - import csv import getopt +import mmap import sys from pathlib import Path from struct import unpack import zmq from PyQt5.QtCore import QThread, pyqtSignal -from PyQt5.QtWidgets import QApplication, QDialog +from PyQt5.QtWidgets import (QApplication, QDialog, QHeaderView, + QTableWidgetItem) -from GenericTelemetryDialog import Ui_GenericTelemetryDialog +from Ui_GenericTelemetryDialog import Ui_GenericTelemetryDialog +## ../cFS/tools/cFS-GroundSystem/Subsystems/tlmGUI ROOTDIR = Path(sys.argv[0]).resolve().parent +## Adds ../cFS/tools/cFS-GroundSystem to module search path +## for shared data import +# sys.path.append(str(ROOTDIR.parent.parent)) +# import shareddata as shared + class SubsystemTelemetry(QDialog, Ui_GenericTelemetryDialog): # @@ -42,18 +49,25 @@ class SubsystemTelemetry(QDialog, Ui_GenericTelemetryDialog): def __init__(self): super().__init__() self.setupUi(self) + with open("/tmp/OffsetData", "r+b") as f: + self.mm = mmap.mmap(f.fileno(), 0, prot=mmap.PROT_READ) # - # This method Decodes a telemetry item from the packet and displays it + # This method decodes a telemetry item from the packet and displays it # - @staticmethod - def displayTelemetryItem(datagram, tlmIndex, labelField, valueField): + def displayTelemetryItem(self, datagram, tlmIndex, labelField, valueField): if tlmItemIsValid[tlmIndex]: + try: + tlmOffset = self.mm[0] + except ValueError: + pass + print(tlmOffset) TlmField1 = tlmItemFormat[tlmIndex] if TlmField1[0] == "<": TlmField1 = TlmField1[1:] - TlmField2 = datagram[int(tlmItemStart[tlmIndex]):( - int(tlmItemStart[tlmIndex]) + int(tlmItemSize[tlmIndex]))] + itemStart = int(tlmItemStart[tlmIndex]) + tlmOffset + TlmField2 = datagram[itemStart:itemStart + + int(tlmItemSize[tlmIndex])] TlmField = unpack(TlmField1, TlmField2) if tlmItemDisplayType[tlmIndex] == 'Dec': valueField.setText(str(TlmField[0])) @@ -63,9 +77,7 @@ def displayTelemetryItem(datagram, tlmIndex, labelField, valueField): valueField.setText(tlmItemEnum[tlmIndex][int(TlmField[0])]) elif tlmItemDisplayType[tlmIndex] == 'Str': valueField.setText(TlmField[0].decode('utf-8', 'ignore')) - labelField.setPlainText(tlmItemDesc[tlmIndex]) - else: - labelField.setPlainText("(unused)") + labelField.setText(tlmItemDesc[tlmIndex]) # Start the telemetry receiver (see GTTlmReceiver class) def initGTTlmReceiver(self, subscr): @@ -90,10 +102,10 @@ def processPendingDatagrams(self, datagram): # # Decode and display all packet elements # - for k in range(40): - itemLabelpte = getattr(self, f"itemLabelPlainTextEdit_{k+1}") - itemValuele = getattr(self, f"itemValueLineEdit_{k+1}") - self.displayTelemetryItem(datagram, k, itemLabelpte, itemValuele) + for k in range(self.tblTelemetry.rowCount()): + itemLabel = self.tblTelemetry.item(k, 0) + itemValue = self.tblTelemetry.item(k, 1) + self.displayTelemetryItem(datagram, k, itemLabel, itemValue) ## Reimplements closeEvent ## to properly quit the thread @@ -101,6 +113,7 @@ def processPendingDatagrams(self, datagram): def closeEvent(self, event): self.thread.runs = False self.thread.wait(2000) + self.mm.close() super().closeEvent(event) @@ -124,7 +137,7 @@ def __init__(self, subscr): def run(self): while self.runs: # Read envelope with address - address, datagram = self.subscriber.recv_multipart() + _, datagram = self.subscriber.recv_multipart() # Send signal with received packet to front-end/GUI self.gtSignalTlmDatagram.emit(datagram) @@ -147,7 +160,7 @@ def usage(): # Set defaults for the arguments # pageTitle = "Telemetry Page" - udpPort = 10000 + # udpPort = 10000 appId = 999 tlmDefFile = f"{ROOTDIR}/telemetry_def.txt" endian = "L" @@ -169,7 +182,7 @@ def usage(): usage() sys.exit() elif opt in ("-p", "--port"): - udpPort = arg + pass elif opt in ("-t", "--title"): pageTitle = arg elif opt in ("-f", "--file"): @@ -186,47 +199,49 @@ def usage(): print('Generic Telemetry Page started. Subscribed to', subscription) - py_endian = '<' if endian == 'L' else '>' + py_endian = '<' if endian.upper() == 'L' else '>' # # Init the QT application and the telemetry class # app = QApplication(sys.argv) Telem = SubsystemTelemetry() + tbl = Telem.tblTelemetry Telem.subSystemLineEdit.setText(pageTitle) Telem.packetId.display(appId) # # Read in the contents of the telemetry packet definition # - tlmItemIsValid, tlmItemDesc, tlmItemStart, tlmItemSize, tlmItemDisplayType, tlmItemFormat = ( - [] for _ in range(6)) - tlmItemEnum = [[]] * 40 + tlmItemIsValid, tlmItemDesc, \ + tlmItemStart, tlmItemSize, \ + tlmItemDisplayType, tlmItemFormat = ([] for _ in range(6)) + + tlmItemEnum = [None] * 40 i = 0 with open(f"{ROOTDIR}/{tlmDefFile}") as tlmfile: reader = csv.reader(tlmfile, skipinitialspace=True) for row in reader: - if row[0][0] != '#': + if not row[0].startswith("#"): tlmItemIsValid.append(True) tlmItemDesc.append(row[0]) tlmItemStart.append(row[1]) tlmItemSize.append(row[2]) - if row[3] == 's': - tlmItemFormat.append(row[2] + row[3]) + if row[3].lower() == 's': + tlmItemFormat.append(f'{row[2]}{row[3]}') else: - tlmItemFormat.append(py_endian + row[3]) + tlmItemFormat.append(f'{py_endian}{row[3]}') tlmItemDisplayType.append(row[4]) if row[4] == 'Enm': - for m in range(5, 9): - tlmItemEnum[i].append(row[m]) + tlmItemEnum[i] = row[5:9] + Telem.tblTelemetry.insertRow(i) + lblItem, valItem = QTableWidgetItem(), QTableWidgetItem() + Telem.tblTelemetry.setItem(i, 0, lblItem) + Telem.tblTelemetry.setItem(i, 1, valItem) i += 1 - - # - # Mark the remaining values as invalid - # - for j in range(i, 40): - tlmItemIsValid.append(False) + tbl.horizontalHeader().setSectionResizeMode(QHeaderView.Stretch) + tbl.verticalHeader().setSectionResizeMode(QHeaderView.Stretch) # # Display the page diff --git a/Subsystems/tlmGUI/GenericTelemetryDialog.py b/Subsystems/tlmGUI/GenericTelemetryDialog.py deleted file mode 100644 index 85e1944..0000000 --- a/Subsystems/tlmGUI/GenericTelemetryDialog.py +++ /dev/null @@ -1,861 +0,0 @@ -# -*- coding: utf-8 -*- - -# Form implementation generated from reading ui file '/home/lbleier/cFS/tools/cFS-GroundSystem/Subsystems/tlmGUI/GenericTelemetryDialog.ui' -# -# Created by: PyQt5 UI code generator 5.10.1 -# -# WARNING! All changes made in this file will be lost! - -from PyQt5 import QtCore, QtGui, QtWidgets - -class Ui_GenericTelemetryDialog(object): - def setupUi(self, GenericTelemetryDialog): - GenericTelemetryDialog.setObjectName("GenericTelemetryDialog") - GenericTelemetryDialog.resize(1046, 816) - self.layoutWidget = QtWidgets.QWidget(GenericTelemetryDialog) - self.layoutWidget.setGeometry(QtCore.QRect(40, 22, 841, 65)) - self.layoutWidget.setObjectName("layoutWidget") - self.horizontalLayout = QtWidgets.QHBoxLayout(self.layoutWidget) - self.horizontalLayout.setContentsMargins(0, 0, 0, 0) - self.horizontalLayout.setObjectName("horizontalLayout") - self.verticalLayout_2 = QtWidgets.QVBoxLayout() - self.verticalLayout_2.setObjectName("verticalLayout_2") - self.subSystemTelemetryPageLabel = QtWidgets.QLabel(self.layoutWidget) - self.subSystemTelemetryPageLabel.setObjectName("subSystemTelemetryPageLabel") - self.verticalLayout_2.addWidget(self.subSystemTelemetryPageLabel) - self.subSystemLineEdit = QtWidgets.QLineEdit(self.layoutWidget) - self.subSystemLineEdit.setMinimumSize(QtCore.QSize(141, 31)) - self.subSystemLineEdit.setMaximumSize(QtCore.QSize(141, 31)) - self.subSystemLineEdit.setReadOnly(True) - self.subSystemLineEdit.setObjectName("subSystemLineEdit") - self.verticalLayout_2.addWidget(self.subSystemLineEdit) - self.horizontalLayout.addLayout(self.verticalLayout_2) - spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout.addItem(spacerItem) - self.verticalLayout = QtWidgets.QVBoxLayout() - self.verticalLayout.setObjectName("verticalLayout") - self.packetIdLabel = QtWidgets.QLabel(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.packetIdLabel.sizePolicy().hasHeightForWidth()) - self.packetIdLabel.setSizePolicy(sizePolicy) - self.packetIdLabel.setMinimumSize(QtCore.QSize(0, 21)) - self.packetIdLabel.setMaximumSize(QtCore.QSize(16777215, 25)) - self.packetIdLabel.setObjectName("packetIdLabel") - self.verticalLayout.addWidget(self.packetIdLabel) - self.packetId = QtWidgets.QLCDNumber(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Minimum) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.packetId.sizePolicy().hasHeightForWidth()) - self.packetId.setSizePolicy(sizePolicy) - self.packetId.setObjectName("packetId") - self.verticalLayout.addWidget(self.packetId) - self.horizontalLayout.addLayout(self.verticalLayout) - spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout.addItem(spacerItem1) - self.verticalLayout_3 = QtWidgets.QVBoxLayout() - self.verticalLayout_3.setObjectName("verticalLayout_3") - self.label_5 = QtWidgets.QLabel(self.layoutWidget) - self.label_5.setObjectName("label_5") - self.verticalLayout_3.addWidget(self.label_5) - self.sequenceCount = QtWidgets.QSpinBox(self.layoutWidget) - self.sequenceCount.setMinimumSize(QtCore.QSize(101, 31)) - self.sequenceCount.setMaximumSize(QtCore.QSize(101, 31)) - self.sequenceCount.setButtonSymbols(QtWidgets.QAbstractSpinBox.NoButtons) - self.sequenceCount.setMaximum(16384) - self.sequenceCount.setProperty("value", 0) - self.sequenceCount.setObjectName("sequenceCount") - self.verticalLayout_3.addWidget(self.sequenceCount) - self.horizontalLayout.addLayout(self.verticalLayout_3) - spacerItem2 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout.addItem(spacerItem2) - self.buttonBox = QtWidgets.QDialogButtonBox(self.layoutWidget) - self.buttonBox.setStandardButtons(QtWidgets.QDialogButtonBox.Close) - self.buttonBox.setObjectName("buttonBox") - self.horizontalLayout.addWidget(self.buttonBox) - self.label_6 = QtWidgets.QLabel(GenericTelemetryDialog) - self.label_6.setGeometry(QtCore.QRect(29, 750, 711, 19)) - font = QtGui.QFont() - font.setPointSize(12) - self.label_6.setFont(font) - self.label_6.setObjectName("label_6") - self.layoutWidget_2 = QtWidgets.QWidget(GenericTelemetryDialog) - self.layoutWidget_2.setGeometry(QtCore.QRect(40, 100, 451, 23)) - self.layoutWidget_2.setObjectName("layoutWidget_2") - self.horizontalLayout_4 = QtWidgets.QHBoxLayout(self.layoutWidget_2) - self.horizontalLayout_4.setContentsMargins(0, 0, 0, 0) - self.horizontalLayout_4.setObjectName("horizontalLayout_4") - self.label = QtWidgets.QLabel(self.layoutWidget_2) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label.sizePolicy().hasHeightForWidth()) - self.label.setSizePolicy(sizePolicy) - self.label.setMinimumSize(QtCore.QSize(161, 17)) - self.label.setAlignment(QtCore.Qt.AlignCenter) - self.label.setObjectName("label") - self.horizontalLayout_4.addWidget(self.label) - self.label_8 = QtWidgets.QLabel(self.layoutWidget_2) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_8.sizePolicy().hasHeightForWidth()) - self.label_8.setSizePolicy(sizePolicy) - self.label_8.setMinimumSize(QtCore.QSize(161, 17)) - self.label_8.setAlignment(QtCore.Qt.AlignCenter) - self.label_8.setObjectName("label_8") - self.horizontalLayout_4.addWidget(self.label_8) - self.scrollArea = QtWidgets.QScrollArea(GenericTelemetryDialog) - self.scrollArea.setGeometry(QtCore.QRect(30, 130, 961, 601)) - self.scrollArea.setVerticalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOn) - self.scrollArea.setWidgetResizable(True) - self.scrollArea.setObjectName("scrollArea") - self.scrollAreaWidgetContents = QtWidgets.QWidget() - self.scrollAreaWidgetContents.setGeometry(QtCore.QRect(0, 0, 945, 1000)) - self.scrollAreaWidgetContents.setMinimumSize(QtCore.QSize(0, 1000)) - self.scrollAreaWidgetContents.setObjectName("scrollAreaWidgetContents") - self.horizontalLayout_3 = QtWidgets.QHBoxLayout(self.scrollAreaWidgetContents) - self.horizontalLayout_3.setObjectName("horizontalLayout_3") - self.verticalLayout_4 = QtWidgets.QVBoxLayout() - self.verticalLayout_4.setObjectName("verticalLayout_4") - self.itemLabelPlainTextEdit_1 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_1.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_1.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_1.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_1.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_1.setReadOnly(True) - self.itemLabelPlainTextEdit_1.setObjectName("itemLabelPlainTextEdit_1") - self.verticalLayout_4.addWidget(self.itemLabelPlainTextEdit_1) - self.itemLabelPlainTextEdit_2 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_2.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_2.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_2.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_2.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_2.setReadOnly(True) - self.itemLabelPlainTextEdit_2.setObjectName("itemLabelPlainTextEdit_2") - self.verticalLayout_4.addWidget(self.itemLabelPlainTextEdit_2) - self.itemLabelPlainTextEdit_3 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_3.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_3.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_3.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_3.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_3.setReadOnly(True) - self.itemLabelPlainTextEdit_3.setObjectName("itemLabelPlainTextEdit_3") - self.verticalLayout_4.addWidget(self.itemLabelPlainTextEdit_3) - self.itemLabelPlainTextEdit_4 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_4.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_4.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_4.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_4.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_4.setReadOnly(True) - self.itemLabelPlainTextEdit_4.setObjectName("itemLabelPlainTextEdit_4") - self.verticalLayout_4.addWidget(self.itemLabelPlainTextEdit_4) - self.itemLabelPlainTextEdit_5 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_5.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_5.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_5.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_5.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_5.setReadOnly(True) - self.itemLabelPlainTextEdit_5.setObjectName("itemLabelPlainTextEdit_5") - self.verticalLayout_4.addWidget(self.itemLabelPlainTextEdit_5) - self.itemLabelPlainTextEdit_6 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_6.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_6.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_6.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_6.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_6.setReadOnly(True) - self.itemLabelPlainTextEdit_6.setObjectName("itemLabelPlainTextEdit_6") - self.verticalLayout_4.addWidget(self.itemLabelPlainTextEdit_6) - self.itemLabelPlainTextEdit_7 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_7.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_7.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_7.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_7.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_7.setReadOnly(True) - self.itemLabelPlainTextEdit_7.setObjectName("itemLabelPlainTextEdit_7") - self.verticalLayout_4.addWidget(self.itemLabelPlainTextEdit_7) - self.itemLabelPlainTextEdit_8 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_8.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_8.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_8.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_8.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_8.setReadOnly(True) - self.itemLabelPlainTextEdit_8.setObjectName("itemLabelPlainTextEdit_8") - self.verticalLayout_4.addWidget(self.itemLabelPlainTextEdit_8) - self.itemLabelPlainTextEdit_9 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_9.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_9.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_9.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_9.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_9.setReadOnly(True) - self.itemLabelPlainTextEdit_9.setObjectName("itemLabelPlainTextEdit_9") - self.verticalLayout_4.addWidget(self.itemLabelPlainTextEdit_9) - self.itemLabelPlainTextEdit_10 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_10.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_10.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_10.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_10.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_10.setReadOnly(True) - self.itemLabelPlainTextEdit_10.setObjectName("itemLabelPlainTextEdit_10") - self.verticalLayout_4.addWidget(self.itemLabelPlainTextEdit_10) - self.itemLabelPlainTextEdit_11 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_11.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_11.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_11.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_11.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_11.setReadOnly(True) - self.itemLabelPlainTextEdit_11.setObjectName("itemLabelPlainTextEdit_11") - self.verticalLayout_4.addWidget(self.itemLabelPlainTextEdit_11) - self.itemLabelPlainTextEdit_12 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_12.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_12.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_12.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_12.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_12.setReadOnly(True) - self.itemLabelPlainTextEdit_12.setObjectName("itemLabelPlainTextEdit_12") - self.verticalLayout_4.addWidget(self.itemLabelPlainTextEdit_12) - self.itemLabelPlainTextEdit_13 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_13.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_13.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_13.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_13.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_13.setReadOnly(True) - self.itemLabelPlainTextEdit_13.setObjectName("itemLabelPlainTextEdit_13") - self.verticalLayout_4.addWidget(self.itemLabelPlainTextEdit_13) - self.itemLabelPlainTextEdit_14 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_14.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_14.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_14.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_14.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_14.setReadOnly(True) - self.itemLabelPlainTextEdit_14.setObjectName("itemLabelPlainTextEdit_14") - self.verticalLayout_4.addWidget(self.itemLabelPlainTextEdit_14) - self.itemLabelPlainTextEdit_15 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_15.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_15.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_15.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_15.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_15.setReadOnly(True) - self.itemLabelPlainTextEdit_15.setObjectName("itemLabelPlainTextEdit_15") - self.verticalLayout_4.addWidget(self.itemLabelPlainTextEdit_15) - self.itemLabelPlainTextEdit_16 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_16.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_16.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_16.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_16.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_16.setReadOnly(True) - self.itemLabelPlainTextEdit_16.setObjectName("itemLabelPlainTextEdit_16") - self.verticalLayout_4.addWidget(self.itemLabelPlainTextEdit_16) - self.itemLabelPlainTextEdit_17 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_17.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_17.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_17.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_17.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_17.setReadOnly(True) - self.itemLabelPlainTextEdit_17.setObjectName("itemLabelPlainTextEdit_17") - self.verticalLayout_4.addWidget(self.itemLabelPlainTextEdit_17) - self.itemLabelPlainTextEdit_18 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_18.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_18.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_18.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_18.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_18.setReadOnly(True) - self.itemLabelPlainTextEdit_18.setObjectName("itemLabelPlainTextEdit_18") - self.verticalLayout_4.addWidget(self.itemLabelPlainTextEdit_18) - self.itemLabelPlainTextEdit_19 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_19.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_19.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_19.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_19.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_19.setReadOnly(True) - self.itemLabelPlainTextEdit_19.setObjectName("itemLabelPlainTextEdit_19") - self.verticalLayout_4.addWidget(self.itemLabelPlainTextEdit_19) - self.itemLabelPlainTextEdit_20 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_20.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_20.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_20.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_20.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_20.setReadOnly(True) - self.itemLabelPlainTextEdit_20.setObjectName("itemLabelPlainTextEdit_20") - self.verticalLayout_4.addWidget(self.itemLabelPlainTextEdit_20) - self.horizontalLayout_3.addLayout(self.verticalLayout_4) - self.verticalLayout_5 = QtWidgets.QVBoxLayout() - self.verticalLayout_5.setObjectName("verticalLayout_5") - self.itemValueLineEdit_1 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_1.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_1.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_1.setReadOnly(True) - self.itemValueLineEdit_1.setObjectName("itemValueLineEdit_1") - self.verticalLayout_5.addWidget(self.itemValueLineEdit_1) - self.itemValueLineEdit_2 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_2.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_2.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_2.setReadOnly(True) - self.itemValueLineEdit_2.setObjectName("itemValueLineEdit_2") - self.verticalLayout_5.addWidget(self.itemValueLineEdit_2) - self.itemValueLineEdit_3 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_3.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_3.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_3.setReadOnly(True) - self.itemValueLineEdit_3.setObjectName("itemValueLineEdit_3") - self.verticalLayout_5.addWidget(self.itemValueLineEdit_3) - self.itemValueLineEdit_4 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_4.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_4.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_4.setReadOnly(True) - self.itemValueLineEdit_4.setObjectName("itemValueLineEdit_4") - self.verticalLayout_5.addWidget(self.itemValueLineEdit_4) - self.itemValueLineEdit_5 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_5.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_5.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_5.setReadOnly(True) - self.itemValueLineEdit_5.setObjectName("itemValueLineEdit_5") - self.verticalLayout_5.addWidget(self.itemValueLineEdit_5) - self.itemValueLineEdit_6 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_6.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_6.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_6.setReadOnly(True) - self.itemValueLineEdit_6.setObjectName("itemValueLineEdit_6") - self.verticalLayout_5.addWidget(self.itemValueLineEdit_6) - self.itemValueLineEdit_7 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_7.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_7.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_7.setReadOnly(True) - self.itemValueLineEdit_7.setObjectName("itemValueLineEdit_7") - self.verticalLayout_5.addWidget(self.itemValueLineEdit_7) - self.itemValueLineEdit_8 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_8.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_8.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_8.setReadOnly(True) - self.itemValueLineEdit_8.setObjectName("itemValueLineEdit_8") - self.verticalLayout_5.addWidget(self.itemValueLineEdit_8) - self.itemValueLineEdit_9 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_9.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_9.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_9.setReadOnly(True) - self.itemValueLineEdit_9.setObjectName("itemValueLineEdit_9") - self.verticalLayout_5.addWidget(self.itemValueLineEdit_9) - self.itemValueLineEdit_10 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_10.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_10.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_10.setReadOnly(True) - self.itemValueLineEdit_10.setObjectName("itemValueLineEdit_10") - self.verticalLayout_5.addWidget(self.itemValueLineEdit_10) - self.itemValueLineEdit_11 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_11.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_11.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_11.setReadOnly(True) - self.itemValueLineEdit_11.setObjectName("itemValueLineEdit_11") - self.verticalLayout_5.addWidget(self.itemValueLineEdit_11) - self.itemValueLineEdit_12 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_12.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_12.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_12.setReadOnly(True) - self.itemValueLineEdit_12.setObjectName("itemValueLineEdit_12") - self.verticalLayout_5.addWidget(self.itemValueLineEdit_12) - self.itemValueLineEdit_13 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_13.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_13.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_13.setReadOnly(True) - self.itemValueLineEdit_13.setObjectName("itemValueLineEdit_13") - self.verticalLayout_5.addWidget(self.itemValueLineEdit_13) - self.itemValueLineEdit_14 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_14.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_14.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_14.setReadOnly(True) - self.itemValueLineEdit_14.setObjectName("itemValueLineEdit_14") - self.verticalLayout_5.addWidget(self.itemValueLineEdit_14) - self.itemValueLineEdit_15 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_15.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_15.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_15.setReadOnly(True) - self.itemValueLineEdit_15.setObjectName("itemValueLineEdit_15") - self.verticalLayout_5.addWidget(self.itemValueLineEdit_15) - self.itemValueLineEdit_16 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_16.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_16.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_16.setReadOnly(True) - self.itemValueLineEdit_16.setObjectName("itemValueLineEdit_16") - self.verticalLayout_5.addWidget(self.itemValueLineEdit_16) - self.itemValueLineEdit_17 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_17.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_17.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_17.setReadOnly(True) - self.itemValueLineEdit_17.setObjectName("itemValueLineEdit_17") - self.verticalLayout_5.addWidget(self.itemValueLineEdit_17) - self.itemValueLineEdit_18 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_18.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_18.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_18.setReadOnly(True) - self.itemValueLineEdit_18.setObjectName("itemValueLineEdit_18") - self.verticalLayout_5.addWidget(self.itemValueLineEdit_18) - self.itemValueLineEdit_19 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_19.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_19.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_19.setReadOnly(True) - self.itemValueLineEdit_19.setObjectName("itemValueLineEdit_19") - self.verticalLayout_5.addWidget(self.itemValueLineEdit_19) - self.itemValueLineEdit_20 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_20.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_20.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_20.setReadOnly(True) - self.itemValueLineEdit_20.setObjectName("itemValueLineEdit_20") - self.verticalLayout_5.addWidget(self.itemValueLineEdit_20) - self.horizontalLayout_3.addLayout(self.verticalLayout_5) - self.line = QtWidgets.QFrame(self.scrollAreaWidgetContents) - self.line.setFrameShape(QtWidgets.QFrame.VLine) - self.line.setFrameShadow(QtWidgets.QFrame.Sunken) - self.line.setObjectName("line") - self.horizontalLayout_3.addWidget(self.line) - self.verticalLayout_6 = QtWidgets.QVBoxLayout() - self.verticalLayout_6.setObjectName("verticalLayout_6") - self.itemLabelPlainTextEdit_21 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_21.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_21.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_21.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_21.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_21.setReadOnly(True) - self.itemLabelPlainTextEdit_21.setObjectName("itemLabelPlainTextEdit_21") - self.verticalLayout_6.addWidget(self.itemLabelPlainTextEdit_21) - self.itemLabelPlainTextEdit_22 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_22.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_22.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_22.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_22.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_22.setReadOnly(True) - self.itemLabelPlainTextEdit_22.setObjectName("itemLabelPlainTextEdit_22") - self.verticalLayout_6.addWidget(self.itemLabelPlainTextEdit_22) - self.itemLabelPlainTextEdit_23 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_23.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_23.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_23.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_23.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_23.setReadOnly(True) - self.itemLabelPlainTextEdit_23.setObjectName("itemLabelPlainTextEdit_23") - self.verticalLayout_6.addWidget(self.itemLabelPlainTextEdit_23) - self.itemLabelPlainTextEdit_24 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_24.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_24.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_24.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_24.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_24.setReadOnly(True) - self.itemLabelPlainTextEdit_24.setObjectName("itemLabelPlainTextEdit_24") - self.verticalLayout_6.addWidget(self.itemLabelPlainTextEdit_24) - self.itemLabelPlainTextEdit_25 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_25.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_25.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_25.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_25.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_25.setReadOnly(True) - self.itemLabelPlainTextEdit_25.setObjectName("itemLabelPlainTextEdit_25") - self.verticalLayout_6.addWidget(self.itemLabelPlainTextEdit_25) - self.itemLabelPlainTextEdit_26 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_26.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_26.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_26.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_26.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_26.setReadOnly(True) - self.itemLabelPlainTextEdit_26.setObjectName("itemLabelPlainTextEdit_26") - self.verticalLayout_6.addWidget(self.itemLabelPlainTextEdit_26) - self.itemLabelPlainTextEdit_27 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_27.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_27.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_27.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_27.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_27.setReadOnly(True) - self.itemLabelPlainTextEdit_27.setObjectName("itemLabelPlainTextEdit_27") - self.verticalLayout_6.addWidget(self.itemLabelPlainTextEdit_27) - self.itemLabelPlainTextEdit_28 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_28.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_28.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_28.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_28.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_28.setReadOnly(True) - self.itemLabelPlainTextEdit_28.setObjectName("itemLabelPlainTextEdit_28") - self.verticalLayout_6.addWidget(self.itemLabelPlainTextEdit_28) - self.itemLabelPlainTextEdit_29 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_29.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_29.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_29.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_29.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_29.setReadOnly(True) - self.itemLabelPlainTextEdit_29.setObjectName("itemLabelPlainTextEdit_29") - self.verticalLayout_6.addWidget(self.itemLabelPlainTextEdit_29) - self.itemLabelPlainTextEdit_30 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_30.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_30.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_30.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_30.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_30.setReadOnly(True) - self.itemLabelPlainTextEdit_30.setObjectName("itemLabelPlainTextEdit_30") - self.verticalLayout_6.addWidget(self.itemLabelPlainTextEdit_30) - self.itemLabelPlainTextEdit_31 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_31.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_31.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_31.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_31.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_31.setReadOnly(True) - self.itemLabelPlainTextEdit_31.setObjectName("itemLabelPlainTextEdit_31") - self.verticalLayout_6.addWidget(self.itemLabelPlainTextEdit_31) - self.itemLabelPlainTextEdit_32 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_32.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_32.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_32.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_32.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_32.setReadOnly(True) - self.itemLabelPlainTextEdit_32.setObjectName("itemLabelPlainTextEdit_32") - self.verticalLayout_6.addWidget(self.itemLabelPlainTextEdit_32) - self.itemLabelPlainTextEdit_33 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_33.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_33.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_33.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_33.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_33.setReadOnly(True) - self.itemLabelPlainTextEdit_33.setObjectName("itemLabelPlainTextEdit_33") - self.verticalLayout_6.addWidget(self.itemLabelPlainTextEdit_33) - self.itemLabelPlainTextEdit_34 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_34.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_34.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_34.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_34.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_34.setReadOnly(True) - self.itemLabelPlainTextEdit_34.setObjectName("itemLabelPlainTextEdit_34") - self.verticalLayout_6.addWidget(self.itemLabelPlainTextEdit_34) - self.itemLabelPlainTextEdit_35 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_35.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_35.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_35.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_35.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_35.setReadOnly(True) - self.itemLabelPlainTextEdit_35.setObjectName("itemLabelPlainTextEdit_35") - self.verticalLayout_6.addWidget(self.itemLabelPlainTextEdit_35) - self.itemLabelPlainTextEdit_36 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_36.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_36.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_36.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_36.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_36.setReadOnly(True) - self.itemLabelPlainTextEdit_36.setObjectName("itemLabelPlainTextEdit_36") - self.verticalLayout_6.addWidget(self.itemLabelPlainTextEdit_36) - self.itemLabelPlainTextEdit_37 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_37.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_37.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_37.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_37.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_37.setReadOnly(True) - self.itemLabelPlainTextEdit_37.setObjectName("itemLabelPlainTextEdit_37") - self.verticalLayout_6.addWidget(self.itemLabelPlainTextEdit_37) - self.itemLabelPlainTextEdit_38 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_38.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_38.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_38.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_38.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_38.setReadOnly(True) - self.itemLabelPlainTextEdit_38.setObjectName("itemLabelPlainTextEdit_38") - self.verticalLayout_6.addWidget(self.itemLabelPlainTextEdit_38) - self.itemLabelPlainTextEdit_39 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_39.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_39.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_39.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_39.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_39.setReadOnly(True) - self.itemLabelPlainTextEdit_39.setObjectName("itemLabelPlainTextEdit_39") - self.verticalLayout_6.addWidget(self.itemLabelPlainTextEdit_39) - self.itemLabelPlainTextEdit_40 = QtWidgets.QPlainTextEdit(self.scrollAreaWidgetContents) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.itemLabelPlainTextEdit_40.sizePolicy().hasHeightForWidth()) - self.itemLabelPlainTextEdit_40.setSizePolicy(sizePolicy) - self.itemLabelPlainTextEdit_40.setMinimumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_40.setMaximumSize(QtCore.QSize(161, 31)) - self.itemLabelPlainTextEdit_40.setReadOnly(True) - self.itemLabelPlainTextEdit_40.setObjectName("itemLabelPlainTextEdit_40") - self.verticalLayout_6.addWidget(self.itemLabelPlainTextEdit_40) - self.horizontalLayout_3.addLayout(self.verticalLayout_6) - self.verticalLayout_7 = QtWidgets.QVBoxLayout() - self.verticalLayout_7.setObjectName("verticalLayout_7") - self.itemValueLineEdit_21 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_21.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_21.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_21.setReadOnly(True) - self.itemValueLineEdit_21.setObjectName("itemValueLineEdit_21") - self.verticalLayout_7.addWidget(self.itemValueLineEdit_21) - self.itemValueLineEdit_22 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_22.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_22.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_22.setReadOnly(True) - self.itemValueLineEdit_22.setObjectName("itemValueLineEdit_22") - self.verticalLayout_7.addWidget(self.itemValueLineEdit_22) - self.itemValueLineEdit_23 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_23.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_23.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_23.setReadOnly(True) - self.itemValueLineEdit_23.setObjectName("itemValueLineEdit_23") - self.verticalLayout_7.addWidget(self.itemValueLineEdit_23) - self.itemValueLineEdit_24 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_24.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_24.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_24.setReadOnly(True) - self.itemValueLineEdit_24.setObjectName("itemValueLineEdit_24") - self.verticalLayout_7.addWidget(self.itemValueLineEdit_24) - self.itemValueLineEdit_25 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_25.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_25.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_25.setReadOnly(True) - self.itemValueLineEdit_25.setObjectName("itemValueLineEdit_25") - self.verticalLayout_7.addWidget(self.itemValueLineEdit_25) - self.itemValueLineEdit_26 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_26.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_26.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_26.setReadOnly(True) - self.itemValueLineEdit_26.setObjectName("itemValueLineEdit_26") - self.verticalLayout_7.addWidget(self.itemValueLineEdit_26) - self.itemValueLineEdit_27 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_27.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_27.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_27.setReadOnly(True) - self.itemValueLineEdit_27.setObjectName("itemValueLineEdit_27") - self.verticalLayout_7.addWidget(self.itemValueLineEdit_27) - self.itemValueLineEdit_28 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_28.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_28.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_28.setReadOnly(True) - self.itemValueLineEdit_28.setObjectName("itemValueLineEdit_28") - self.verticalLayout_7.addWidget(self.itemValueLineEdit_28) - self.itemValueLineEdit_29 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_29.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_29.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_29.setReadOnly(True) - self.itemValueLineEdit_29.setObjectName("itemValueLineEdit_29") - self.verticalLayout_7.addWidget(self.itemValueLineEdit_29) - self.itemValueLineEdit_30 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_30.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_30.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_30.setReadOnly(True) - self.itemValueLineEdit_30.setObjectName("itemValueLineEdit_30") - self.verticalLayout_7.addWidget(self.itemValueLineEdit_30) - self.itemValueLineEdit_31 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_31.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_31.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_31.setReadOnly(True) - self.itemValueLineEdit_31.setObjectName("itemValueLineEdit_31") - self.verticalLayout_7.addWidget(self.itemValueLineEdit_31) - self.itemValueLineEdit_32 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_32.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_32.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_32.setReadOnly(True) - self.itemValueLineEdit_32.setObjectName("itemValueLineEdit_32") - self.verticalLayout_7.addWidget(self.itemValueLineEdit_32) - self.itemValueLineEdit_33 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_33.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_33.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_33.setReadOnly(True) - self.itemValueLineEdit_33.setObjectName("itemValueLineEdit_33") - self.verticalLayout_7.addWidget(self.itemValueLineEdit_33) - self.itemValueLineEdit_34 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_34.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_34.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_34.setReadOnly(True) - self.itemValueLineEdit_34.setObjectName("itemValueLineEdit_34") - self.verticalLayout_7.addWidget(self.itemValueLineEdit_34) - self.itemValueLineEdit_35 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_35.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_35.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_35.setReadOnly(True) - self.itemValueLineEdit_35.setObjectName("itemValueLineEdit_35") - self.verticalLayout_7.addWidget(self.itemValueLineEdit_35) - self.itemValueLineEdit_36 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_36.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_36.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_36.setReadOnly(True) - self.itemValueLineEdit_36.setObjectName("itemValueLineEdit_36") - self.verticalLayout_7.addWidget(self.itemValueLineEdit_36) - self.itemValueLineEdit_37 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_37.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_37.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_37.setReadOnly(True) - self.itemValueLineEdit_37.setObjectName("itemValueLineEdit_37") - self.verticalLayout_7.addWidget(self.itemValueLineEdit_37) - self.itemValueLineEdit_38 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_38.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_38.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_38.setReadOnly(True) - self.itemValueLineEdit_38.setObjectName("itemValueLineEdit_38") - self.verticalLayout_7.addWidget(self.itemValueLineEdit_38) - self.itemValueLineEdit_39 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_39.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_39.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_39.setReadOnly(True) - self.itemValueLineEdit_39.setObjectName("itemValueLineEdit_39") - self.verticalLayout_7.addWidget(self.itemValueLineEdit_39) - self.itemValueLineEdit_40 = QtWidgets.QLineEdit(self.scrollAreaWidgetContents) - self.itemValueLineEdit_40.setMinimumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_40.setMaximumSize(QtCore.QSize(151, 31)) - self.itemValueLineEdit_40.setReadOnly(True) - self.itemValueLineEdit_40.setObjectName("itemValueLineEdit_40") - self.verticalLayout_7.addWidget(self.itemValueLineEdit_40) - self.horizontalLayout_3.addLayout(self.verticalLayout_7) - self.scrollArea.setWidget(self.scrollAreaWidgetContents) - self.layoutWidget_3 = QtWidgets.QWidget(GenericTelemetryDialog) - self.layoutWidget_3.setGeometry(QtCore.QRect(510, 100, 451, 23)) - self.layoutWidget_3.setObjectName("layoutWidget_3") - self.horizontalLayout_5 = QtWidgets.QHBoxLayout(self.layoutWidget_3) - self.horizontalLayout_5.setContentsMargins(0, 0, 0, 0) - self.horizontalLayout_5.setObjectName("horizontalLayout_5") - self.label_2 = QtWidgets.QLabel(self.layoutWidget_3) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_2.sizePolicy().hasHeightForWidth()) - self.label_2.setSizePolicy(sizePolicy) - self.label_2.setMinimumSize(QtCore.QSize(161, 17)) - self.label_2.setAlignment(QtCore.Qt.AlignCenter) - self.label_2.setObjectName("label_2") - self.horizontalLayout_5.addWidget(self.label_2) - self.label_9 = QtWidgets.QLabel(self.layoutWidget_3) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_9.sizePolicy().hasHeightForWidth()) - self.label_9.setSizePolicy(sizePolicy) - self.label_9.setMinimumSize(QtCore.QSize(161, 17)) - self.label_9.setAlignment(QtCore.Qt.AlignCenter) - self.label_9.setObjectName("label_9") - self.horizontalLayout_5.addWidget(self.label_9) - - self.retranslateUi(GenericTelemetryDialog) - self.buttonBox.clicked['QAbstractButton*'].connect(GenericTelemetryDialog.close) - QtCore.QMetaObject.connectSlotsByName(GenericTelemetryDialog) - - def retranslateUi(self, GenericTelemetryDialog): - _translate = QtCore.QCoreApplication.translate - GenericTelemetryDialog.setWindowTitle(_translate("GenericTelemetryDialog", "Telemetry Page")) - self.subSystemTelemetryPageLabel.setText(_translate("GenericTelemetryDialog", "Subsystem Telemetry Page")) - self.packetIdLabel.setText(_translate("GenericTelemetryDialog", "Packet ID")) - self.label_5.setText(_translate("GenericTelemetryDialog", "Sequence Count")) - self.label_6.setText(_translate("GenericTelemetryDialog", "*No packets? Remember to select the IP address of your spacecraft in the Main Window.")) - self.label.setText(_translate("GenericTelemetryDialog", "Telemetry Point Label")) - self.label_8.setText(_translate("GenericTelemetryDialog", "Telemetry Point Value")) - self.label_2.setText(_translate("GenericTelemetryDialog", "Telemetry Point Label")) - self.label_9.setText(_translate("GenericTelemetryDialog", "Telemetry Point Value")) - diff --git a/Subsystems/tlmGUI/GenericTelemetryDialog.ui b/Subsystems/tlmGUI/GenericTelemetryDialog.ui index fa9ecc6..f1d2ed2 100644 --- a/Subsystems/tlmGUI/GenericTelemetryDialog.ui +++ b/Subsystems/tlmGUI/GenericTelemetryDialog.ui @@ -6,183 +6,20 @@ 0 0 - 1046 - 816 + 574 + 836 Telemetry Page - - - - 40 - 22 - 841 - 65 - - - - - - - - - Subsystem Telemetry Page - - - - - - - - 141 - 31 - - - - - 141 - 31 - - - - true - - - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - - - 0 - 0 - - - - - 0 - 21 - - - - - 16777215 - 25 - - - - Packet ID - - - - - - - - 0 - 0 - - - - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - - Sequence Count - - - - - - - - 101 - 31 - - - - - 101 - 31 - - - - QAbstractSpinBox::NoButtons - - - 16384 - - - 0 - - - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - QDialogButtonBox::Close - - - - - 29 750 711 - 19 + 61 @@ -191,21 +28,67 @@ - *No packets? Remember to select the IP address of your spacecraft in the Main Window. + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Noto Sans'; font-size:12pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">*No packets? Remember to select the IP address of<br />your spacecraft in the Main Window.</p></body></html> - + - 40 + 20 100 - 451 - 23 + 431 + 621 - + + QAbstractItemView::NoEditTriggers + + + 200 + + + false + + + + Telemetry Point Label + + + + + Telemetry Point Value + + + + + + + 450 + 100 + 100 + 31 + + + + QDialogButtonBox::Close + + + + + + 260 + 24 + 73 + 54 + + + - + 0 @@ -214,1910 +97,110 @@ - 161 - 17 + 0 + 21 - - Telemetry Point Label + + + 16777215 + 25 + - - Qt::AlignCenter + + Packet ID - + - + 0 0 - - - 161 - 17 - - - - Telemetry Point Value - - - Qt::AlignCenter - - - - - 30 - 130 - 961 - 601 - - - - Qt::ScrollBarAlwaysOn - - - true - - - - - 0 - 0 - 945 - 1000 - - - - - 0 - 1000 - - - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - - Qt::Vertical - - - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - 0 - 0 - - - - - 161 - 31 - - - - - 161 - 31 - - - - true - - - - - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - 151 - 31 - - - - - 151 - 31 - - - - true - - - - - - - - - + - 510 - 100 - 451 - 23 + 350 + 23 + 125 + 62 - + - - - - 0 - 0 - + + + Sequence Count + + + + - 161 - 17 + 101 + 31 - - Telemetry Point Label + + + 101 + 31 + + + + QAbstractSpinBox::NoButtons + + + 16384 - - Qt::AlignCenter + + 0 + + + + + + 42 + 24 + 204 + 62 + + + - - - - 0 - 0 - + + + Subsystem Telemetry Page + + + + - 161 - 17 + 141 + 31 - - Telemetry Point Value + + + 141 + 31 + - - Qt::AlignCenter + + true diff --git a/Subsystems/tlmGUI/TelemetrySystem.py b/Subsystems/tlmGUI/TelemetrySystem.py index 1e02aa4..616a2b3 100644 --- a/Subsystems/tlmGUI/TelemetrySystem.py +++ b/Subsystems/tlmGUI/TelemetrySystem.py @@ -29,9 +29,10 @@ import zmq from PyQt5.QtCore import QThread, pyqtSignal -from PyQt5.QtWidgets import QApplication, QDialog +from PyQt5.QtWidgets import (QApplication, QDialog, QHeaderView, QPushButton, + QTableWidgetItem) -from TelemetrySystemDialog import Ui_TelemetrySystemDialog +from Ui_TelemetrySystemDialog import Ui_TelemetrySystemDialog ROOTDIR = Path(sys.argv[0]).resolve().parent @@ -49,10 +50,10 @@ def __init__(self): self.pktCount = 0 self.subscription = None - for k in range(21): - pushButton = getattr(self, f"pushButton_{k}") - pushButton.clicked.connect( - lambda _, x=k: self.ProcessButtonGeneric(x)) + # for k in range(21): + # pushButton = getattr(self, f"pushButton_{k}") + # pushButton.clicked.connect( + # lambda _, x=k: self.ProcessButtonGeneric(x)) # # convert a string of binary bytes to ascii hex @@ -97,7 +98,8 @@ def initTSTlmReceiver(self, subscr): self.thread.start() # - # This method processes packets. Called when the TelemetryReceiver receives a message/packet + # This method processes packets. + # Called when the TelemetryReceiver receives a message/packet # def processPendingDatagrams(self, datagram): # @@ -108,29 +110,31 @@ def processPendingDatagrams(self, datagram): # sendSocket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) # - # Decode the packet and forward it to the correct port (if there is one) + # Decode the packet and forward it to the + # correct port (if there is one) # streamId = unpack(">H", datagram[:2]) - # Uncomment the next two lines to debug + ## Uncomment the next two lines to debug # print("Packet ID =", hex(streamId[0])) # self.dumpPacket(datagram) - for l in range(21): + for l in range(self.tblTlmSys.rowCount()): if streamId[0] == tlmPageAppid[l]: # send_host = "127.0.0.1" # send_port = tlmPagePort[l] # sendSocket.sendto(datagram, (send_host, send_port)) tlmPageCount[l] += 1 - # - # I wish I knew a better way to update the count field in the GUI - # Maybe store a pointer to the field in the gui - # - if l < 15: - countSpinBox_l = getattr(self, f"countSpinBox_{l}") - else: - countSpinBox_l = getattr(self, f"countSpinBox_{l+1}") - countSpinBox_l.setValue(tlmPageCount[l]) + ## I wish I knew a better way to update the count field + ## in the GUI. Maybe store a pointer to the field in the gui + self.tblTlmSys.item(l, 2).setText(str(tlmPageCount[l])) + + ## Unclear why line 15 is skipped. Removing for now, need + ## to evaluate long term (lbleier 06/01/2020) + # if l < 15: + # self.tblTlmSys.item(l, 2).setText(str(tlmPageCount[l])) + # else: + # self.tblTlmSys.item(l + 1, 2).setText(str(tlmPageCount[l])) ## Reimplements closeEvent ## to properly quit the thread @@ -159,7 +163,7 @@ def __init__(self, subscr): def run(self): while self.runs: # Receive and read envelope with address - address, datagram = self.subscriber.recv_multipart() + _, datagram = self.subscriber.recv_multipart() # Send signal with received packet to front-end/GUI self.tsSignalTlmDatagram.emit(datagram) @@ -173,6 +177,7 @@ def run(self): # app = QApplication(sys.argv) Telem = TelemetrySystem() + tbl = Telem.tblTlmSys # # Set defaults for the arguments @@ -207,7 +212,7 @@ def run(self): with open(tlmDefFile) as tlmfile: reader = csv.reader(tlmfile, skipinitialspace=True) for row in reader: - if row[0][0] != '#': + if not row[0].startswith('#'): tlmPageIsValid.append(True) tlmPageDesc.append(row[0]) tlmClass.append(row[1]) @@ -217,25 +222,27 @@ def run(self): tlmPageCount.append(0) i += 1 # - # Mark the remaining values ad invalid + # Mark the remaining values as invalid # - for j in range(i, 21): - tlmPageAppid.append(0) - tlmPageIsValid.append(False) + # for _ in range(i, 21): + # tlmPageAppid.append(0) + # tlmPageIsValid.append(False) # # fill the data fields on the page # - for i in range(21): - subsysBrowser = getattr(Telem, f"SubsysBrowser_{i}") + for i, desc in enumerate(tlmPageDesc): if tlmPageIsValid[i]: - pktidBrowser = getattr(Telem, f"pktidBrowser_{i}") - countSpinBox = getattr(Telem, f"countSpinBox_{i}") - subsysBrowser.setPlainText(tlmPageDesc[i]) - pktidBrowser.setText(hex(tlmPageAppid[i])) - countSpinBox.setValue(tlmPageCount[0]) - else: - subsysBrowser.setPlainText("(unused)") + tbl.insertRow(i) + for col, text in enumerate( + (desc, hex(tlmPageAppid[i]), tlmPageCount[0])): + tblItem = QTableWidgetItem(str(text)) + tbl.setItem(i, col, tblItem) + btn = QPushButton("Display Page") + btn.clicked.connect(lambda _, x=i: Telem.ProcessButtonGeneric(x)) + tbl.setCellWidget(i, tbl.columnCount() - 1, btn) + tbl.horizontalHeader().setSectionResizeMode(QHeaderView.ResizeToContents) + tbl.horizontalHeader().setStretchLastSection(True) # # Display the page diff --git a/Subsystems/tlmGUI/TelemetrySystemDialog.py b/Subsystems/tlmGUI/TelemetrySystemDialog.py deleted file mode 100644 index 379b38b..0000000 --- a/Subsystems/tlmGUI/TelemetrySystemDialog.py +++ /dev/null @@ -1,912 +0,0 @@ -# -*- coding: utf-8 -*- - -# Form implementation generated from reading ui file '/home/lbleier/cFS/tools/cFS-GroundSystem/Subsystems/tlmGUI/TelemetrySystemDialog.ui' -# -# Created by: PyQt5 UI code generator 5.10.1 -# -# WARNING! All changes made in this file will be lost! - -from PyQt5 import QtCore, QtGui, QtWidgets - -class Ui_TelemetrySystemDialog(object): - def setupUi(self, TelemetrySystemDialog): - TelemetrySystemDialog.setObjectName("TelemetrySystemDialog") - TelemetrySystemDialog.resize(625, 908) - self.verticalLayout = QtWidgets.QVBoxLayout(TelemetrySystemDialog) - self.verticalLayout.setObjectName("verticalLayout") - self.horizontalLayout = QtWidgets.QHBoxLayout() - self.horizontalLayout.setObjectName("horizontalLayout") - spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout.addItem(spacerItem) - self.label = QtWidgets.QLabel(TelemetrySystemDialog) - self.label.setObjectName("label") - self.horizontalLayout.addWidget(self.label) - spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout.addItem(spacerItem1) - self.verticalLayout.addLayout(self.horizontalLayout) - self.horizontalLayout_3 = QtWidgets.QHBoxLayout() - self.horizontalLayout_3.setSizeConstraint(QtWidgets.QLayout.SetNoConstraint) - self.horizontalLayout_3.setObjectName("horizontalLayout_3") - spacerItem2 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout_3.addItem(spacerItem2) - spacerItem3 = QtWidgets.QSpacerItem(80, 32, QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout_3.addItem(spacerItem3) - self.horizontalLayout_2 = QtWidgets.QHBoxLayout() - self.horizontalLayout_2.setObjectName("horizontalLayout_2") - spacerItem4 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout_2.addItem(spacerItem4) - self.label_6 = QtWidgets.QLabel(TelemetrySystemDialog) - self.label_6.setObjectName("label_6") - self.horizontalLayout_2.addWidget(self.label_6) - self.packetCount = QtWidgets.QSpinBox(TelemetrySystemDialog) - self.packetCount.setReadOnly(True) - self.packetCount.setButtonSymbols(QtWidgets.QAbstractSpinBox.NoButtons) - self.packetCount.setMaximum(16384) - self.packetCount.setProperty("value", 0) - self.packetCount.setObjectName("packetCount") - self.horizontalLayout_2.addWidget(self.packetCount) - spacerItem5 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout_2.addItem(spacerItem5) - self.horizontalLayout_3.addLayout(self.horizontalLayout_2) - spacerItem6 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout_3.addItem(spacerItem6) - self.buttonBox = QtWidgets.QDialogButtonBox(TelemetrySystemDialog) - self.buttonBox.setStandardButtons(QtWidgets.QDialogButtonBox.Close) - self.buttonBox.setObjectName("buttonBox") - self.horizontalLayout_3.addWidget(self.buttonBox) - self.verticalLayout.addLayout(self.horizontalLayout_3) - self.horizontalLayout_4 = QtWidgets.QHBoxLayout() - self.horizontalLayout_4.setObjectName("horizontalLayout_4") - spacerItem7 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout_4.addItem(spacerItem7) - self.label_2 = QtWidgets.QLabel(TelemetrySystemDialog) - self.label_2.setObjectName("label_2") - self.horizontalLayout_4.addWidget(self.label_2) - spacerItem8 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout_4.addItem(spacerItem8) - self.verticalLayout.addLayout(self.horizontalLayout_4) - self.scrollArea = QtWidgets.QScrollArea(TelemetrySystemDialog) - self.scrollArea.setMinimumSize(QtCore.QSize(0, 0)) - self.scrollArea.setBaseSize(QtCore.QSize(0, 800)) - self.scrollArea.setVerticalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOn) - self.scrollArea.setWidgetResizable(True) - self.scrollArea.setObjectName("scrollArea") - self.scrollAreaWidgetContents = QtWidgets.QWidget() - self.scrollAreaWidgetContents.setGeometry(QtCore.QRect(0, 0, 591, 1000)) - self.scrollAreaWidgetContents.setMinimumSize(QtCore.QSize(0, 1000)) - self.scrollAreaWidgetContents.setObjectName("scrollAreaWidgetContents") - self.layoutWidget = QtWidgets.QWidget(self.scrollAreaWidgetContents) - self.layoutWidget.setGeometry(QtCore.QRect(10, 11, 523, 892)) - self.layoutWidget.setObjectName("layoutWidget") - self.gridLayout = QtWidgets.QGridLayout(self.layoutWidget) - self.gridLayout.setContentsMargins(0, 0, 0, 0) - self.gridLayout.setObjectName("gridLayout") - self.horizontalLayout_7 = QtWidgets.QHBoxLayout() - self.horizontalLayout_7.setObjectName("horizontalLayout_7") - self.label_3 = QtWidgets.QLabel(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_3.sizePolicy().hasHeightForWidth()) - self.label_3.setSizePolicy(sizePolicy) - self.label_3.setMinimumSize(QtCore.QSize(141, 31)) - self.label_3.setMaximumSize(QtCore.QSize(141, 31)) - self.label_3.setObjectName("label_3") - self.horizontalLayout_7.addWidget(self.label_3) - self.label_4 = QtWidgets.QLabel(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_4.sizePolicy().hasHeightForWidth()) - self.label_4.setSizePolicy(sizePolicy) - self.label_4.setMinimumSize(QtCore.QSize(81, 31)) - self.label_4.setMaximumSize(QtCore.QSize(81, 31)) - self.label_4.setObjectName("label_4") - self.horizontalLayout_7.addWidget(self.label_4) - self.label_5 = QtWidgets.QLabel(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.label_5.sizePolicy().hasHeightForWidth()) - self.label_5.setSizePolicy(sizePolicy) - self.label_5.setMinimumSize(QtCore.QSize(91, 31)) - self.label_5.setMaximumSize(QtCore.QSize(100, 31)) - self.label_5.setObjectName("label_5") - self.horizontalLayout_7.addWidget(self.label_5) - spacerItem9 = QtWidgets.QSpacerItem(110, 27, QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout_7.addItem(spacerItem9) - self.gridLayout.addLayout(self.horizontalLayout_7, 0, 0, 1, 1) - self.horizontalLayout_5 = QtWidgets.QHBoxLayout() - self.horizontalLayout_5.setObjectName("horizontalLayout_5") - self.SubsysBrowser_0 = QtWidgets.QPlainTextEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SubsysBrowser_0.sizePolicy().hasHeightForWidth()) - self.SubsysBrowser_0.setSizePolicy(sizePolicy) - self.SubsysBrowser_0.setMinimumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_0.setMaximumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_0.setObjectName("SubsysBrowser_0") - self.horizontalLayout_5.addWidget(self.SubsysBrowser_0) - self.pktidBrowser_0 = QtWidgets.QLineEdit(self.layoutWidget) - self.pktidBrowser_0.setMinimumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_0.setMaximumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_0.setObjectName("pktidBrowser_0") - self.horizontalLayout_5.addWidget(self.pktidBrowser_0) - self.countSpinBox_0 = QtWidgets.QSpinBox(self.layoutWidget) - self.countSpinBox_0.setMinimumSize(QtCore.QSize(81, 31)) - self.countSpinBox_0.setMaximumSize(QtCore.QSize(81, 31)) - self.countSpinBox_0.setReadOnly(True) - self.countSpinBox_0.setButtonSymbols(QtWidgets.QAbstractSpinBox.NoButtons) - self.countSpinBox_0.setMaximum(16384) - self.countSpinBox_0.setObjectName("countSpinBox_0") - self.horizontalLayout_5.addWidget(self.countSpinBox_0) - self.pushButton_0 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_0.sizePolicy().hasHeightForWidth()) - self.pushButton_0.setSizePolicy(sizePolicy) - self.pushButton_0.setMinimumSize(QtCore.QSize(101, 27)) - self.pushButton_0.setMaximumSize(QtCore.QSize(120, 27)) - self.pushButton_0.setObjectName("pushButton_0") - self.horizontalLayout_5.addWidget(self.pushButton_0) - self.gridLayout.addLayout(self.horizontalLayout_5, 1, 0, 1, 1) - self.horizontalLayout_6 = QtWidgets.QHBoxLayout() - self.horizontalLayout_6.setObjectName("horizontalLayout_6") - self.SubsysBrowser_1 = QtWidgets.QPlainTextEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SubsysBrowser_1.sizePolicy().hasHeightForWidth()) - self.SubsysBrowser_1.setSizePolicy(sizePolicy) - self.SubsysBrowser_1.setMinimumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_1.setMaximumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_1.setObjectName("SubsysBrowser_1") - self.horizontalLayout_6.addWidget(self.SubsysBrowser_1) - self.pktidBrowser_1 = QtWidgets.QLineEdit(self.layoutWidget) - self.pktidBrowser_1.setMinimumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_1.setMaximumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_1.setObjectName("pktidBrowser_1") - self.horizontalLayout_6.addWidget(self.pktidBrowser_1) - self.countSpinBox_1 = QtWidgets.QSpinBox(self.layoutWidget) - self.countSpinBox_1.setMinimumSize(QtCore.QSize(81, 31)) - self.countSpinBox_1.setMaximumSize(QtCore.QSize(81, 31)) - self.countSpinBox_1.setReadOnly(True) - self.countSpinBox_1.setButtonSymbols(QtWidgets.QAbstractSpinBox.NoButtons) - self.countSpinBox_1.setMaximum(16384) - self.countSpinBox_1.setObjectName("countSpinBox_1") - self.horizontalLayout_6.addWidget(self.countSpinBox_1) - self.pushButton_1 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_1.sizePolicy().hasHeightForWidth()) - self.pushButton_1.setSizePolicy(sizePolicy) - self.pushButton_1.setMinimumSize(QtCore.QSize(101, 27)) - self.pushButton_1.setMaximumSize(QtCore.QSize(120, 27)) - self.pushButton_1.setObjectName("pushButton_1") - self.horizontalLayout_6.addWidget(self.pushButton_1) - self.gridLayout.addLayout(self.horizontalLayout_6, 2, 0, 1, 1) - self.horizontalLayout_8 = QtWidgets.QHBoxLayout() - self.horizontalLayout_8.setObjectName("horizontalLayout_8") - self.SubsysBrowser_2 = QtWidgets.QPlainTextEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SubsysBrowser_2.sizePolicy().hasHeightForWidth()) - self.SubsysBrowser_2.setSizePolicy(sizePolicy) - self.SubsysBrowser_2.setMinimumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_2.setMaximumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_2.setObjectName("SubsysBrowser_2") - self.horizontalLayout_8.addWidget(self.SubsysBrowser_2) - self.pktidBrowser_2 = QtWidgets.QLineEdit(self.layoutWidget) - self.pktidBrowser_2.setMinimumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_2.setMaximumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_2.setObjectName("pktidBrowser_2") - self.horizontalLayout_8.addWidget(self.pktidBrowser_2) - self.countSpinBox_2 = QtWidgets.QSpinBox(self.layoutWidget) - self.countSpinBox_2.setMinimumSize(QtCore.QSize(81, 31)) - self.countSpinBox_2.setMaximumSize(QtCore.QSize(81, 31)) - self.countSpinBox_2.setReadOnly(True) - self.countSpinBox_2.setButtonSymbols(QtWidgets.QAbstractSpinBox.NoButtons) - self.countSpinBox_2.setMaximum(16384) - self.countSpinBox_2.setObjectName("countSpinBox_2") - self.horizontalLayout_8.addWidget(self.countSpinBox_2) - self.pushButton_2 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_2.sizePolicy().hasHeightForWidth()) - self.pushButton_2.setSizePolicy(sizePolicy) - self.pushButton_2.setMinimumSize(QtCore.QSize(101, 27)) - self.pushButton_2.setMaximumSize(QtCore.QSize(120, 27)) - self.pushButton_2.setObjectName("pushButton_2") - self.horizontalLayout_8.addWidget(self.pushButton_2) - self.gridLayout.addLayout(self.horizontalLayout_8, 3, 0, 1, 1) - self.horizontalLayout_9 = QtWidgets.QHBoxLayout() - self.horizontalLayout_9.setObjectName("horizontalLayout_9") - self.SubsysBrowser_3 = QtWidgets.QPlainTextEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SubsysBrowser_3.sizePolicy().hasHeightForWidth()) - self.SubsysBrowser_3.setSizePolicy(sizePolicy) - self.SubsysBrowser_3.setMinimumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_3.setMaximumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_3.setObjectName("SubsysBrowser_3") - self.horizontalLayout_9.addWidget(self.SubsysBrowser_3) - self.pktidBrowser_3 = QtWidgets.QLineEdit(self.layoutWidget) - self.pktidBrowser_3.setMinimumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_3.setMaximumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_3.setObjectName("pktidBrowser_3") - self.horizontalLayout_9.addWidget(self.pktidBrowser_3) - self.countSpinBox_3 = QtWidgets.QSpinBox(self.layoutWidget) - self.countSpinBox_3.setMinimumSize(QtCore.QSize(81, 31)) - self.countSpinBox_3.setMaximumSize(QtCore.QSize(81, 31)) - self.countSpinBox_3.setReadOnly(True) - self.countSpinBox_3.setButtonSymbols(QtWidgets.QAbstractSpinBox.NoButtons) - self.countSpinBox_3.setMaximum(16384) - self.countSpinBox_3.setObjectName("countSpinBox_3") - self.horizontalLayout_9.addWidget(self.countSpinBox_3) - self.pushButton_3 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_3.sizePolicy().hasHeightForWidth()) - self.pushButton_3.setSizePolicy(sizePolicy) - self.pushButton_3.setMinimumSize(QtCore.QSize(101, 27)) - self.pushButton_3.setMaximumSize(QtCore.QSize(120, 27)) - self.pushButton_3.setObjectName("pushButton_3") - self.horizontalLayout_9.addWidget(self.pushButton_3) - self.gridLayout.addLayout(self.horizontalLayout_9, 4, 0, 1, 1) - self.horizontalLayout_10 = QtWidgets.QHBoxLayout() - self.horizontalLayout_10.setObjectName("horizontalLayout_10") - self.SubsysBrowser_4 = QtWidgets.QPlainTextEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SubsysBrowser_4.sizePolicy().hasHeightForWidth()) - self.SubsysBrowser_4.setSizePolicy(sizePolicy) - self.SubsysBrowser_4.setMinimumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_4.setMaximumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_4.setObjectName("SubsysBrowser_4") - self.horizontalLayout_10.addWidget(self.SubsysBrowser_4) - self.pktidBrowser_4 = QtWidgets.QLineEdit(self.layoutWidget) - self.pktidBrowser_4.setMinimumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_4.setMaximumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_4.setObjectName("pktidBrowser_4") - self.horizontalLayout_10.addWidget(self.pktidBrowser_4) - self.countSpinBox_4 = QtWidgets.QSpinBox(self.layoutWidget) - self.countSpinBox_4.setMinimumSize(QtCore.QSize(81, 31)) - self.countSpinBox_4.setMaximumSize(QtCore.QSize(81, 31)) - self.countSpinBox_4.setReadOnly(True) - self.countSpinBox_4.setButtonSymbols(QtWidgets.QAbstractSpinBox.NoButtons) - self.countSpinBox_4.setMaximum(16384) - self.countSpinBox_4.setObjectName("countSpinBox_4") - self.horizontalLayout_10.addWidget(self.countSpinBox_4) - self.pushButton_4 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_4.sizePolicy().hasHeightForWidth()) - self.pushButton_4.setSizePolicy(sizePolicy) - self.pushButton_4.setMinimumSize(QtCore.QSize(101, 27)) - self.pushButton_4.setMaximumSize(QtCore.QSize(120, 27)) - self.pushButton_4.setObjectName("pushButton_4") - self.horizontalLayout_10.addWidget(self.pushButton_4) - self.gridLayout.addLayout(self.horizontalLayout_10, 5, 0, 1, 1) - self.horizontalLayout_11 = QtWidgets.QHBoxLayout() - self.horizontalLayout_11.setObjectName("horizontalLayout_11") - self.SubsysBrowser_5 = QtWidgets.QPlainTextEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SubsysBrowser_5.sizePolicy().hasHeightForWidth()) - self.SubsysBrowser_5.setSizePolicy(sizePolicy) - self.SubsysBrowser_5.setMinimumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_5.setMaximumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_5.setObjectName("SubsysBrowser_5") - self.horizontalLayout_11.addWidget(self.SubsysBrowser_5) - self.pktidBrowser_5 = QtWidgets.QLineEdit(self.layoutWidget) - self.pktidBrowser_5.setMinimumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_5.setMaximumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_5.setObjectName("pktidBrowser_5") - self.horizontalLayout_11.addWidget(self.pktidBrowser_5) - self.countSpinBox_5 = QtWidgets.QSpinBox(self.layoutWidget) - self.countSpinBox_5.setMinimumSize(QtCore.QSize(81, 31)) - self.countSpinBox_5.setMaximumSize(QtCore.QSize(81, 31)) - self.countSpinBox_5.setReadOnly(True) - self.countSpinBox_5.setButtonSymbols(QtWidgets.QAbstractSpinBox.NoButtons) - self.countSpinBox_5.setMaximum(16384) - self.countSpinBox_5.setObjectName("countSpinBox_5") - self.horizontalLayout_11.addWidget(self.countSpinBox_5) - self.pushButton_5 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_5.sizePolicy().hasHeightForWidth()) - self.pushButton_5.setSizePolicy(sizePolicy) - self.pushButton_5.setMinimumSize(QtCore.QSize(101, 27)) - self.pushButton_5.setMaximumSize(QtCore.QSize(120, 27)) - self.pushButton_5.setObjectName("pushButton_5") - self.horizontalLayout_11.addWidget(self.pushButton_5) - self.gridLayout.addLayout(self.horizontalLayout_11, 6, 0, 1, 1) - self.horizontalLayout_12 = QtWidgets.QHBoxLayout() - self.horizontalLayout_12.setObjectName("horizontalLayout_12") - self.SubsysBrowser_6 = QtWidgets.QPlainTextEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SubsysBrowser_6.sizePolicy().hasHeightForWidth()) - self.SubsysBrowser_6.setSizePolicy(sizePolicy) - self.SubsysBrowser_6.setMinimumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_6.setMaximumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_6.setObjectName("SubsysBrowser_6") - self.horizontalLayout_12.addWidget(self.SubsysBrowser_6) - self.pktidBrowser_6 = QtWidgets.QLineEdit(self.layoutWidget) - self.pktidBrowser_6.setMinimumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_6.setMaximumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_6.setObjectName("pktidBrowser_6") - self.horizontalLayout_12.addWidget(self.pktidBrowser_6) - self.countSpinBox_6 = QtWidgets.QSpinBox(self.layoutWidget) - self.countSpinBox_6.setMinimumSize(QtCore.QSize(81, 31)) - self.countSpinBox_6.setMaximumSize(QtCore.QSize(81, 31)) - self.countSpinBox_6.setReadOnly(True) - self.countSpinBox_6.setButtonSymbols(QtWidgets.QAbstractSpinBox.NoButtons) - self.countSpinBox_6.setMaximum(16384) - self.countSpinBox_6.setObjectName("countSpinBox_6") - self.horizontalLayout_12.addWidget(self.countSpinBox_6) - self.pushButton_6 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_6.sizePolicy().hasHeightForWidth()) - self.pushButton_6.setSizePolicy(sizePolicy) - self.pushButton_6.setMinimumSize(QtCore.QSize(101, 27)) - self.pushButton_6.setMaximumSize(QtCore.QSize(120, 27)) - self.pushButton_6.setObjectName("pushButton_6") - self.horizontalLayout_12.addWidget(self.pushButton_6) - self.gridLayout.addLayout(self.horizontalLayout_12, 7, 0, 1, 1) - self.horizontalLayout_13 = QtWidgets.QHBoxLayout() - self.horizontalLayout_13.setObjectName("horizontalLayout_13") - self.SubsysBrowser_7 = QtWidgets.QPlainTextEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SubsysBrowser_7.sizePolicy().hasHeightForWidth()) - self.SubsysBrowser_7.setSizePolicy(sizePolicy) - self.SubsysBrowser_7.setMinimumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_7.setMaximumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_7.setObjectName("SubsysBrowser_7") - self.horizontalLayout_13.addWidget(self.SubsysBrowser_7) - self.pktidBrowser_7 = QtWidgets.QLineEdit(self.layoutWidget) - self.pktidBrowser_7.setMinimumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_7.setMaximumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_7.setObjectName("pktidBrowser_7") - self.horizontalLayout_13.addWidget(self.pktidBrowser_7) - self.countSpinBox_7 = QtWidgets.QSpinBox(self.layoutWidget) - self.countSpinBox_7.setMinimumSize(QtCore.QSize(81, 31)) - self.countSpinBox_7.setMaximumSize(QtCore.QSize(81, 31)) - self.countSpinBox_7.setReadOnly(True) - self.countSpinBox_7.setButtonSymbols(QtWidgets.QAbstractSpinBox.NoButtons) - self.countSpinBox_7.setMaximum(16384) - self.countSpinBox_7.setObjectName("countSpinBox_7") - self.horizontalLayout_13.addWidget(self.countSpinBox_7) - self.pushButton_7 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_7.sizePolicy().hasHeightForWidth()) - self.pushButton_7.setSizePolicy(sizePolicy) - self.pushButton_7.setMinimumSize(QtCore.QSize(101, 27)) - self.pushButton_7.setMaximumSize(QtCore.QSize(120, 27)) - self.pushButton_7.setObjectName("pushButton_7") - self.horizontalLayout_13.addWidget(self.pushButton_7) - self.gridLayout.addLayout(self.horizontalLayout_13, 8, 0, 1, 1) - self.horizontalLayout_14 = QtWidgets.QHBoxLayout() - self.horizontalLayout_14.setObjectName("horizontalLayout_14") - self.SubsysBrowser_8 = QtWidgets.QPlainTextEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SubsysBrowser_8.sizePolicy().hasHeightForWidth()) - self.SubsysBrowser_8.setSizePolicy(sizePolicy) - self.SubsysBrowser_8.setMinimumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_8.setMaximumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_8.setObjectName("SubsysBrowser_8") - self.horizontalLayout_14.addWidget(self.SubsysBrowser_8) - self.pktidBrowser_8 = QtWidgets.QLineEdit(self.layoutWidget) - self.pktidBrowser_8.setMinimumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_8.setMaximumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_8.setObjectName("pktidBrowser_8") - self.horizontalLayout_14.addWidget(self.pktidBrowser_8) - self.countSpinBox_8 = QtWidgets.QSpinBox(self.layoutWidget) - self.countSpinBox_8.setMinimumSize(QtCore.QSize(81, 31)) - self.countSpinBox_8.setMaximumSize(QtCore.QSize(81, 31)) - self.countSpinBox_8.setReadOnly(True) - self.countSpinBox_8.setButtonSymbols(QtWidgets.QAbstractSpinBox.NoButtons) - self.countSpinBox_8.setMaximum(16384) - self.countSpinBox_8.setObjectName("countSpinBox_8") - self.horizontalLayout_14.addWidget(self.countSpinBox_8) - self.pushButton_8 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_8.sizePolicy().hasHeightForWidth()) - self.pushButton_8.setSizePolicy(sizePolicy) - self.pushButton_8.setMinimumSize(QtCore.QSize(101, 27)) - self.pushButton_8.setMaximumSize(QtCore.QSize(120, 27)) - self.pushButton_8.setObjectName("pushButton_8") - self.horizontalLayout_14.addWidget(self.pushButton_8) - self.gridLayout.addLayout(self.horizontalLayout_14, 9, 0, 1, 1) - self.horizontalLayout_15 = QtWidgets.QHBoxLayout() - self.horizontalLayout_15.setObjectName("horizontalLayout_15") - self.SubsysBrowser_9 = QtWidgets.QPlainTextEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SubsysBrowser_9.sizePolicy().hasHeightForWidth()) - self.SubsysBrowser_9.setSizePolicy(sizePolicy) - self.SubsysBrowser_9.setMinimumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_9.setMaximumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_9.setObjectName("SubsysBrowser_9") - self.horizontalLayout_15.addWidget(self.SubsysBrowser_9) - self.pktidBrowser_9 = QtWidgets.QLineEdit(self.layoutWidget) - self.pktidBrowser_9.setMinimumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_9.setMaximumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_9.setObjectName("pktidBrowser_9") - self.horizontalLayout_15.addWidget(self.pktidBrowser_9) - self.countSpinBox_9 = QtWidgets.QSpinBox(self.layoutWidget) - self.countSpinBox_9.setMinimumSize(QtCore.QSize(81, 31)) - self.countSpinBox_9.setMaximumSize(QtCore.QSize(81, 31)) - self.countSpinBox_9.setReadOnly(True) - self.countSpinBox_9.setButtonSymbols(QtWidgets.QAbstractSpinBox.NoButtons) - self.countSpinBox_9.setMaximum(16384) - self.countSpinBox_9.setObjectName("countSpinBox_9") - self.horizontalLayout_15.addWidget(self.countSpinBox_9) - self.pushButton_9 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_9.sizePolicy().hasHeightForWidth()) - self.pushButton_9.setSizePolicy(sizePolicy) - self.pushButton_9.setMinimumSize(QtCore.QSize(101, 27)) - self.pushButton_9.setMaximumSize(QtCore.QSize(120, 27)) - self.pushButton_9.setObjectName("pushButton_9") - self.horizontalLayout_15.addWidget(self.pushButton_9) - self.gridLayout.addLayout(self.horizontalLayout_15, 10, 0, 1, 1) - self.horizontalLayout_16 = QtWidgets.QHBoxLayout() - self.horizontalLayout_16.setObjectName("horizontalLayout_16") - self.SubsysBrowser_10 = QtWidgets.QPlainTextEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SubsysBrowser_10.sizePolicy().hasHeightForWidth()) - self.SubsysBrowser_10.setSizePolicy(sizePolicy) - self.SubsysBrowser_10.setMinimumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_10.setMaximumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_10.setObjectName("SubsysBrowser_10") - self.horizontalLayout_16.addWidget(self.SubsysBrowser_10) - self.pktidBrowser_10 = QtWidgets.QLineEdit(self.layoutWidget) - self.pktidBrowser_10.setMinimumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_10.setMaximumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_10.setObjectName("pktidBrowser_10") - self.horizontalLayout_16.addWidget(self.pktidBrowser_10) - self.countSpinBox_10 = QtWidgets.QSpinBox(self.layoutWidget) - self.countSpinBox_10.setMinimumSize(QtCore.QSize(81, 31)) - self.countSpinBox_10.setMaximumSize(QtCore.QSize(81, 31)) - self.countSpinBox_10.setReadOnly(True) - self.countSpinBox_10.setButtonSymbols(QtWidgets.QAbstractSpinBox.NoButtons) - self.countSpinBox_10.setMaximum(16384) - self.countSpinBox_10.setObjectName("countSpinBox_10") - self.horizontalLayout_16.addWidget(self.countSpinBox_10) - self.pushButton_10 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_10.sizePolicy().hasHeightForWidth()) - self.pushButton_10.setSizePolicy(sizePolicy) - self.pushButton_10.setMinimumSize(QtCore.QSize(101, 27)) - self.pushButton_10.setMaximumSize(QtCore.QSize(120, 27)) - self.pushButton_10.setObjectName("pushButton_10") - self.horizontalLayout_16.addWidget(self.pushButton_10) - self.gridLayout.addLayout(self.horizontalLayout_16, 11, 0, 1, 1) - self.horizontalLayout_17 = QtWidgets.QHBoxLayout() - self.horizontalLayout_17.setObjectName("horizontalLayout_17") - self.SubsysBrowser_11 = QtWidgets.QPlainTextEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SubsysBrowser_11.sizePolicy().hasHeightForWidth()) - self.SubsysBrowser_11.setSizePolicy(sizePolicy) - self.SubsysBrowser_11.setMinimumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_11.setMaximumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_11.setObjectName("SubsysBrowser_11") - self.horizontalLayout_17.addWidget(self.SubsysBrowser_11) - self.pktidBrowser_11 = QtWidgets.QLineEdit(self.layoutWidget) - self.pktidBrowser_11.setMinimumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_11.setMaximumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_11.setObjectName("pktidBrowser_11") - self.horizontalLayout_17.addWidget(self.pktidBrowser_11) - self.countSpinBox_11 = QtWidgets.QSpinBox(self.layoutWidget) - self.countSpinBox_11.setMinimumSize(QtCore.QSize(81, 31)) - self.countSpinBox_11.setMaximumSize(QtCore.QSize(81, 31)) - self.countSpinBox_11.setReadOnly(True) - self.countSpinBox_11.setButtonSymbols(QtWidgets.QAbstractSpinBox.NoButtons) - self.countSpinBox_11.setMaximum(16384) - self.countSpinBox_11.setObjectName("countSpinBox_11") - self.horizontalLayout_17.addWidget(self.countSpinBox_11) - self.pushButton_11 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_11.sizePolicy().hasHeightForWidth()) - self.pushButton_11.setSizePolicy(sizePolicy) - self.pushButton_11.setMinimumSize(QtCore.QSize(101, 27)) - self.pushButton_11.setMaximumSize(QtCore.QSize(120, 27)) - self.pushButton_11.setObjectName("pushButton_11") - self.horizontalLayout_17.addWidget(self.pushButton_11) - self.gridLayout.addLayout(self.horizontalLayout_17, 12, 0, 1, 1) - self.horizontalLayout_18 = QtWidgets.QHBoxLayout() - self.horizontalLayout_18.setObjectName("horizontalLayout_18") - self.SubsysBrowser_12 = QtWidgets.QPlainTextEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SubsysBrowser_12.sizePolicy().hasHeightForWidth()) - self.SubsysBrowser_12.setSizePolicy(sizePolicy) - self.SubsysBrowser_12.setMinimumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_12.setMaximumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_12.setObjectName("SubsysBrowser_12") - self.horizontalLayout_18.addWidget(self.SubsysBrowser_12) - self.pktidBrowser_12 = QtWidgets.QLineEdit(self.layoutWidget) - self.pktidBrowser_12.setMinimumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_12.setMaximumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_12.setObjectName("pktidBrowser_12") - self.horizontalLayout_18.addWidget(self.pktidBrowser_12) - self.countSpinBox_12 = QtWidgets.QSpinBox(self.layoutWidget) - self.countSpinBox_12.setMinimumSize(QtCore.QSize(81, 31)) - self.countSpinBox_12.setMaximumSize(QtCore.QSize(81, 31)) - self.countSpinBox_12.setReadOnly(True) - self.countSpinBox_12.setButtonSymbols(QtWidgets.QAbstractSpinBox.NoButtons) - self.countSpinBox_12.setMaximum(16384) - self.countSpinBox_12.setObjectName("countSpinBox_12") - self.horizontalLayout_18.addWidget(self.countSpinBox_12) - self.pushButton_12 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_12.sizePolicy().hasHeightForWidth()) - self.pushButton_12.setSizePolicy(sizePolicy) - self.pushButton_12.setMinimumSize(QtCore.QSize(101, 27)) - self.pushButton_12.setMaximumSize(QtCore.QSize(120, 27)) - self.pushButton_12.setObjectName("pushButton_12") - self.horizontalLayout_18.addWidget(self.pushButton_12) - self.gridLayout.addLayout(self.horizontalLayout_18, 13, 0, 1, 1) - self.horizontalLayout_19 = QtWidgets.QHBoxLayout() - self.horizontalLayout_19.setObjectName("horizontalLayout_19") - self.SubsysBrowser_13 = QtWidgets.QPlainTextEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SubsysBrowser_13.sizePolicy().hasHeightForWidth()) - self.SubsysBrowser_13.setSizePolicy(sizePolicy) - self.SubsysBrowser_13.setMinimumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_13.setMaximumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_13.setObjectName("SubsysBrowser_13") - self.horizontalLayout_19.addWidget(self.SubsysBrowser_13) - self.pktidBrowser_13 = QtWidgets.QLineEdit(self.layoutWidget) - self.pktidBrowser_13.setMinimumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_13.setMaximumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_13.setObjectName("pktidBrowser_13") - self.horizontalLayout_19.addWidget(self.pktidBrowser_13) - self.countSpinBox_13 = QtWidgets.QSpinBox(self.layoutWidget) - self.countSpinBox_13.setMinimumSize(QtCore.QSize(81, 31)) - self.countSpinBox_13.setMaximumSize(QtCore.QSize(81, 31)) - self.countSpinBox_13.setReadOnly(True) - self.countSpinBox_13.setButtonSymbols(QtWidgets.QAbstractSpinBox.NoButtons) - self.countSpinBox_13.setMaximum(16384) - self.countSpinBox_13.setObjectName("countSpinBox_13") - self.horizontalLayout_19.addWidget(self.countSpinBox_13) - self.pushButton_13 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_13.sizePolicy().hasHeightForWidth()) - self.pushButton_13.setSizePolicy(sizePolicy) - self.pushButton_13.setMinimumSize(QtCore.QSize(101, 27)) - self.pushButton_13.setMaximumSize(QtCore.QSize(120, 27)) - self.pushButton_13.setObjectName("pushButton_13") - self.horizontalLayout_19.addWidget(self.pushButton_13) - self.gridLayout.addLayout(self.horizontalLayout_19, 14, 0, 1, 1) - self.horizontalLayout_20 = QtWidgets.QHBoxLayout() - self.horizontalLayout_20.setObjectName("horizontalLayout_20") - self.SubsysBrowser_14 = QtWidgets.QPlainTextEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SubsysBrowser_14.sizePolicy().hasHeightForWidth()) - self.SubsysBrowser_14.setSizePolicy(sizePolicy) - self.SubsysBrowser_14.setMinimumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_14.setMaximumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_14.setObjectName("SubsysBrowser_14") - self.horizontalLayout_20.addWidget(self.SubsysBrowser_14) - self.pktidBrowser_14 = QtWidgets.QLineEdit(self.layoutWidget) - self.pktidBrowser_14.setMinimumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_14.setMaximumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_14.setObjectName("pktidBrowser_14") - self.horizontalLayout_20.addWidget(self.pktidBrowser_14) - self.countSpinBox_14 = QtWidgets.QSpinBox(self.layoutWidget) - self.countSpinBox_14.setMinimumSize(QtCore.QSize(81, 31)) - self.countSpinBox_14.setMaximumSize(QtCore.QSize(81, 31)) - self.countSpinBox_14.setReadOnly(True) - self.countSpinBox_14.setButtonSymbols(QtWidgets.QAbstractSpinBox.NoButtons) - self.countSpinBox_14.setMaximum(16384) - self.countSpinBox_14.setObjectName("countSpinBox_14") - self.horizontalLayout_20.addWidget(self.countSpinBox_14) - self.pushButton_14 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_14.sizePolicy().hasHeightForWidth()) - self.pushButton_14.setSizePolicy(sizePolicy) - self.pushButton_14.setMinimumSize(QtCore.QSize(101, 27)) - self.pushButton_14.setMaximumSize(QtCore.QSize(120, 27)) - self.pushButton_14.setObjectName("pushButton_14") - self.horizontalLayout_20.addWidget(self.pushButton_14) - self.gridLayout.addLayout(self.horizontalLayout_20, 15, 0, 1, 1) - self.horizontalLayout_21 = QtWidgets.QHBoxLayout() - self.horizontalLayout_21.setObjectName("horizontalLayout_21") - self.SubsysBrowser_15 = QtWidgets.QPlainTextEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SubsysBrowser_15.sizePolicy().hasHeightForWidth()) - self.SubsysBrowser_15.setSizePolicy(sizePolicy) - self.SubsysBrowser_15.setMinimumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_15.setMaximumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_15.setObjectName("SubsysBrowser_15") - self.horizontalLayout_21.addWidget(self.SubsysBrowser_15) - self.pktidBrowser_15 = QtWidgets.QLineEdit(self.layoutWidget) - self.pktidBrowser_15.setMinimumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_15.setMaximumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_15.setObjectName("pktidBrowser_15") - self.horizontalLayout_21.addWidget(self.pktidBrowser_15) - self.countSpinBox_15 = QtWidgets.QSpinBox(self.layoutWidget) - self.countSpinBox_15.setMinimumSize(QtCore.QSize(81, 31)) - self.countSpinBox_15.setMaximumSize(QtCore.QSize(81, 31)) - self.countSpinBox_15.setReadOnly(True) - self.countSpinBox_15.setButtonSymbols(QtWidgets.QAbstractSpinBox.NoButtons) - self.countSpinBox_15.setMaximum(16384) - self.countSpinBox_15.setObjectName("countSpinBox_15") - self.horizontalLayout_21.addWidget(self.countSpinBox_15) - self.pushButton_15 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_15.sizePolicy().hasHeightForWidth()) - self.pushButton_15.setSizePolicy(sizePolicy) - self.pushButton_15.setMinimumSize(QtCore.QSize(101, 27)) - self.pushButton_15.setMaximumSize(QtCore.QSize(120, 27)) - self.pushButton_15.setObjectName("pushButton_15") - self.horizontalLayout_21.addWidget(self.pushButton_15) - self.gridLayout.addLayout(self.horizontalLayout_21, 16, 0, 1, 1) - self.horizontalLayout_22 = QtWidgets.QHBoxLayout() - self.horizontalLayout_22.setObjectName("horizontalLayout_22") - self.SubsysBrowser_16 = QtWidgets.QPlainTextEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SubsysBrowser_16.sizePolicy().hasHeightForWidth()) - self.SubsysBrowser_16.setSizePolicy(sizePolicy) - self.SubsysBrowser_16.setMinimumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_16.setMaximumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_16.setObjectName("SubsysBrowser_16") - self.horizontalLayout_22.addWidget(self.SubsysBrowser_16) - self.pktidBrowser_16 = QtWidgets.QLineEdit(self.layoutWidget) - self.pktidBrowser_16.setMinimumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_16.setMaximumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_16.setObjectName("pktidBrowser_16") - self.horizontalLayout_22.addWidget(self.pktidBrowser_16) - self.countSpinBox_16 = QtWidgets.QSpinBox(self.layoutWidget) - self.countSpinBox_16.setMinimumSize(QtCore.QSize(81, 31)) - self.countSpinBox_16.setMaximumSize(QtCore.QSize(81, 31)) - self.countSpinBox_16.setReadOnly(True) - self.countSpinBox_16.setButtonSymbols(QtWidgets.QAbstractSpinBox.NoButtons) - self.countSpinBox_16.setMaximum(16384) - self.countSpinBox_16.setObjectName("countSpinBox_16") - self.horizontalLayout_22.addWidget(self.countSpinBox_16) - self.pushButton_16 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_16.sizePolicy().hasHeightForWidth()) - self.pushButton_16.setSizePolicy(sizePolicy) - self.pushButton_16.setMinimumSize(QtCore.QSize(101, 27)) - self.pushButton_16.setMaximumSize(QtCore.QSize(120, 27)) - self.pushButton_16.setObjectName("pushButton_16") - self.horizontalLayout_22.addWidget(self.pushButton_16) - self.gridLayout.addLayout(self.horizontalLayout_22, 17, 0, 1, 1) - self.horizontalLayout_23 = QtWidgets.QHBoxLayout() - self.horizontalLayout_23.setObjectName("horizontalLayout_23") - self.SubsysBrowser_17 = QtWidgets.QPlainTextEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SubsysBrowser_17.sizePolicy().hasHeightForWidth()) - self.SubsysBrowser_17.setSizePolicy(sizePolicy) - self.SubsysBrowser_17.setMinimumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_17.setMaximumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_17.setObjectName("SubsysBrowser_17") - self.horizontalLayout_23.addWidget(self.SubsysBrowser_17) - self.pktidBrowser_17 = QtWidgets.QLineEdit(self.layoutWidget) - self.pktidBrowser_17.setMinimumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_17.setMaximumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_17.setObjectName("pktidBrowser_17") - self.horizontalLayout_23.addWidget(self.pktidBrowser_17) - self.countSpinBox_17 = QtWidgets.QSpinBox(self.layoutWidget) - self.countSpinBox_17.setMinimumSize(QtCore.QSize(81, 31)) - self.countSpinBox_17.setMaximumSize(QtCore.QSize(81, 31)) - self.countSpinBox_17.setReadOnly(True) - self.countSpinBox_17.setButtonSymbols(QtWidgets.QAbstractSpinBox.NoButtons) - self.countSpinBox_17.setMaximum(16384) - self.countSpinBox_17.setObjectName("countSpinBox_17") - self.horizontalLayout_23.addWidget(self.countSpinBox_17) - self.pushButton_17 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_17.sizePolicy().hasHeightForWidth()) - self.pushButton_17.setSizePolicy(sizePolicy) - self.pushButton_17.setMinimumSize(QtCore.QSize(101, 27)) - self.pushButton_17.setMaximumSize(QtCore.QSize(120, 27)) - self.pushButton_17.setObjectName("pushButton_17") - self.horizontalLayout_23.addWidget(self.pushButton_17) - self.gridLayout.addLayout(self.horizontalLayout_23, 18, 0, 1, 1) - self.horizontalLayout_24 = QtWidgets.QHBoxLayout() - self.horizontalLayout_24.setObjectName("horizontalLayout_24") - self.SubsysBrowser_18 = QtWidgets.QPlainTextEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SubsysBrowser_18.sizePolicy().hasHeightForWidth()) - self.SubsysBrowser_18.setSizePolicy(sizePolicy) - self.SubsysBrowser_18.setMinimumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_18.setMaximumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_18.setObjectName("SubsysBrowser_18") - self.horizontalLayout_24.addWidget(self.SubsysBrowser_18) - self.pktidBrowser_18 = QtWidgets.QLineEdit(self.layoutWidget) - self.pktidBrowser_18.setMinimumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_18.setMaximumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_18.setObjectName("pktidBrowser_18") - self.horizontalLayout_24.addWidget(self.pktidBrowser_18) - self.countSpinBox_18 = QtWidgets.QSpinBox(self.layoutWidget) - self.countSpinBox_18.setMinimumSize(QtCore.QSize(81, 31)) - self.countSpinBox_18.setMaximumSize(QtCore.QSize(81, 31)) - self.countSpinBox_18.setReadOnly(True) - self.countSpinBox_18.setButtonSymbols(QtWidgets.QAbstractSpinBox.NoButtons) - self.countSpinBox_18.setMaximum(16384) - self.countSpinBox_18.setObjectName("countSpinBox_18") - self.horizontalLayout_24.addWidget(self.countSpinBox_18) - self.pushButton_18 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_18.sizePolicy().hasHeightForWidth()) - self.pushButton_18.setSizePolicy(sizePolicy) - self.pushButton_18.setMinimumSize(QtCore.QSize(101, 27)) - self.pushButton_18.setMaximumSize(QtCore.QSize(120, 27)) - self.pushButton_18.setObjectName("pushButton_18") - self.horizontalLayout_24.addWidget(self.pushButton_18) - self.gridLayout.addLayout(self.horizontalLayout_24, 19, 0, 1, 1) - self.horizontalLayout_25 = QtWidgets.QHBoxLayout() - self.horizontalLayout_25.setObjectName("horizontalLayout_25") - self.SubsysBrowser_19 = QtWidgets.QPlainTextEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SubsysBrowser_19.sizePolicy().hasHeightForWidth()) - self.SubsysBrowser_19.setSizePolicy(sizePolicy) - self.SubsysBrowser_19.setMinimumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_19.setMaximumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_19.setObjectName("SubsysBrowser_19") - self.horizontalLayout_25.addWidget(self.SubsysBrowser_19) - self.pktidBrowser_19 = QtWidgets.QLineEdit(self.layoutWidget) - self.pktidBrowser_19.setMinimumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_19.setMaximumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_19.setObjectName("pktidBrowser_19") - self.horizontalLayout_25.addWidget(self.pktidBrowser_19) - self.countSpinBox_19 = QtWidgets.QSpinBox(self.layoutWidget) - self.countSpinBox_19.setMinimumSize(QtCore.QSize(81, 31)) - self.countSpinBox_19.setMaximumSize(QtCore.QSize(81, 31)) - self.countSpinBox_19.setReadOnly(True) - self.countSpinBox_19.setButtonSymbols(QtWidgets.QAbstractSpinBox.NoButtons) - self.countSpinBox_19.setMaximum(16384) - self.countSpinBox_19.setObjectName("countSpinBox_19") - self.horizontalLayout_25.addWidget(self.countSpinBox_19) - self.pushButton_19 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_19.sizePolicy().hasHeightForWidth()) - self.pushButton_19.setSizePolicy(sizePolicy) - self.pushButton_19.setMinimumSize(QtCore.QSize(101, 27)) - self.pushButton_19.setMaximumSize(QtCore.QSize(120, 27)) - self.pushButton_19.setObjectName("pushButton_19") - self.horizontalLayout_25.addWidget(self.pushButton_19) - self.gridLayout.addLayout(self.horizontalLayout_25, 20, 0, 1, 1) - self.horizontalLayout_26 = QtWidgets.QHBoxLayout() - self.horizontalLayout_26.setObjectName("horizontalLayout_26") - self.SubsysBrowser_20 = QtWidgets.QPlainTextEdit(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.SubsysBrowser_20.sizePolicy().hasHeightForWidth()) - self.SubsysBrowser_20.setSizePolicy(sizePolicy) - self.SubsysBrowser_20.setMinimumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_20.setMaximumSize(QtCore.QSize(141, 31)) - self.SubsysBrowser_20.setObjectName("SubsysBrowser_20") - self.horizontalLayout_26.addWidget(self.SubsysBrowser_20) - self.pktidBrowser_20 = QtWidgets.QLineEdit(self.layoutWidget) - self.pktidBrowser_20.setMinimumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_20.setMaximumSize(QtCore.QSize(81, 31)) - self.pktidBrowser_20.setObjectName("pktidBrowser_20") - self.horizontalLayout_26.addWidget(self.pktidBrowser_20) - self.countSpinBox_20 = QtWidgets.QSpinBox(self.layoutWidget) - self.countSpinBox_20.setMinimumSize(QtCore.QSize(81, 31)) - self.countSpinBox_20.setMaximumSize(QtCore.QSize(81, 31)) - self.countSpinBox_20.setReadOnly(True) - self.countSpinBox_20.setButtonSymbols(QtWidgets.QAbstractSpinBox.NoButtons) - self.countSpinBox_20.setMaximum(16384) - self.countSpinBox_20.setObjectName("countSpinBox_20") - self.horizontalLayout_26.addWidget(self.countSpinBox_20) - self.pushButton_20 = QtWidgets.QPushButton(self.layoutWidget) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.pushButton_20.sizePolicy().hasHeightForWidth()) - self.pushButton_20.setSizePolicy(sizePolicy) - self.pushButton_20.setMinimumSize(QtCore.QSize(101, 27)) - self.pushButton_20.setMaximumSize(QtCore.QSize(120, 27)) - self.pushButton_20.setObjectName("pushButton_20") - self.horizontalLayout_26.addWidget(self.pushButton_20) - self.gridLayout.addLayout(self.horizontalLayout_26, 21, 0, 1, 1) - self.scrollArea.setWidget(self.scrollAreaWidgetContents) - self.verticalLayout.addWidget(self.scrollArea) - - self.retranslateUi(TelemetrySystemDialog) - self.buttonBox.clicked['QAbstractButton*'].connect(TelemetrySystemDialog.close) - QtCore.QMetaObject.connectSlotsByName(TelemetrySystemDialog) - - def retranslateUi(self, TelemetrySystemDialog): - _translate = QtCore.QCoreApplication.translate - TelemetrySystemDialog.setWindowTitle(_translate("TelemetrySystemDialog", "Dialog")) - self.label.setText(_translate("TelemetrySystemDialog", "cFE/CFS Subsystem Telemetry")) - self.label_6.setText(_translate("TelemetrySystemDialog", "Packets Received")) - self.label_2.setText(_translate("TelemetrySystemDialog", "Available Pages")) - self.label_3.setText(_translate("TelemetrySystemDialog", "Subsystem/Page")) - self.label_4.setText(_translate("TelemetrySystemDialog", "Packet ID")) - self.label_5.setText(_translate("TelemetrySystemDialog", "Packet Count")) - self.pushButton_0.setText(_translate("TelemetrySystemDialog", "Display Page")) - self.pushButton_1.setText(_translate("TelemetrySystemDialog", "Display Page")) - self.pushButton_2.setText(_translate("TelemetrySystemDialog", "Display Page")) - self.pushButton_3.setText(_translate("TelemetrySystemDialog", "Display Page")) - self.pushButton_4.setText(_translate("TelemetrySystemDialog", "Display Page")) - self.pushButton_5.setText(_translate("TelemetrySystemDialog", "Display Page")) - self.pushButton_6.setText(_translate("TelemetrySystemDialog", "Display Page")) - self.pushButton_7.setText(_translate("TelemetrySystemDialog", "Display Page")) - self.pushButton_8.setText(_translate("TelemetrySystemDialog", "Display Page")) - self.pushButton_9.setText(_translate("TelemetrySystemDialog", "Display Page")) - self.pushButton_10.setText(_translate("TelemetrySystemDialog", "Display Page")) - self.pushButton_11.setText(_translate("TelemetrySystemDialog", "Display Page")) - self.pushButton_12.setText(_translate("TelemetrySystemDialog", "Display Page")) - self.pushButton_13.setText(_translate("TelemetrySystemDialog", "Display Page")) - self.pushButton_14.setText(_translate("TelemetrySystemDialog", "Display Page")) - self.pushButton_15.setText(_translate("TelemetrySystemDialog", "Display Page")) - self.pushButton_16.setText(_translate("TelemetrySystemDialog", "Display Page")) - self.pushButton_17.setText(_translate("TelemetrySystemDialog", "Display Page")) - self.pushButton_18.setText(_translate("TelemetrySystemDialog", "Display Page")) - self.pushButton_19.setText(_translate("TelemetrySystemDialog", "Display Page")) - self.pushButton_20.setText(_translate("TelemetrySystemDialog", "Display Page")) - diff --git a/Subsystems/tlmGUI/TelemetrySystemDialog.ui b/Subsystems/tlmGUI/TelemetrySystemDialog.ui index 50258c8..451078d 100644 --- a/Subsystems/tlmGUI/TelemetrySystemDialog.ui +++ b/Subsystems/tlmGUI/TelemetrySystemDialog.ui @@ -198,2080 +198,33 @@ - - - - 0 - 0 - + + + QAbstractItemView::NoEditTriggers - - - 0 - 800 - - - - Qt::ScrollBarAlwaysOn - - - true - - - - - 0 - 0 - 591 - 1000 - + + false + + + + Subsystem/Page - - - 0 - 1000 - + + + + Packet ID - - - - 10 - 11 - 523 - 892 - - - - - - - - - - 0 - 0 - - - - - 141 - 31 - - - - - 141 - 31 - - - - Subsystem/Page - - - - - - - - 0 - 0 - - - - - 81 - 31 - - - - - 81 - 31 - - - - Packet ID - - - - - - - - 0 - 0 - - - - - 91 - 31 - - - - - 100 - 31 - - - - Packet Count - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 110 - 27 - - - - - - - - - - - - - 0 - 0 - - - - - 141 - 31 - - - - - 141 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - true - - - QAbstractSpinBox::NoButtons - - - 16384 - - - - - - - - 0 - 0 - - - - - 101 - 27 - - - - - 120 - 27 - - - - Display Page - - - - - - - - - - - - 0 - 0 - - - - - 141 - 31 - - - - - 141 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - true - - - QAbstractSpinBox::NoButtons - - - 16384 - - - - - - - - 0 - 0 - - - - - 101 - 27 - - - - - 120 - 27 - - - - Display Page - - - - - - - - - - - - 0 - 0 - - - - - 141 - 31 - - - - - 141 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - true - - - QAbstractSpinBox::NoButtons - - - 16384 - - - - - - - - 0 - 0 - - - - - 101 - 27 - - - - - 120 - 27 - - - - Display Page - - - - - - - - - - - - 0 - 0 - - - - - 141 - 31 - - - - - 141 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - true - - - QAbstractSpinBox::NoButtons - - - 16384 - - - - - - - - 0 - 0 - - - - - 101 - 27 - - - - - 120 - 27 - - - - Display Page - - - - - - - - - - - - 0 - 0 - - - - - 141 - 31 - - - - - 141 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - true - - - QAbstractSpinBox::NoButtons - - - 16384 - - - - - - - - 0 - 0 - - - - - 101 - 27 - - - - - 120 - 27 - - - - Display Page - - - - - - - - - - - - 0 - 0 - - - - - 141 - 31 - - - - - 141 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - true - - - QAbstractSpinBox::NoButtons - - - 16384 - - - - - - - - 0 - 0 - - - - - 101 - 27 - - - - - 120 - 27 - - - - Display Page - - - - - - - - - - - - 0 - 0 - - - - - 141 - 31 - - - - - 141 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - true - - - QAbstractSpinBox::NoButtons - - - 16384 - - - - - - - - 0 - 0 - - - - - 101 - 27 - - - - - 120 - 27 - - - - Display Page - - - - - - - - - - - - 0 - 0 - - - - - 141 - 31 - - - - - 141 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - true - - - QAbstractSpinBox::NoButtons - - - 16384 - - - - - - - - 0 - 0 - - - - - 101 - 27 - - - - - 120 - 27 - - - - Display Page - - - - - - - - - - - - 0 - 0 - - - - - 141 - 31 - - - - - 141 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - true - - - QAbstractSpinBox::NoButtons - - - 16384 - - - - - - - - 0 - 0 - - - - - 101 - 27 - - - - - 120 - 27 - - - - Display Page - - - - - - - - - - - - 0 - 0 - - - - - 141 - 31 - - - - - 141 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - true - - - QAbstractSpinBox::NoButtons - - - 16384 - - - - - - - - 0 - 0 - - - - - 101 - 27 - - - - - 120 - 27 - - - - Display Page - - - - - - - - - - - - 0 - 0 - - - - - 141 - 31 - - - - - 141 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - true - - - QAbstractSpinBox::NoButtons - - - 16384 - - - - - - - - 0 - 0 - - - - - 101 - 27 - - - - - 120 - 27 - - - - Display Page - - - - - - - - - - - - 0 - 0 - - - - - 141 - 31 - - - - - 141 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - true - - - QAbstractSpinBox::NoButtons - - - 16384 - - - - - - - - 0 - 0 - - - - - 101 - 27 - - - - - 120 - 27 - - - - Display Page - - - - - - - - - - - - 0 - 0 - - - - - 141 - 31 - - - - - 141 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - true - - - QAbstractSpinBox::NoButtons - - - 16384 - - - - - - - - 0 - 0 - - - - - 101 - 27 - - - - - 120 - 27 - - - - Display Page - - - - - - - - - - - - 0 - 0 - - - - - 141 - 31 - - - - - 141 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - true - - - QAbstractSpinBox::NoButtons - - - 16384 - - - - - - - - 0 - 0 - - - - - 101 - 27 - - - - - 120 - 27 - - - - Display Page - - - - - - - - - - - - 0 - 0 - - - - - 141 - 31 - - - - - 141 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - true - - - QAbstractSpinBox::NoButtons - - - 16384 - - - - - - - - 0 - 0 - - - - - 101 - 27 - - - - - 120 - 27 - - - - Display Page - - - - - - - - - - - - 0 - 0 - - - - - 141 - 31 - - - - - 141 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - true - - - QAbstractSpinBox::NoButtons - - - 16384 - - - - - - - - 0 - 0 - - - - - 101 - 27 - - - - - 120 - 27 - - - - Display Page - - - - - - - - - - - - 0 - 0 - - - - - 141 - 31 - - - - - 141 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - true - - - QAbstractSpinBox::NoButtons - - - 16384 - - - - - - - - 0 - 0 - - - - - 101 - 27 - - - - - 120 - 27 - - - - Display Page - - - - - - - - - - - - 0 - 0 - - - - - 141 - 31 - - - - - 141 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - true - - - QAbstractSpinBox::NoButtons - - - 16384 - - - - - - - - 0 - 0 - - - - - 101 - 27 - - - - - 120 - 27 - - - - Display Page - - - - - - - - - - - - 0 - 0 - - - - - 141 - 31 - - - - - 141 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - true - - - QAbstractSpinBox::NoButtons - - - 16384 - - - - - - - - 0 - 0 - - - - - 101 - 27 - - - - - 120 - 27 - - - - Display Page - - - - - - - - - - - - 0 - 0 - - - - - 141 - 31 - - - - - 141 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - true - - - QAbstractSpinBox::NoButtons - - - 16384 - - - - - - - - 0 - 0 - - - - - 101 - 27 - - - - - 120 - 27 - - - - Display Page - - - - - - - - - - - - 0 - 0 - - - - - 141 - 31 - - - - - 141 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - - - - - - 81 - 31 - - - - - 81 - 31 - - - - true - - - QAbstractSpinBox::NoButtons - - - 16384 - - - - - - - - 0 - 0 - - - - - 101 - 27 - - - - - 120 - 27 - - - - Display Page - - - - - - - - + + + + Packet Count + + + + + + + diff --git a/Subsystems/tlmGUI/EventMessageDialog.py b/Subsystems/tlmGUI/Ui_EventMessageDialog.py similarity index 100% rename from Subsystems/tlmGUI/EventMessageDialog.py rename to Subsystems/tlmGUI/Ui_EventMessageDialog.py diff --git a/Subsystems/tlmGUI/Ui_GenericTelemetryDialog.py b/Subsystems/tlmGUI/Ui_GenericTelemetryDialog.py new file mode 100644 index 0000000..3937700 --- /dev/null +++ b/Subsystems/tlmGUI/Ui_GenericTelemetryDialog.py @@ -0,0 +1,113 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file '/home/lbleier/cFS/tools/cFS-GroundSystem/Subsystems/tlmGUI/GenericTelemetryDialog.ui' +# +# Created by: PyQt5 UI code generator 5.10.1 +# +# WARNING! All changes made in this file will be lost! + +from PyQt5 import QtCore, QtGui, QtWidgets + +class Ui_GenericTelemetryDialog(object): + def setupUi(self, GenericTelemetryDialog): + GenericTelemetryDialog.setObjectName("GenericTelemetryDialog") + GenericTelemetryDialog.resize(574, 836) + self.label_6 = QtWidgets.QLabel(GenericTelemetryDialog) + self.label_6.setGeometry(QtCore.QRect(29, 750, 711, 61)) + font = QtGui.QFont() + font.setPointSize(12) + self.label_6.setFont(font) + self.label_6.setObjectName("label_6") + self.tblTelemetry = QtWidgets.QTableWidget(GenericTelemetryDialog) + self.tblTelemetry.setGeometry(QtCore.QRect(20, 100, 431, 621)) + self.tblTelemetry.setEditTriggers(QtWidgets.QAbstractItemView.NoEditTriggers) + self.tblTelemetry.setObjectName("tblTelemetry") + self.tblTelemetry.setColumnCount(2) + self.tblTelemetry.setRowCount(0) + item = QtWidgets.QTableWidgetItem() + self.tblTelemetry.setHorizontalHeaderItem(0, item) + item = QtWidgets.QTableWidgetItem() + self.tblTelemetry.setHorizontalHeaderItem(1, item) + self.tblTelemetry.horizontalHeader().setDefaultSectionSize(200) + self.tblTelemetry.verticalHeader().setVisible(False) + self.buttonBox = QtWidgets.QDialogButtonBox(GenericTelemetryDialog) + self.buttonBox.setGeometry(QtCore.QRect(450, 100, 100, 31)) + self.buttonBox.setStandardButtons(QtWidgets.QDialogButtonBox.Close) + self.buttonBox.setObjectName("buttonBox") + self.layoutWidget = QtWidgets.QWidget(GenericTelemetryDialog) + self.layoutWidget.setGeometry(QtCore.QRect(260, 24, 73, 54)) + self.layoutWidget.setObjectName("layoutWidget") + self.verticalLayout = QtWidgets.QVBoxLayout(self.layoutWidget) + self.verticalLayout.setContentsMargins(0, 0, 0, 0) + self.verticalLayout.setObjectName("verticalLayout") + self.packetIdLabel = QtWidgets.QLabel(self.layoutWidget) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.packetIdLabel.sizePolicy().hasHeightForWidth()) + self.packetIdLabel.setSizePolicy(sizePolicy) + self.packetIdLabel.setMinimumSize(QtCore.QSize(0, 21)) + self.packetIdLabel.setMaximumSize(QtCore.QSize(16777215, 25)) + self.packetIdLabel.setObjectName("packetIdLabel") + self.verticalLayout.addWidget(self.packetIdLabel) + self.packetId = QtWidgets.QLCDNumber(self.layoutWidget) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Minimum) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.packetId.sizePolicy().hasHeightForWidth()) + self.packetId.setSizePolicy(sizePolicy) + self.packetId.setObjectName("packetId") + self.verticalLayout.addWidget(self.packetId) + self.layoutWidget1 = QtWidgets.QWidget(GenericTelemetryDialog) + self.layoutWidget1.setGeometry(QtCore.QRect(350, 23, 125, 62)) + self.layoutWidget1.setObjectName("layoutWidget1") + self.verticalLayout_3 = QtWidgets.QVBoxLayout(self.layoutWidget1) + self.verticalLayout_3.setContentsMargins(0, 0, 0, 0) + self.verticalLayout_3.setObjectName("verticalLayout_3") + self.label_5 = QtWidgets.QLabel(self.layoutWidget1) + self.label_5.setObjectName("label_5") + self.verticalLayout_3.addWidget(self.label_5) + self.sequenceCount = QtWidgets.QSpinBox(self.layoutWidget1) + self.sequenceCount.setMinimumSize(QtCore.QSize(101, 31)) + self.sequenceCount.setMaximumSize(QtCore.QSize(101, 31)) + self.sequenceCount.setButtonSymbols(QtWidgets.QAbstractSpinBox.NoButtons) + self.sequenceCount.setMaximum(16384) + self.sequenceCount.setProperty("value", 0) + self.sequenceCount.setObjectName("sequenceCount") + self.verticalLayout_3.addWidget(self.sequenceCount) + self.layoutWidget2 = QtWidgets.QWidget(GenericTelemetryDialog) + self.layoutWidget2.setGeometry(QtCore.QRect(42, 24, 204, 62)) + self.layoutWidget2.setObjectName("layoutWidget2") + self.verticalLayout_2 = QtWidgets.QVBoxLayout(self.layoutWidget2) + self.verticalLayout_2.setContentsMargins(0, 0, 0, 0) + self.verticalLayout_2.setObjectName("verticalLayout_2") + self.subSystemTelemetryPageLabel = QtWidgets.QLabel(self.layoutWidget2) + self.subSystemTelemetryPageLabel.setObjectName("subSystemTelemetryPageLabel") + self.verticalLayout_2.addWidget(self.subSystemTelemetryPageLabel) + self.subSystemLineEdit = QtWidgets.QLineEdit(self.layoutWidget2) + self.subSystemLineEdit.setMinimumSize(QtCore.QSize(141, 31)) + self.subSystemLineEdit.setMaximumSize(QtCore.QSize(141, 31)) + self.subSystemLineEdit.setReadOnly(True) + self.subSystemLineEdit.setObjectName("subSystemLineEdit") + self.verticalLayout_2.addWidget(self.subSystemLineEdit) + + self.retranslateUi(GenericTelemetryDialog) + self.buttonBox.clicked['QAbstractButton*'].connect(GenericTelemetryDialog.close) + QtCore.QMetaObject.connectSlotsByName(GenericTelemetryDialog) + + def retranslateUi(self, GenericTelemetryDialog): + _translate = QtCore.QCoreApplication.translate + GenericTelemetryDialog.setWindowTitle(_translate("GenericTelemetryDialog", "Telemetry Page")) + self.label_6.setText(_translate("GenericTelemetryDialog", "\n" +"\n" +"

*No packets? Remember to select the IP address of
your spacecraft in the Main Window.

")) + item = self.tblTelemetry.horizontalHeaderItem(0) + item.setText(_translate("GenericTelemetryDialog", "Telemetry Point Label")) + item = self.tblTelemetry.horizontalHeaderItem(1) + item.setText(_translate("GenericTelemetryDialog", "Telemetry Point Value")) + self.packetIdLabel.setText(_translate("GenericTelemetryDialog", "Packet ID")) + self.label_5.setText(_translate("GenericTelemetryDialog", "Sequence Count")) + self.subSystemTelemetryPageLabel.setText(_translate("GenericTelemetryDialog", "Subsystem Telemetry Page")) + diff --git a/Subsystems/tlmGUI/Ui_TelemetrySystemDialog.py b/Subsystems/tlmGUI/Ui_TelemetrySystemDialog.py new file mode 100644 index 0000000..59ffeae --- /dev/null +++ b/Subsystems/tlmGUI/Ui_TelemetrySystemDialog.py @@ -0,0 +1,102 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file '/home/lbleier/cFS/tools/cFS-GroundSystem/Subsystems/tlmGUI/TelemetrySystemDialog.ui' +# +# Created by: PyQt5 UI code generator 5.10.1 +# +# WARNING! All changes made in this file will be lost! + +from PyQt5 import QtCore, QtGui, QtWidgets + +class Ui_TelemetrySystemDialog(object): + def setupUi(self, TelemetrySystemDialog): + TelemetrySystemDialog.setObjectName("TelemetrySystemDialog") + TelemetrySystemDialog.resize(625, 908) + self.verticalLayout = QtWidgets.QVBoxLayout(TelemetrySystemDialog) + self.verticalLayout.setObjectName("verticalLayout") + self.horizontalLayout = QtWidgets.QHBoxLayout() + self.horizontalLayout.setObjectName("horizontalLayout") + spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) + self.horizontalLayout.addItem(spacerItem) + self.label = QtWidgets.QLabel(TelemetrySystemDialog) + self.label.setObjectName("label") + self.horizontalLayout.addWidget(self.label) + spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) + self.horizontalLayout.addItem(spacerItem1) + self.verticalLayout.addLayout(self.horizontalLayout) + self.horizontalLayout_3 = QtWidgets.QHBoxLayout() + self.horizontalLayout_3.setSizeConstraint(QtWidgets.QLayout.SetNoConstraint) + self.horizontalLayout_3.setObjectName("horizontalLayout_3") + spacerItem2 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) + self.horizontalLayout_3.addItem(spacerItem2) + spacerItem3 = QtWidgets.QSpacerItem(80, 32, QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Minimum) + self.horizontalLayout_3.addItem(spacerItem3) + self.horizontalLayout_2 = QtWidgets.QHBoxLayout() + self.horizontalLayout_2.setObjectName("horizontalLayout_2") + spacerItem4 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) + self.horizontalLayout_2.addItem(spacerItem4) + self.label_6 = QtWidgets.QLabel(TelemetrySystemDialog) + self.label_6.setObjectName("label_6") + self.horizontalLayout_2.addWidget(self.label_6) + self.packetCount = QtWidgets.QSpinBox(TelemetrySystemDialog) + self.packetCount.setReadOnly(True) + self.packetCount.setButtonSymbols(QtWidgets.QAbstractSpinBox.NoButtons) + self.packetCount.setMaximum(16384) + self.packetCount.setProperty("value", 0) + self.packetCount.setObjectName("packetCount") + self.horizontalLayout_2.addWidget(self.packetCount) + spacerItem5 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) + self.horizontalLayout_2.addItem(spacerItem5) + self.horizontalLayout_3.addLayout(self.horizontalLayout_2) + spacerItem6 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) + self.horizontalLayout_3.addItem(spacerItem6) + self.buttonBox = QtWidgets.QDialogButtonBox(TelemetrySystemDialog) + self.buttonBox.setStandardButtons(QtWidgets.QDialogButtonBox.Close) + self.buttonBox.setObjectName("buttonBox") + self.horizontalLayout_3.addWidget(self.buttonBox) + self.verticalLayout.addLayout(self.horizontalLayout_3) + self.horizontalLayout_4 = QtWidgets.QHBoxLayout() + self.horizontalLayout_4.setObjectName("horizontalLayout_4") + spacerItem7 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) + self.horizontalLayout_4.addItem(spacerItem7) + self.label_2 = QtWidgets.QLabel(TelemetrySystemDialog) + self.label_2.setObjectName("label_2") + self.horizontalLayout_4.addWidget(self.label_2) + spacerItem8 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) + self.horizontalLayout_4.addItem(spacerItem8) + self.verticalLayout.addLayout(self.horizontalLayout_4) + self.tblTlmSys = QtWidgets.QTableWidget(TelemetrySystemDialog) + self.tblTlmSys.setEditTriggers(QtWidgets.QAbstractItemView.NoEditTriggers) + self.tblTlmSys.setObjectName("tblTlmSys") + self.tblTlmSys.setColumnCount(4) + self.tblTlmSys.setRowCount(0) + item = QtWidgets.QTableWidgetItem() + self.tblTlmSys.setHorizontalHeaderItem(0, item) + item = QtWidgets.QTableWidgetItem() + self.tblTlmSys.setHorizontalHeaderItem(1, item) + item = QtWidgets.QTableWidgetItem() + self.tblTlmSys.setHorizontalHeaderItem(2, item) + item = QtWidgets.QTableWidgetItem() + self.tblTlmSys.setHorizontalHeaderItem(3, item) + self.tblTlmSys.verticalHeader().setVisible(False) + self.verticalLayout.addWidget(self.tblTlmSys) + + self.retranslateUi(TelemetrySystemDialog) + self.buttonBox.clicked['QAbstractButton*'].connect(TelemetrySystemDialog.close) + QtCore.QMetaObject.connectSlotsByName(TelemetrySystemDialog) + + def retranslateUi(self, TelemetrySystemDialog): + _translate = QtCore.QCoreApplication.translate + TelemetrySystemDialog.setWindowTitle(_translate("TelemetrySystemDialog", "Dialog")) + self.label.setText(_translate("TelemetrySystemDialog", "cFE/CFS Subsystem Telemetry")) + self.label_6.setText(_translate("TelemetrySystemDialog", "Packets Received")) + self.label_2.setText(_translate("TelemetrySystemDialog", "Available Pages")) + item = self.tblTlmSys.horizontalHeaderItem(0) + item.setText(_translate("TelemetrySystemDialog", "Subsystem/Page")) + item = self.tblTlmSys.horizontalHeaderItem(1) + item.setText(_translate("TelemetrySystemDialog", "Packet ID")) + item = self.tblTlmSys.horizontalHeaderItem(2) + item.setText(_translate("TelemetrySystemDialog", "Packet Count")) + item = self.tblTlmSys.horizontalHeaderItem(3) + item.setText(_translate("TelemetrySystemDialog", " ")) + diff --git a/TlmMQRecv.py b/TlmMQRecv.py index 1c2211f..f2f2fae 100644 --- a/TlmMQRecv.py +++ b/TlmMQRecv.py @@ -36,9 +36,12 @@ def main(): subscriber.setsockopt(zmq.SUBSCRIBE, b"GroundSystem") while True: - # Read envelope with address - address, contents = subscriber.recv_multipart() - print(f"[{address}] {contents}") + try: + # Read envelope with address + address, contents = subscriber.recv_multipart() + print(f"[{address}] {contents}") + except KeyboardInterrupt: + break # We never get here but clean up anyhow subscriber.close() diff --git a/MainWindow.py b/Ui_MainWindow.py similarity index 51% rename from MainWindow.py rename to Ui_MainWindow.py index dea718d..d020d3f 100644 --- a/MainWindow.py +++ b/Ui_MainWindow.py @@ -2,19 +2,17 @@ # Form implementation generated from reading ui file '/home/lbleier/cFS/tools/cFS-GroundSystem/MainWindow.ui' # -# Created by: PyQt5 UI code generator 5.12.3 +# Created by: PyQt5 UI code generator 5.10.1 # # WARNING! All changes made in this file will be lost! - from PyQt5 import QtCore, QtGui, QtWidgets - class Ui_MainWindow(object): def setupUi(self, MainWindow): MainWindow.setObjectName("MainWindow") MainWindow.setEnabled(True) - MainWindow.resize(420, 217) + MainWindow.resize(552, 305) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(24) sizePolicy.setVerticalStretch(0) @@ -24,24 +22,22 @@ def setupUi(self, MainWindow): self.centralwidget.setObjectName("centralwidget") self.verticalLayout = QtWidgets.QVBoxLayout(self.centralwidget) self.verticalLayout.setObjectName("verticalLayout") - self.labelHomeTittle = QtWidgets.QLabel(self.centralwidget) + self.labelHomeTitle = QtWidgets.QLabel(self.centralwidget) font = QtGui.QFont() font.setPointSize(22) font.setBold(False) font.setWeight(50) - self.labelHomeTittle.setFont(font) - self.labelHomeTittle.setAlignment(QtCore.Qt.AlignCenter) - self.labelHomeTittle.setObjectName("labelHomeTittle") - self.verticalLayout.addWidget(self.labelHomeTittle) + self.labelHomeTitle.setFont(font) + self.labelHomeTitle.setAlignment(QtCore.Qt.AlignCenter) + self.labelHomeTitle.setObjectName("labelHomeTitle") + self.verticalLayout.addWidget(self.labelHomeTitle) self.line_2 = QtWidgets.QFrame(self.centralwidget) self.line_2.setFrameShape(QtWidgets.QFrame.HLine) self.line_2.setFrameShadow(QtWidgets.QFrame.Sunken) self.line_2.setObjectName("line_2") self.verticalLayout.addWidget(self.line_2) - self.horizontalLayout = QtWidgets.QHBoxLayout() - self.horizontalLayout.setObjectName("horizontalLayout") - spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout.addItem(spacerItem) + self.gridLayout = QtWidgets.QGridLayout() + self.gridLayout.setObjectName("gridLayout") self.label_3 = QtWidgets.QLabel(self.centralwidget) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) sizePolicy.setHorizontalStretch(0) @@ -49,18 +45,64 @@ def setupUi(self, MainWindow): sizePolicy.setHeightForWidth(self.label_3.sizePolicy().hasHeightForWidth()) self.label_3.setSizePolicy(sizePolicy) self.label_3.setMinimumSize(QtCore.QSize(141, 0)) - self.label_3.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter) + self.label_3.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter) self.label_3.setObjectName("label_3") - self.horizontalLayout.addWidget(self.label_3) + self.gridLayout.addWidget(self.label_3, 0, 0, 1, 1) self.comboBoxIpAddresses = QtWidgets.QComboBox(self.centralwidget) self.comboBoxIpAddresses.setMinimumSize(QtCore.QSize(132, 0)) self.comboBoxIpAddresses.setMaximumSize(QtCore.QSize(132, 16777215)) self.comboBoxIpAddresses.setObjectName("comboBoxIpAddresses") self.comboBoxIpAddresses.addItem("") - self.horizontalLayout.addWidget(self.comboBoxIpAddresses) - spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout.addItem(spacerItem1) - self.verticalLayout.addLayout(self.horizontalLayout) + self.gridLayout.addWidget(self.comboBoxIpAddresses, 0, 1, 1, 1) + self.label_4 = QtWidgets.QLabel(self.centralwidget) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.label_4.sizePolicy().hasHeightForWidth()) + self.label_4.setSizePolicy(sizePolicy) + self.label_4.setMinimumSize(QtCore.QSize(169, 0)) + self.label_4.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter) + self.label_4.setObjectName("label_4") + self.gridLayout.addWidget(self.label_4, 1, 0, 1, 1) + self.cbTlmHeaderVer = QtWidgets.QComboBox(self.centralwidget) + self.cbTlmHeaderVer.setMinimumSize(QtCore.QSize(132, 0)) + self.cbTlmHeaderVer.setMaximumSize(QtCore.QSize(132, 16777215)) + self.cbTlmHeaderVer.setObjectName("cbTlmHeaderVer") + self.cbTlmHeaderVer.addItem("") + self.cbTlmHeaderVer.addItem("") + self.cbTlmHeaderVer.addItem("") + self.gridLayout.addWidget(self.cbTlmHeaderVer, 1, 1, 1, 1) + self.label_2 = QtWidgets.QLabel(self.centralwidget) + self.label_2.setObjectName("label_2") + self.gridLayout.addWidget(self.label_2, 2, 0, 1, 1) + self.sbTlmOffset = QtWidgets.QSpinBox(self.centralwidget) + self.sbTlmOffset.setEnabled(False) + self.sbTlmOffset.setButtonSymbols(QtWidgets.QAbstractSpinBox.NoButtons) + self.sbTlmOffset.setObjectName("sbTlmOffset") + self.gridLayout.addWidget(self.sbTlmOffset, 1, 2, 1, 1) + self.sbCmdOffsetPri = QtWidgets.QSpinBox(self.centralwidget) + self.sbCmdOffsetPri.setEnabled(False) + self.sbCmdOffsetPri.setButtonSymbols(QtWidgets.QAbstractSpinBox.NoButtons) + self.sbCmdOffsetPri.setObjectName("sbCmdOffsetPri") + self.gridLayout.addWidget(self.sbCmdOffsetPri, 2, 2, 1, 1) + self.cbCmdHeaderVer = QtWidgets.QComboBox(self.centralwidget) + self.cbCmdHeaderVer.setObjectName("cbCmdHeaderVer") + self.cbCmdHeaderVer.addItem("") + self.cbCmdHeaderVer.addItem("") + self.cbCmdHeaderVer.addItem("") + self.gridLayout.addWidget(self.cbCmdHeaderVer, 2, 1, 1, 1) + self.sbCmdOffsetSec = QtWidgets.QSpinBox(self.centralwidget) + self.sbCmdOffsetSec.setEnabled(False) + self.sbCmdOffsetSec.setButtonSymbols(QtWidgets.QAbstractSpinBox.NoButtons) + self.sbCmdOffsetSec.setObjectName("sbCmdOffsetSec") + self.gridLayout.addWidget(self.sbCmdOffsetSec, 2, 3, 1, 1) + self.label = QtWidgets.QLabel(self.centralwidget) + self.label.setObjectName("label") + self.gridLayout.addWidget(self.label, 0, 2, 1, 1) + self.label_6 = QtWidgets.QLabel(self.centralwidget) + self.label_6.setObjectName("label_6") + self.gridLayout.addWidget(self.label_6, 0, 3, 1, 1) + self.verticalLayout.addLayout(self.gridLayout) self.horizontalLayout_2 = QtWidgets.QHBoxLayout() self.horizontalLayout_2.setSpacing(32) self.horizontalLayout_2.setObjectName("horizontalLayout_2") @@ -112,10 +154,24 @@ def setupUi(self, MainWindow): def retranslateUi(self, MainWindow): _translate = QtCore.QCoreApplication.translate MainWindow.setWindowTitle(_translate("MainWindow", "Main Window")) - self.labelHomeTittle.setText(_translate("MainWindow", "CFS Ground System")) - self.label_3.setText(_translate("MainWindow", "Selected IP Address: ")) + self.labelHomeTitle.setText(_translate("MainWindow", "CFS Ground System")) + self.label_3.setText(_translate("MainWindow", "Selected IP Address")) self.comboBoxIpAddresses.setItemText(0, _translate("MainWindow", "All")) + self.label_4.setText(_translate("MainWindow", "Tlm header version")) + self.cbTlmHeaderVer.setItemText(0, _translate("MainWindow", "1")) + self.cbTlmHeaderVer.setItemText(1, _translate("MainWindow", "2")) + self.cbTlmHeaderVer.setItemText(2, _translate("MainWindow", "Custom")) + self.label_2.setText(_translate("MainWindow", "Cmd header version")) + self.sbTlmOffset.setToolTip(_translate("MainWindow", "

Offset (in bytes) to be added to existing offsets listed in telemetry text files

")) + self.sbCmdOffsetPri.setToolTip(_translate("MainWindow", "

Offset (in bytes) to be added after the primary header in a command packet

")) + self.cbCmdHeaderVer.setItemText(0, _translate("MainWindow", "1")) + self.cbCmdHeaderVer.setItemText(1, _translate("MainWindow", "2")) + self.cbCmdHeaderVer.setItemText(2, _translate("MainWindow", "Custom")) + self.sbCmdOffsetSec.setToolTip(_translate("MainWindow", "

Offset (in bytes) to be added after the secondary header in a command packet

")) + self.label.setText(_translate("MainWindow", "Offsets")) + self.label_6.setText(_translate("MainWindow", "(Hover for info)")) self.pushButtonStartTlm.setText(_translate("MainWindow", "Start Telemetry System")) self.pushButtonStartCmd.setText(_translate("MainWindow", "Start Command System")) self.label_5.setText(_translate("MainWindow", "*Read Guide-GroundSystem.txt for help")) self.pushButton.setText(_translate("MainWindow", "Close")) + diff --git a/shareddata.py b/shareddata.py new file mode 100644 index 0000000..1b4cbd8 --- /dev/null +++ b/shareddata.py @@ -0,0 +1,27 @@ +# +# GSC-18128-1, "Core Flight Executive Version 6.7" +# +# Copyright (c) 2006-2019 United States Government as represented by +# the Administrator of the National Aeronautics and Space Administration. +# All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# This module contains variables and/or other data that can be shared across +# the main classes. Simply import this module into any class that needs it. +# IMPORTANT: ANY class importing this module can read/write any of the data. +# Use caution when read/writing data here. + +import socket + +sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)