Mercurial > public > ostc_companion
view ui_MainWindow.h @ 3:4ace58a7c03c
Send disconnect command before closing the connection
The old BT module transmitted a notification in case a connection were
closed which cause the ostc to exit the uart loop. The new one doesn't
do this => send disconnect command to avoid waiting in the installation
loop till timeout or button press.
| author | Ideenmodellierer |
|---|---|
| date | Fri, 28 Nov 2025 20:00:02 +0100 |
| parents | 0b3630a29ad8 |
| children |
line wrap: on
line source
/******************************************************************************** ** Form generated from reading UI file 'MainWindow.ui' ** ** Created by: Qt User Interface Compiler version 6.10.1 ** ** WARNING! All changes made in this file will be lost when recompiling UI file! ********************************************************************************/ #ifndef UI_MAINWINDOW_H #define UI_MAINWINDOW_H #include <QtCore/QVariant> #include <QtGui/QIcon> #include <QtWidgets/QApplication> #include <QtWidgets/QComboBox> #include <QtWidgets/QGridLayout> #include <QtWidgets/QHBoxLayout> #include <QtWidgets/QLabel> #include <QtWidgets/QMainWindow> #include <QtWidgets/QPlainTextEdit> #include <QtWidgets/QProgressBar> #include <QtWidgets/QPushButton> #include <QtWidgets/QSpacerItem> #include <QtWidgets/QToolButton> #include <QtWidgets/QVBoxLayout> #include <QtWidgets/QWidget> QT_BEGIN_NAMESPACE class Ui_MainWindow { public: QWidget *centralWidget; QGridLayout *gridLayout; QProgressBar *progressBar; QComboBox *computerType; QVBoxLayout *verticalLayout; QHBoxLayout *horizontalLayout; QPushButton *connectButton; QPushButton *dateButton; QPushButton *nameButton; QPushButton *iconButton; QPushButton *signalButton; QPushButton *upgradeButton; QPushButton *closeButton; QSpacerItem *verticalSpacer; QPushButton *quitButton; QLabel *companionUrlL; QSpacerItem *horizontalSpacer_2; QToolButton *settingsButton; QPlainTextEdit *console; QLabel *computerImage; QSpacerItem *horizontalSpacer_3; QSpacerItem *horizontalSpacer; QSpacerItem *verticalSpacer_3; QSpacerItem *verticalSpacer_2; QPushButton *editLog; void setupUi(QMainWindow *MainWindow) { if (MainWindow->objectName().isEmpty()) MainWindow->setObjectName("MainWindow"); MainWindow->resize(451, 418); MainWindow->setWindowTitle(QString::fromUtf8("OSTC Companion")); QIcon icon; icon.addFile(QString::fromUtf8(":/Images/app_OSTC_Companion.svg"), QSize(), QIcon::Mode::Normal, QIcon::State::Off); MainWindow->setWindowIcon(icon); centralWidget = new QWidget(MainWindow); centralWidget->setObjectName("centralWidget"); gridLayout = new QGridLayout(centralWidget); gridLayout->setSpacing(6); gridLayout->setContentsMargins(11, 11, 11, 11); gridLayout->setObjectName("gridLayout"); progressBar = new QProgressBar(centralWidget); progressBar->setObjectName("progressBar"); progressBar->setAlignment(Qt::AlignmentFlag::AlignRight|Qt::AlignmentFlag::AlignTrailing|Qt::AlignmentFlag::AlignVCenter); progressBar->setTextVisible(true); gridLayout->addWidget(progressBar, 7, 0, 1, 4); computerType = new QComboBox(centralWidget); computerType->addItem(QString::fromUtf8("OSTC2 mk.2/2n/2c")); computerType->addItem(QString::fromUtf8("OSTC hwOS (USB)")); computerType->addItem(QString::fromUtf8("OSTC hwOS (Bluetooth)")); computerType->addItem(QString::fromUtf8("OSTC4")); computerType->setObjectName("computerType"); gridLayout->addWidget(computerType, 0, 1, 1, 1); verticalLayout = new QVBoxLayout(); verticalLayout->setSpacing(0); verticalLayout->setObjectName("verticalLayout"); verticalLayout->setContentsMargins(-1, -1, 0, 0); horizontalLayout = new QHBoxLayout(); horizontalLayout->setSpacing(6); horizontalLayout->setObjectName("horizontalLayout"); connectButton = new QPushButton(centralWidget); connectButton->setObjectName("connectButton"); connectButton->setMinimumSize(QSize(0, 23)); connectButton->setStyleSheet(QString::fromUtf8("QPushButton {\n" " border: 1px solid blue;\n" " border-radius: 6px;\n" " background: qlineargradient(x1:0, y1:0, x2:0, y2:1, \n" " stop:0.00 white,\n" " stop:0.55 #55aaff,\n" " stop:0.56 #4964ff,\n" " stop:1.00 #55aaff)\n" "}")); connectButton->setAutoDefault(true); horizontalLayout->addWidget(connectButton); verticalLayout->addLayout(horizontalLayout); dateButton = new QPushButton(centralWidget); dateButton->setObjectName("dateButton"); verticalLayout->addWidget(dateButton); nameButton = new QPushButton(centralWidget); nameButton->setObjectName("nameButton"); verticalLayout->addWidget(nameButton); iconButton = new QPushButton(centralWidget); iconButton->setObjectName("iconButton"); verticalLayout->addWidget(iconButton); signalButton = new QPushButton(centralWidget); signalButton->setObjectName("signalButton"); verticalLayout->addWidget(signalButton); upgradeButton = new QPushButton(centralWidget); upgradeButton->setObjectName("upgradeButton"); verticalLayout->addWidget(upgradeButton); closeButton = new QPushButton(centralWidget); closeButton->setObjectName("closeButton"); verticalLayout->addWidget(closeButton); verticalSpacer = new QSpacerItem(105, 8, QSizePolicy::Policy::Minimum, QSizePolicy::Policy::Minimum); verticalLayout->addItem(verticalSpacer); quitButton = new QPushButton(centralWidget); quitButton->setObjectName("quitButton"); verticalLayout->addWidget(quitButton); gridLayout->addLayout(verticalLayout, 0, 3, 6, 1); companionUrlL = new QLabel(centralWidget); companionUrlL->setObjectName("companionUrlL"); companionUrlL->setText(QString::fromUtf8("<html><head/><body><p>See us on <a href=\"https://ostc-planner.net/wp/companion/\"><span style=\" text-decoration: underline; color:#0000ff;\">ostc-planner.net/wp/companion</span></a></p></body></html>")); companionUrlL->setOpenExternalLinks(true); gridLayout->addWidget(companionUrlL, 6, 0, 1, 4); horizontalSpacer_2 = new QSpacerItem(40, 20, QSizePolicy::Policy::Expanding, QSizePolicy::Policy::Minimum); gridLayout->addItem(horizontalSpacer_2, 2, 0, 1, 1); settingsButton = new QToolButton(centralWidget); settingsButton->setObjectName("settingsButton"); QIcon icon1; icon1.addFile(QString::fromUtf8(":/Images/Settings.svg"), QSize(), QIcon::Mode::Normal, QIcon::State::Off); settingsButton->setIcon(icon1); gridLayout->addWidget(settingsButton, 0, 0, 1, 1); console = new QPlainTextEdit(centralWidget); console->setObjectName("console"); console->setMinimumSize(QSize(0, 46)); console->setFrameShadow(QFrame::Shadow::Sunken); console->setVerticalScrollBarPolicy(Qt::ScrollBarPolicy::ScrollBarAlwaysOn); console->setHorizontalScrollBarPolicy(Qt::ScrollBarPolicy::ScrollBarAlwaysOff); console->setUndoRedoEnabled(false); console->setReadOnly(true); console->setCenterOnScroll(false); console->setProperty("tabStopWidth", QVariant(4)); gridLayout->addWidget(console, 8, 0, 1, 4); computerImage = new QLabel(centralWidget); computerImage->setObjectName("computerImage"); QSizePolicy sizePolicy(QSizePolicy::Policy::Fixed, QSizePolicy::Policy::Fixed); sizePolicy.setHorizontalStretch(0); sizePolicy.setVerticalStretch(0); sizePolicy.setHeightForWidth(computerImage->sizePolicy().hasHeightForWidth()); computerImage->setSizePolicy(sizePolicy); computerImage->setMinimumSize(QSize(160, 120)); computerImage->setMaximumSize(QSize(160, 120)); computerImage->setPixmap(QPixmap(QString::fromUtf8(":/Images/frog_160x120.png"))); gridLayout->addWidget(computerImage, 2, 1, 1, 1); horizontalSpacer_3 = new QSpacerItem(40, 20, QSizePolicy::Policy::Expanding, QSizePolicy::Policy::Minimum); gridLayout->addItem(horizontalSpacer_3, 2, 2, 1, 1); horizontalSpacer = new QSpacerItem(8, 20, QSizePolicy::Policy::Minimum, QSizePolicy::Policy::Minimum); gridLayout->addItem(horizontalSpacer, 0, 2, 1, 1); verticalSpacer_3 = new QSpacerItem(20, 0, QSizePolicy::Policy::Minimum, QSizePolicy::Policy::Minimum); gridLayout->addItem(verticalSpacer_3, 5, 1, 1, 1); verticalSpacer_2 = new QSpacerItem(20, 0, QSizePolicy::Policy::Minimum, QSizePolicy::Policy::Minimum); gridLayout->addItem(verticalSpacer_2, 1, 1, 1, 1); editLog = new QPushButton(centralWidget); editLog->setObjectName("editLog"); editLog->setEnabled(false); gridLayout->addWidget(editLog, 5, 2, 1, 1); MainWindow->setCentralWidget(centralWidget); retranslateUi(MainWindow); QObject::connect(computerType, SIGNAL(activated(int)), MainWindow, SLOT(changeTypeSlot())); QObject::connect(quitButton, &QPushButton::clicked, MainWindow, qOverload<>(&QMainWindow::close)); QObject::connect(dateButton, SIGNAL(clicked()), MainWindow, SLOT(dateSlot())); QObject::connect(nameButton, SIGNAL(clicked()), MainWindow, SLOT(nameSlot())); QObject::connect(iconButton, SIGNAL(clicked()), MainWindow, SLOT(iconSlot())); QObject::connect(upgradeButton, SIGNAL(clicked()), MainWindow, SLOT(upgradeSlot())); QObject::connect(connectButton, SIGNAL(clicked()), MainWindow, SLOT(connectSlot())); QObject::connect(settingsButton, SIGNAL(clicked()), MainWindow, SLOT(settingsSlot())); QObject::connect(closeButton, SIGNAL(clicked()), MainWindow, SLOT(closeSlot())); computerType->setCurrentIndex(0); QMetaObject::connectSlotsByName(MainWindow); } // setupUi void retranslateUi(QMainWindow *MainWindow) { #if QT_CONFIG(tooltip) computerType->setToolTip(QCoreApplication::translate("MainWindow", "H&W dive computer model.", nullptr)); #endif // QT_CONFIG(tooltip) #if QT_CONFIG(tooltip) connectButton->setToolTip(QCoreApplication::translate("MainWindow", "Open or re-open the last selected USB or Bluetooth port (See Preferences).\n" "NOTE: make sure to connect the serial cable, or to set the bluetooth mode first...", nullptr)); #endif // QT_CONFIG(tooltip) connectButton->setText(QCoreApplication::translate("MainWindow", "Connect", nullptr)); #if QT_CONFIG(tooltip) dateButton->setToolTip(QCoreApplication::translate("MainWindow", "Set the H&W computer date and time.\n" "Can be automatic at each connect, if asked to in the Preferences.\n" "(Valid once device is connected).", nullptr)); #endif // QT_CONFIG(tooltip) dateButton->setText(QCoreApplication::translate("MainWindow", "Set Date && Time", nullptr)); #if QT_CONFIG(tooltip) nameButton->setToolTip(QCoreApplication::translate("MainWindow", "Change the name displayed on the H&W device.\n" "(Valid once device is connected).", nullptr)); #endif // QT_CONFIG(tooltip) nameButton->setText(QCoreApplication::translate("MainWindow", "Set Name...", nullptr)); #if QT_CONFIG(tooltip) iconButton->setToolTip(QCoreApplication::translate("MainWindow", "Upload a customization icon.\n" "Only supported on Frog yet.\n" "(Valid once device is connected).", nullptr)); #endif // QT_CONFIG(tooltip) iconButton->setText(QCoreApplication::translate("MainWindow", "Set Icon...", nullptr)); signalButton->setText(QCoreApplication::translate("MainWindow", "Check Signal", nullptr)); #if QT_CONFIG(tooltip) upgradeButton->setToolTip(QCoreApplication::translate("MainWindow", "Ask for a firmware file, and upload it to the H&W device.\n" "Can be done before or after device (re-)connection.", nullptr)); #endif // QT_CONFIG(tooltip) upgradeButton->setText(QCoreApplication::translate("MainWindow", "Upgrade Firmware...", nullptr)); #if QT_CONFIG(tooltip) closeButton->setToolTip(QCoreApplication::translate("MainWindow", "Close USB or Bluetooth connection to the device.", nullptr)); #endif // QT_CONFIG(tooltip) closeButton->setText(QCoreApplication::translate("MainWindow", "Close", nullptr)); quitButton->setText(QCoreApplication::translate("MainWindow", "Quit", nullptr)); #if QT_CONFIG(tooltip) settingsButton->setToolTip(QCoreApplication::translate("MainWindow", "Open the Preferences menu.", nullptr)); #endif // QT_CONFIG(tooltip) settingsButton->setText(QCoreApplication::translate("MainWindow", "...", nullptr)); computerImage->setText(QString()); editLog->setText(QCoreApplication::translate("MainWindow", "Edit Log", nullptr)); (void)MainWindow; } // retranslateUi }; namespace Ui { class MainWindow: public Ui_MainWindow {}; } // namespace Ui QT_END_NAMESPACE #endif // UI_MAINWINDOW_H
