From 4e7ac13c629a3f7484f93b15686120fcdc370bf2 Mon Sep 17 00:00:00 2001 From: Anne Jan Brouwer Date: Tue, 17 Nov 2015 23:22:54 +0100 Subject: [PATCH] Remove template widgets when starting new task --- mainwindow.cpp | 39 +++++++++++++++++++++++++-------------- mainwindow.h | 1 + 2 files changed, 26 insertions(+), 14 deletions(-) diff --git a/mainwindow.cpp b/mainwindow.cpp index 597a819aa..90b18f4dd 100644 --- a/mainwindow.cpp +++ b/mainwindow.cpp @@ -627,6 +627,7 @@ void MainWindow::executeWrapper(QString app, QString args, QString input) { wrapperRunning = true; process->setWorkingDirectory(passStore); process->setEnvironment(env); + clearTemplateWidgets(); ui->textBrowser->clear(); ui->textBrowser->setTextColor(Qt::black); enableUiElements(false); @@ -710,12 +711,7 @@ void MainWindow::readyRead(bool finished = false) { } output = tokens.join("\n"); } else { - while(ui->formLayout->count() > 0){ - QLayoutItem *item = ui->formLayout->takeAt(0); - delete item->widget(); - delete item; - } - ui->verticalLayoutPassword->setSpacing(0); + clearTemplateWidgets(); } if (useAutoclearPanel) { autoclearPass = output; @@ -780,15 +776,13 @@ void MainWindow::clearClipboard() */ void MainWindow::clearPanel() { - if (true) { // TODO when ?? - while(ui->formLayout->count() > 0){ - QLayoutItem *item = ui->formLayout->takeAt(0); - delete item->widget(); - delete item; - } - QString output = "***" + tr("Password and Content hidden") + "***"; - ui->textBrowser->setHtml(output); + while(ui->formLayout->count() > 0){ + QLayoutItem *item = ui->formLayout->takeAt(0); + delete item->widget(); + delete item; } + QString output = "***" + tr("Password and Content hidden") + "***"; + ui->textBrowser->setHtml(output); } /** @@ -1678,6 +1672,10 @@ QString MainWindow::generatePassword() { return passwd; } +/** + * @brief MainWindow::waitFor + * @param seconds + */ void MainWindow::waitFor(int seconds) { QDateTime current = QDateTime::currentDateTime(); @@ -1692,3 +1690,16 @@ void MainWindow::waitFor(int seconds) Util::qSleep(100); } } + +/** + * @brief MainWindow::clearTemplateWidgets + */ +void MainWindow::clearTemplateWidgets() +{ + while(ui->formLayout->count() > 0){ + QLayoutItem *item = ui->formLayout->takeAt(0); + delete item->widget(); + delete item; + } + ui->verticalLayoutPassword->setSpacing(0); +} diff --git a/mainwindow.h b/mainwindow.h index f1b63fcc6..e63d9a412 100644 --- a/mainwindow.h +++ b/mainwindow.h @@ -154,6 +154,7 @@ private slots: void destroyTrayIcon(); bool removeDir(const QString & dirName); void waitFor(int); + void clearTemplateWidgets(); }; #endif // MAINWINDOW_H