RedPanda-CPP/RedPandaIDE/vcs/gituserconfigdialog.cpp

69 lines
1.5 KiB
C++

#include "gituserconfigdialog.h"
#include "ui_gituserconfigdialog.h"
#include "gitmanager.h"
#include "../widgets/infomessagebox.h"
GitUserConfigDialog::GitUserConfigDialog(const QString& folder, QWidget *parent) :
QDialog(parent),
ui(new Ui::GitUserConfigDialog),
mFolder(folder)
{
ui->setupUi(this);
GitManager manager;
ui->txtUserName->setText(manager.getUserName(folder));
ui->txtUserEmail->setText(manager.getUserEmail(folder));
checkInfo();
}
GitUserConfigDialog::~GitUserConfigDialog()
{
delete ui;
}
void GitUserConfigDialog::checkInfo()
{
ui->btnOk->setEnabled(!ui->txtUserEmail->text().isEmpty()
&& !ui->txtUserName->text().isEmpty());
}
void GitUserConfigDialog::on_btnOk_clicked()
{
GitManager manager;
QString output;
if (!manager.setUserName(mFolder, ui->txtUserName->text(),output)) {
InfoMessageBox infoBox;
infoBox.showMessage(output);
reject();
}
if (!manager.setUserEmail(mFolder, ui->txtUserEmail->text(),output)) {
InfoMessageBox infoBox;
infoBox.showMessage(output);
reject();
}
accept();
}
void GitUserConfigDialog::on_btnCancel_clicked()
{
reject();
}
void GitUserConfigDialog::closeEvent(QCloseEvent * /*event*/)
{
reject();
}
void GitUserConfigDialog::on_txtUserName_textChanged(const QString &/*arg1*/)
{
checkInfo();
}
void GitUserConfigDialog::on_txtUserEmail_textChanged(const QString &/*arg1*/)
{
checkInfo();
}