fix: finalize edit client dialog ui
This commit is contained in:
@@ -2,12 +2,17 @@
|
||||
|
||||
// Qt
|
||||
#include <QLabel>
|
||||
#include <QLineEdit>
|
||||
#include <QPushButton>
|
||||
#include <QJsonDocument>
|
||||
#include <QJsonObject>
|
||||
#include <QTabWidget>
|
||||
#include <QVBoxLayout>
|
||||
|
||||
// Self
|
||||
#include "DropFileWidget.h"
|
||||
#include "DropFileWidget.h"
|
||||
#include "DropFileWidget.h"
|
||||
#include "LicenseModel/LicenseModel.h"
|
||||
|
||||
EditClientDialog::EditClientDialog(LicenseModel* model, QWidget *parent)
|
||||
@@ -44,13 +49,47 @@ EditClientDialog::EditClientDialog(LicenseModel* model, QWidget *parent)
|
||||
|
||||
// Manual user add widget
|
||||
{
|
||||
auto manualWidget = new QWidget(m_tabWidget);
|
||||
auto layout = new QVBoxLayout;
|
||||
manualWidget->setLayout(layout);
|
||||
m_manualWidget = new QWidget(m_tabWidget);
|
||||
auto gridLayout = new QGridLayout();
|
||||
m_manualWidget->setLayout(gridLayout);
|
||||
|
||||
gridLayout->setColumnStretch(0, 0);
|
||||
gridLayout->setColumnStretch(1, 1);
|
||||
|
||||
gridLayout->addWidget(makeLabel(tr("First name")), 0, 0);
|
||||
m_firstNameLineEdit = new QLineEdit(m_manualWidget);
|
||||
gridLayout->addWidget(m_firstNameLineEdit, 0, 1);
|
||||
gridLayout->addWidget(makeLabel(tr("Last name")), 1, 0);
|
||||
m_lastNameLineEdit = new QLineEdit(m_manualWidget);
|
||||
gridLayout->addWidget(m_lastNameLineEdit, 1, 1);
|
||||
gridLayout->addWidget(makeLabel(tr("Patronymic")), 2, 0);
|
||||
m_patronymicLineEdit = new QLineEdit(m_manualWidget);
|
||||
gridLayout->addWidget(m_patronymicLineEdit, 2, 1);
|
||||
|
||||
m_tabWidget->addTab(manualWidget, tr("Manual"));
|
||||
gridLayout->addWidget(makeLabel(tr("Email")), 3, 0);
|
||||
m_emailLineEdit = new QLineEdit(m_manualWidget);
|
||||
m_emailLineEdit->setPlaceholderText("examplebox@email.com");
|
||||
gridLayout->addWidget(m_emailLineEdit, 3, 1);
|
||||
|
||||
gridLayout->addWidget(makeLabel(tr("Phone")), 4, 0);
|
||||
m_phoneLineEdit = new QLineEdit(m_manualWidget);
|
||||
m_phoneLineEdit->setPlaceholderText("+7(777)777-77-77");
|
||||
gridLayout->addWidget(m_phoneLineEdit, 4, 1);
|
||||
|
||||
gridLayout->addWidget(makeLabel(tr("City")), 5, 0);
|
||||
m_cityLineEdit = new QLineEdit(m_manualWidget);
|
||||
gridLayout->addWidget(m_cityLineEdit, 5, 1);
|
||||
|
||||
gridLayout->addWidget(makeLabel(tr("You company name")), 6, 0);
|
||||
m_yourCompanyNameTextEdit = new QLineEdit(m_manualWidget);
|
||||
gridLayout->addWidget(m_yourCompanyNameTextEdit, 6, 1);
|
||||
|
||||
gridLayout->addWidget(makeLabel(tr("Hardware hash")), 9, 0);
|
||||
m_hardwareHashLineEdit = new QLineEdit(m_manualWidget);
|
||||
gridLayout->addWidget(m_hardwareHashLineEdit, 9, 1);
|
||||
|
||||
gridLayout->addItem(new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding), 10, 0, 1, 2);
|
||||
m_tabWidget->addTab(m_manualWidget, tr("Manual"));
|
||||
}
|
||||
|
||||
auto hLayout = new QHBoxLayout;
|
||||
@@ -97,7 +136,33 @@ void EditClientDialog::onFilesChanged(const QStringList &paths)
|
||||
if (!file.open(QIODevice::ReadOnly | QIODevice::Text))
|
||||
return;
|
||||
|
||||
file.close();
|
||||
m_filesPath = paths.at(0);
|
||||
m_configPathLabel->setText(paths.at(0).split("/").last());
|
||||
|
||||
auto configBody = QJsonDocument::fromJson(file.readAll()).object();
|
||||
if (configBody.contains("lastName"))
|
||||
m_lastNameLineEdit->setText(configBody.value("lastName").toString());
|
||||
if (configBody.contains("firstName"))
|
||||
m_firstNameLineEdit->setText(configBody.value("firstName").toString());
|
||||
if (configBody.contains("patronymic"))
|
||||
m_patronymicLineEdit->setText(configBody.value("patronymic").toString());
|
||||
if (configBody.contains("email"))
|
||||
m_emailLineEdit->setText(configBody.value("email").toString());
|
||||
if (configBody.contains("phone"))
|
||||
m_phoneLineEdit->setText(configBody.value("phone").toString());
|
||||
if (configBody.contains("city"))
|
||||
m_cityLineEdit->setText(configBody.value("city").toString());
|
||||
if (configBody.contains("yourCompany"))
|
||||
m_yourCompanyNameTextEdit->setText(configBody.value("yourCompany").toString());
|
||||
if (configBody.contains("hardwareHash"))
|
||||
m_hardwareHashLineEdit->setText(configBody.value("hardwareHash").toString());
|
||||
|
||||
file.close();
|
||||
}
|
||||
|
||||
QLabel* EditClientDialog::makeLabel(const QString &text)
|
||||
{
|
||||
auto *label = new QLabel(text, m_manualWidget);
|
||||
label->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Preferred);
|
||||
return label;
|
||||
};
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
#include <QDragEnterEvent>
|
||||
#include <QLabel>
|
||||
#include <QMimeData>
|
||||
class QLineEdit;
|
||||
class QTabWidget;
|
||||
|
||||
// Self
|
||||
@@ -25,11 +26,21 @@ private slots:
|
||||
private:
|
||||
void loadSettings();
|
||||
void saveSettings();
|
||||
QLabel* makeLabel(const QString &text);
|
||||
private:
|
||||
LicenseModel* m_model{nullptr};
|
||||
QTabWidget* m_tabWidget{nullptr};
|
||||
QLabel* m_configPathLabel{nullptr};
|
||||
|
||||
QWidget* m_manualWidget{nullptr};
|
||||
QLineEdit* m_firstNameLineEdit{nullptr}; //!< Поле ввода имени пользователя.
|
||||
QLineEdit* m_lastNameLineEdit{nullptr}; //!< Поле ввода фамилии пользователя.
|
||||
QLineEdit* m_patronymicLineEdit{nullptr}; //!< Поле ввода отчества пользователя.
|
||||
QLineEdit* m_emailLineEdit{nullptr}; //!< Поле ввода электронной почты.
|
||||
QLineEdit* m_phoneLineEdit{nullptr}; //!< Поле ввода номера телефона.
|
||||
QLineEdit* m_yourCompanyNameTextEdit{nullptr}; //!< Поле ввода названия компании пользователя.
|
||||
QLineEdit* m_sellerNameTextEdit{nullptr}; //!< Поле ввода названия продавца (если используется).
|
||||
QLineEdit* m_cityLineEdit{nullptr}; //!< Поле ввода города.
|
||||
QLineEdit* m_hardwareHashLineEdit{nullptr}; //!< Поле для отображения хеша оборудования.
|
||||
QPushButton* m_saveButton{nullptr};
|
||||
QString m_filesPath;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user