feat: added local settings

This commit is contained in:
2026-01-18 12:20:32 +03:00
parent 46504c1b06
commit 9b51e3f3e7
5 changed files with 28 additions and 13 deletions

View File

@@ -6,15 +6,17 @@
#include <QPushButton>
#include <QJsonDocument>
#include <QJsonObject>
#include <QSettings>
#include <QTabWidget>
#include <QVBoxLayout>
// Self
#include "DropFileWidget.h"
#include "DropFileWidget.h"
#include "../def.h"
#include "DropFileWidget.h"
#include "LicenseModel/LicenseModel.h"
#define WINDOW_SIZE "WindowSize"
EditClientDialog::EditClientDialog(LicenseModel* model, QWidget *parent)
: QDialog(parent)
, m_model(model)
@@ -115,12 +117,15 @@ EditClientDialog::~EditClientDialog()
void EditClientDialog::loadSettings()
{
QSettings settings(ORGANIZATION_NAME, metaObject()->className());
if (settings.contains(WINDOW_SIZE))
resize(settings.value(WINDOW_SIZE).toSize());
}
void EditClientDialog::saveSettings()
{
QSettings settings(ORGANIZATION_NAME, metaObject()->className());
settings.setValue(WINDOW_SIZE, size());
}
void EditClientDialog::onSaveButtonClicked()

View File

@@ -151,15 +151,15 @@ bool LicenseModel::prepareDatabase()
void LicenseModel::addClient(const LicenseItem &item)
{
m_data.append(item);
}
void LicenseModel::deleteClient(const LicenseItem &item)
void LicenseModel::deleteClient(int index)
{
m_data.removeAt(index);
}
void LicenseModel::editClient(const LicenseItem &item)
void LicenseModel::editClient(const LicenseItem &item, int index)
{
m_data[index] = item;
}

View File

@@ -43,8 +43,8 @@ public:
QString getStatusText();
bool prepareDatabase();
void addClient(const LicenseItem &item);
void deleteClient(const LicenseItem &item);
void editClient(const LicenseItem &item);
void deleteClient(int index);
void editClient(const LicenseItem &item, int index);
private:
bool checkTables();
private:

View File

@@ -8,6 +8,7 @@
#include <QMenu>
#include <QMessageBox>
#include <QPushButton>
#include <QSettings>
#include <QTableView>
#include <QTimer>
#include <QToolBar>
@@ -15,15 +16,19 @@
#include <QContextMenuEvent>
// Self
#include "../def.h"
#include "LicenseModel/LicenseModel.h"
#include "EditClientDialog/EditClientDialog.h"
#define WINDOW_SIZE "WindowSize"
MainWidget::MainWidget(QWidget *parent)
: QMainWindow(parent)
, m_licenseModel(new LicenseModel(this))
{
setWindowIcon(QIcon(QStringLiteral("qrc:/deps/icon.png")));
setWindowTitle("LicenseManager");
setMinimumSize({800, 600});
resize({800, 600});
// Model init
@@ -179,10 +184,13 @@ void MainWidget::closeEvent(QCloseEvent *event)
void MainWidget::loadSettings()
{
QSettings settings(ORGANIZATION_NAME, metaObject()->className());
if (settings.contains(WINDOW_SIZE))
resize(settings.value(WINDOW_SIZE).toSize());
}
void MainWidget::saveSettings()
{
QSettings settings(ORGANIZATION_NAME, metaObject()->className());
settings.setValue(WINDOW_SIZE, size());
}

View File

@@ -1,8 +1,10 @@
#ifndef LICENSEMANAGER_DEF_H
#define LICENSEMANAGER_DEF_H
#include <QDir>
#include <QString>
const static QString DB_PATH = "./db.sqlite";
const static QString ORGANIZATION_NAME = "LicenseManager";
#endif //LICENSEMANAGER_DEF_H