Files
RRJClient/Widgets/entrywidget.cpp
2025-12-12 12:58:31 +03:00

103 lines
1.9 KiB
C++

#include "entrywidget.h"
#include "ui_entrywidget.h"
#include <bits/functional_hash.h>
#include <QCryptographicHash>
EntryWidget::EntryWidget(QWidget *parent) :
QWidget(parent),
ui(new Ui::EntryWidget)
{
ui->setupUi(this);
}
void EntryWidget::initialize()
{
ui->offlineWidget->hide();
ui->loginWidget->hide();
ui->settingsWidget->hide();
}
void EntryWidget::disconnectState()
{
show();
ui->offlineWidget->show();
ui->loginWidget->hide();
}
void EntryWidget::settingsState()
{
ui->loginWidget->hide();
ui->offlineWidget->hide();
}
ClientAutorization* EntryWidget::getAuthData()
{
ClientAutorization *data = new ClientAutorization;
QString username = ui->loginInputField->text();
QString password = ui->passwordInputField->text();
data->Login = username;
QByteArray md5Hash = QCryptographicHash::hash(password.toUtf8(), QCryptographicHash::Md5).toHex();
data->Password = QString(md5Hash);
return data;
}
void EntryWidget::showLoginWidget(bool flag)
{
if(flag)
{
ui->loginWidget->show();
ui->offlineWidget->hide();
}
else ui->loginWidget->hide();
}
void EntryWidget::on_loginButton_clicked()
{
emit sigTryLogin();
}
void EntryWidget::on_saveServerButton_clicked()
{
emit sigSaveServerSettings();
}
void EntryWidget::fillSettings(Settings *settings)
{
ui->serverInputField->setText(settings->Address);
ui->portInputField->setText(settings->Port);
//ui->mathModelUsecheckBox->setChecked(settings->mathModelUse);
}
void EntryWidget::isActive(bool flag)
{
if (flag) ui->settingsWidget->show();
else ui->settingsWidget->hide();
}
bool EntryWidget::getLoginWidgetIsHidden()
{
return ui->loginWidget->isHidden();
}
QString EntryWidget::getAddress(){
return ui->serverInputField->text();
}
QString EntryWidget::getPort(){
return ui->portInputField->text();
}
EntryWidget::~EntryWidget()
{
delete ui;
}