Files
cinema-ticket-management-sy…/ui/widgets/directories_management_widget.h
T

48 lines
1.2 KiB
C++
Raw Normal View History

2026-07-12 14:34:52 +04:00
#ifndef DIRECTORIES_MANAGEMENT_WIDGET_H
#define DIRECTORIES_MANAGEMENT_WIDGET_H
#include "ui_directories_management_widget.h"
#include <QWidget>
// Forward declaration
class HallsModel;
class MoviesModel;
class GenresModel;
class HallsRepositoryInterface;
class MoviesRepositoryInterface;
class GenresRepositoryInterface;
class DirectoriesManagementWidget : public QWidget,
private Ui::DirectoriesManagementWidget {
Q_OBJECT
private:
GenresModel *genresModel_;
GenresRepositoryInterface *genresRepository_;
HallsModel *hallsModel_;
HallsRepositoryInterface *hallsRepository_;
MoviesModel *moviesModel_;
MoviesRepositoryInterface *moviesRepository_;
qint32 selectedGenreId_;
qint32 selectedHallId_;
qint32 selectedMovieId_;
public:
explicit DirectoriesManagementWidget(QWidget *parent = nullptr);
private:
void initializeModels();
void initializeRepositories();
void setupConnections();
void setupGenreFinder();
void setupTableViews();
private slots:
void onGenreFieldRetrieved(const QSqlField &field);
void onPushButtonAddGenreClicked();
void onPushButtonAddHallClicked();
void onPushButtonAddMovieClicked();
};
#endif // DIRECTORIES_MANAGEMENT_WIDGET_H