39 lines
944 B
C++
39 lines
944 B
C++
|
|
#ifndef SESSION_MANAGEMENT_WIDGET_H
|
||
|
|
#define SESSION_MANAGEMENT_WIDGET_H
|
||
|
|
|
||
|
|
#include "ui_session_management_widget.h"
|
||
|
|
#include <QWidget>
|
||
|
|
|
||
|
|
// Forward declaration
|
||
|
|
class SessionsModel;
|
||
|
|
class SessionsRepositoryInterface;
|
||
|
|
|
||
|
|
class SessionManagementWidget : public QWidget,
|
||
|
|
private Ui::SessionManagementWidget {
|
||
|
|
Q_OBJECT
|
||
|
|
|
||
|
|
private:
|
||
|
|
SessionsModel *sessionsModel_;
|
||
|
|
SessionsRepositoryInterface *sessionsRepository_;
|
||
|
|
qint32 selectedHallId_;
|
||
|
|
qint32 selectedMovieId_;
|
||
|
|
|
||
|
|
public:
|
||
|
|
explicit SessionManagementWidget(QWidget *parent = nullptr);
|
||
|
|
|
||
|
|
private:
|
||
|
|
void initializeRepositories();
|
||
|
|
void initializeModels();
|
||
|
|
void setupConnections();
|
||
|
|
void setupHallFinder();
|
||
|
|
void setupMovieFinder();
|
||
|
|
void setupTableView();
|
||
|
|
|
||
|
|
private slots:
|
||
|
|
void onPushButtonAddSessionClicked();
|
||
|
|
void onHallFieldRetrieved(const QSqlField &field);
|
||
|
|
void onMovieFieldRetrieved(const QSqlField &field);
|
||
|
|
};
|
||
|
|
|
||
|
|
#endif // SESSION_MANAGEMENT_WIDGET_H
|