From 9b51e3f3e71ba07e05c40f640e302d076ea981b5 Mon Sep 17 00:00:00 2001 From: ziabric Date: Sun, 18 Jan 2026 12:20:32 +0300 Subject: [PATCH] feat: added local settings --- src/EditClientDialog/EditClientDialog.cpp | 13 +++++++++---- src/LicenseModel/LicenseModel.cpp | 10 +++++----- src/LicenseModel/LicenseModel.h | 4 ++-- src/MainWidget/MainWidget.cpp | 12 ++++++++++-- src/def.h | 2 ++ 5 files changed, 28 insertions(+), 13 deletions(-) diff --git a/src/EditClientDialog/EditClientDialog.cpp b/src/EditClientDialog/EditClientDialog.cpp index f2c268a..5af672c 100644 --- a/src/EditClientDialog/EditClientDialog.cpp +++ b/src/EditClientDialog/EditClientDialog.cpp @@ -6,15 +6,17 @@ #include #include #include +#include #include #include // 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() diff --git a/src/LicenseModel/LicenseModel.cpp b/src/LicenseModel/LicenseModel.cpp index 9997e92..88ae12a 100644 --- a/src/LicenseModel/LicenseModel.cpp +++ b/src/LicenseModel/LicenseModel.cpp @@ -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; } diff --git a/src/LicenseModel/LicenseModel.h b/src/LicenseModel/LicenseModel.h index 808f8bf..af5aeff 100644 --- a/src/LicenseModel/LicenseModel.h +++ b/src/LicenseModel/LicenseModel.h @@ -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: diff --git a/src/MainWidget/MainWidget.cpp b/src/MainWidget/MainWidget.cpp index e15e9b6..9ab2344 100644 --- a/src/MainWidget/MainWidget.cpp +++ b/src/MainWidget/MainWidget.cpp @@ -8,6 +8,7 @@ #include #include #include +#include #include #include #include @@ -15,15 +16,19 @@ #include // 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()); } diff --git a/src/def.h b/src/def.h index 366de7a..d361355 100644 --- a/src/def.h +++ b/src/def.h @@ -1,8 +1,10 @@ #ifndef LICENSEMANAGER_DEF_H #define LICENSEMANAGER_DEF_H +#include #include const static QString DB_PATH = "./db.sqlite"; +const static QString ORGANIZATION_NAME = "LicenseManager"; #endif //LICENSEMANAGER_DEF_H \ No newline at end of file