Refactored popups into a new class

This commit is contained in:
R. Aidan Campbell
2018-04-29 08:17:31 -07:00
parent 0651062b81
commit 05fb400879
5 changed files with 71 additions and 44 deletions

View File

@@ -1,5 +1,6 @@
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "popupmanager.h"
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
@@ -7,12 +8,13 @@ MainWindow::MainWindow(QWidget *parent) :
{
ui->setupUi(this);
myButton = new QPushButton(this);
myButton->setIcon(QIcon(":/res/icon128.png"));
myButton->setIconSize(QSize(128, 128));
myButton->resize(QSize(128, 128));
connect(myButton, &QAbstractButton::clicked, this, &MainWindow::on_actionExit_triggered);
// sample code for an iconized button performing an action
// will be useful to implement the game grid UI later
// myButton = new QPushButton(this);
// myButton->setIcon(QIcon(":/res/icon128.png"));
// myButton->setIconSize(QSize(128, 128));
// myButton->resize(QSize(128, 128));
// connect(myButton, &QAbstractButton::clicked, this, &MainWindow::on_actionExit_triggered);
}
void MainWindow::closeEvent(QCloseEvent *event)
@@ -35,8 +37,6 @@ void MainWindow::closeEvent(QCloseEvent *event)
MainWindow::~MainWindow()
{
delete ui;
delete myButton;
delete pinMsgBox;
}
void MainWindow::on_actionExit_triggered()
@@ -46,39 +46,12 @@ void MainWindow::on_actionExit_triggered()
void MainWindow::on_newHostBtn_clicked()
{
bool ok;
QString responseHost
= QInputDialog::getText(this, tr("Add Host Manually"),
tr("IP Address or Hostname of GeForce PC"),
QLineEdit::Normal,
tr("default string"),
&ok);
if (ok && !responseHost.isEmpty()) {
// TODO: send pair request to "responseHost"
} else {
// silently close, user canceled
QString hostname = popupmanager::getHostnameDialog();
if (!hostname.isEmpty()) {
//TODO: pairTo(hostname)
}
}
// this opens a non-blocking informative message telling the user to enter the given pin
// it is open-loop: if the user cancels, nothing happens
// it is expected that upon pairing completion, the ::closePinDialog function will be called.
void MainWindow::displayPinDialog(QString pin = tr("ERROR")) {
pinMsgBox = new QMessageBox( this );
pinMsgBox->setAttribute( Qt::WA_DeleteOnClose ); //makes sure the msgbox is deleted automatically when closed
pinMsgBox->setStandardButtons( QMessageBox::Ok );
pinMsgBox->setText("Please enter the number " + pin + " on the GFE dialog on the computer.");
pinMsgBox->setInformativeText("This dialog will be dismissed once complete.");
pinMsgBox->open();
}
// to be called when the pairing is complete
void MainWindow::closePinDialog() {
pinMsgBox->close();
}
void MainWindow::addHostToDisplay(QMap<QString, bool> hostMdnsMap) {
QMapIterator<QString, bool> i(hostMdnsMap);