Finance manager
Лабораторна робота №2 - Документація коду
Loading...
Searching...
No Matches
Public Member Functions | Private Slots | Private Member Functions | Private Attributes | List of all members
ShowTransactionsWindow Class Reference

Вікно, що відображає список всіх транзакцій користувача у вигляді таблиці. More...

#include <ShowTransactionsWindow.h>

Inheritance diagram for ShowTransactionsWindow:
Inheritance graph
[legend]
Collaboration diagram for ShowTransactionsWindow:
Collaboration graph
[legend]

Public Member Functions

 ShowTransactionsWindow (const Database &db, QWidget *parent=nullptr)
 Конструктор класу ShowTransactionsWindow.
 

Private Slots

void onUpdateExchangeRates ()
 Слот для оновлення курсу валют з API.
 
void onCurrencyChanged ()
 Слот, що спрацьовує при зміні вибраної валюти.
 

Private Member Functions

void refreshTable ()
 Оновлює таблицю транзакцій з урахуванням вибраної валюти.
 

Private Attributes

QTableWidget * table
 Таблиця для візуального відображення списку транзакцій.
 
const Databasedb
 Посилання на базу даних для отримання транзакцій.
 
QComboBox * currencyCombo
 Випадаючий список для вибору валюти відображення.
 
QPushButton * btnUpdateRates
 Кнопка для оновлення курсів валют з API.
 
CurrencyConverter converter
 Конвертер валют для перетворення сум.
 

Detailed Description

Вікно, що відображає список всіх транзакцій користувача у вигляді таблиці.

Це вікно призначене лише для читання; воно завантажує дані з бази даних і показує їх у QTableWidget.

Constructor & Destructor Documentation

◆ ShowTransactionsWindow()

ShowTransactionsWindow::ShowTransactionsWindow ( const Database db,
QWidget *  parent = nullptr 
)
explicit

Конструктор класу ShowTransactionsWindow.

Конструктор ShowTransactionsWindow.

Parameters
dbПосилання на базу даних (лише для читання), з якої завантажуються транзакції.
parentВказівник на батьківський віджет (зазвичай 0 або nullptr).

Ініціалізує вікно, яке відображає всі транзакції у вигляді таблиці. Логіка конструктора:

  1. Налаштовує заголовок, розмір та саму таблицю (QTableWidget).
  2. Встановлює заголовки колонок ("Дата", "Категорія", "Сума").
  3. Отримує список всіх транзакцій з об'єкта Database.
  4. Встановлює кількість рядків у таблиці відповідно до кількості транзакцій.
  5. Ітерує по списку транзакцій та заповнює рядки таблиці даними.
  6. Під час заповнення форматує дату (з Unix timestamp у рядок) та суму (як число з 2 знаками після коми).
  7. Додає готову таблицю до головного компонувальника вікна.

Member Function Documentation

◆ onCurrencyChanged

void ShowTransactionsWindow::onCurrencyChanged ( )
privateslot

Слот, що спрацьовує при зміні вибраної валюти.

◆ onUpdateExchangeRates

void ShowTransactionsWindow::onUpdateExchangeRates ( )
privateslot

Слот для оновлення курсу валют з API.

◆ refreshTable()

void ShowTransactionsWindow::refreshTable ( )
private

Оновлює таблицю транзакцій з урахуванням вибраної валюти.

Member Data Documentation

◆ btnUpdateRates

QPushButton* ShowTransactionsWindow::btnUpdateRates
private

Кнопка для оновлення курсів валют з API.

◆ converter

CurrencyConverter ShowTransactionsWindow::converter
private

Конвертер валют для перетворення сум.

◆ currencyCombo

QComboBox* ShowTransactionsWindow::currencyCombo
private

Випадаючий список для вибору валюти відображення.

◆ db

const Database& ShowTransactionsWindow::db
private

Посилання на базу даних для отримання транзакцій.

◆ table

QTableWidget* ShowTransactionsWindow::table
private

Таблиця для візуального відображення списку транзакцій.


The documentation for this class was generated from the following files: