Added remember option to password dialog.

Made to remember password of password manager for given time but not completely sure
how to implement that yet.
This commit is contained in:
eelke 2018-11-15 19:24:29 +01:00
parent f432c2aa68
commit 287073afdc
4 changed files with 42 additions and 11 deletions

View file

@ -1,6 +1,8 @@
#include "PasswordPromptDialog.h"
#include <QtWidgets/QApplication>
#include <QCheckBox>
#include <QComboBox>
#include <QDebug>
#include <QDialogButtonBox>
#include <QLabel>
#include <QLayout>
@ -43,6 +45,21 @@ PasswordPromptDialog::PasswordPromptDialog(Flags flags, QWidget *parent)
mainLayout->addWidget(m_saveCheck, row, 1);
++row;
}
if (m_Flags.testFlag(RememberPassword)) {
m_rememberLabel = new QLabel(this);
mainLayout->addWidget(m_rememberLabel, row, 0);
m_rememberChoices = new QComboBox(this);
m_rememberChoices->addItem(tr("don't"), 0);
m_rememberChoices->addItem(tr("1 minute"), 1);
m_rememberChoices->addItem(tr("5 minutes"), 5);
m_rememberChoices->addItem(tr("15 minutes"), 15);
m_rememberChoices->addItem(tr("60 minutes"), 15);
m_rememberChoices->addItem(tr("until termination"), -1);
mainLayout->addWidget(m_rememberChoices, row, 1);
++row;
}
mainLayout->addWidget(m_DialogButtons, row, 0, 1 ,2);
setLayout(mainLayout);
@ -94,6 +111,8 @@ void PasswordPromptDialog::retranslateUi()
m_passwordInput[1]->setPlaceholderText(QApplication::translate(translateContext, "Reenter same password for confirmation", nullptr));
if (m_saveCheck)
m_saveCheck->setText(QApplication::translate(translateContext, "Save password", nullptr));
if (m_rememberLabel)
m_rememberLabel->setText(QApplication::translate(translateContext, "Remember", nullptr));
}
void PasswordPromptDialog::updateOkEnabled()
@ -121,5 +140,15 @@ bool PasswordPromptDialog::saveChecked() const
if (m_saveCheck)
return m_saveCheck->checkState() == Qt::Checked;
qDebug() << "PasswordPromptDialog::saveChecked() called while SaveOption flag was not passed to constructor";
return false;
}
int PasswordPromptDialog::remember() const
{
if (m_rememberChoices)
return m_rememberChoices->currentData().toInt();
qDebug() << "PasswordPromptDialog::remember() called while RememberPassword flag was not passed to constructor";
return 0;
}