Finance manager
Лабораторна робота №2 - Документація коду
Loading...
Searching...
No Matches
ReportsWindow.h
Go to the documentation of this file.
1#pragma once
2
3#include <QDialog>
4#include <QPushButton>
5#include <QVBoxLayout>
6#include <QTextEdit>
7#include <QLabel>
8#include <QLineEdit>
9#include <QComboBox>
10#include <QHBoxLayout>
11#include "Logic.h"
12#include "CurrencyConverter.h"
13
26class ReportsWindow : public QDialog {
27 Q_OBJECT
28
29public:
35 ReportsWindow(const User &user, QWidget *parent = nullptr);
36
37private slots:
44
50 void onExportCSV();
51
57 void onExportJSON();
58
62 void onClose();
63
68
72 void onCurrencyChanged();
73
74private:
78 void refreshReport();
79
80 const User &user;
81 QTextEdit *output;
82 QLineEdit *pathInput;
83 QComboBox *currencyCombo;
84 QPushButton *btnUpdateRates;
87};
Оголошення основних функцій бізнес-логіки програми.
Handles currency conversion with automatic exchange rate updates from API.
Definition CurrencyConverter.h:15
Вікно для генерації та відображення звітів, а також їх експорту у CSV/JSON.
Definition ReportsWindow.h:26
void refreshReport()
Оновлює відображення звіту з урахуванням вибраної валюти.
Definition ReportsWindow.cpp:101
QString selectedCurrency
Поточна вибрана валюта для відображення.
Definition ReportsWindow.h:86
QLineEdit * pathInput
Поле для введення шляху збереження файлу (для експорту).
Definition ReportsWindow.h:82
void onClose()
Слот для закриття поточного діалогового вікна.
Definition ReportsWindow.cpp:266
const User & user
Посилання (лише для читання) на користувача, для якого генерується звіт.
Definition ReportsWindow.h:80
QTextEdit * output
Текстове поле для відображення згенерованого звіту.
Definition ReportsWindow.h:81
void onUpdateExchangeRates()
Слот для оновлення курсу валют з API.
Definition ReportsWindow.cpp:181
void onExportCSV()
Слот для експорту поточного звіту у формат CSV.
Definition ReportsWindow.cpp:217
void onExportJSON()
Слот для експорту поточного звіту у формат JSON.
Definition ReportsWindow.cpp:244
void onGenerateFullReport()
Слот, що спрацьовує при натисканні "Сформувати повний звіт".
Definition ReportsWindow.cpp:92
QComboBox * currencyCombo
Випадаючий список для вибору валюти відображення.
Definition ReportsWindow.h:83
CurrencyConverter converter
Конвертер валют для перетворення сум.
Definition ReportsWindow.h:85
QPushButton * btnUpdateRates
Кнопка для оновлення курсів валют з API.
Definition ReportsWindow.h:84
void onCurrencyChanged()
Слот, що спрацьовує при зміні вибраної валюти.
Definition ReportsWindow.cpp:202
Основна модель даних, що представляє одного користувача.
Definition User.h:20