Files
RRJServer/InstructorsAndTrainees/widgets/versionselectwidget.h
2025-11-26 17:28:22 +03:00

77 lines
1.8 KiB
C++

#ifndef VERSIONSELECTWIDGET_H
#define VERSIONSELECTWIDGET_H
#include <QListWidget>
#include <QWidget>
#include <QDialog>
#include "versioncontainer.h"
#include "streamingversiondata.h"
#include "dialognewversion.h"
#include "waitanimationwidget.h"
#include "connectortoserver.h"
#include "versioncontainer.h"
namespace Ui {
class VersionSelectWidget;
}
class VersionSelectWidget : public QDialog
{
Q_OBJECT
public:
explicit VersionSelectWidget(ConnectorToServer* connectorToServer, QWidget *parent = nullptr);
~VersionSelectWidget();
void initialize();
void sendCopyEmit(QString newName);
void setAuthor(QString name);
public:
void resizeEvent(QResizeEvent *event) override;
private slots:
void on_createDuplicateButton_clicked();
void on_deleteVersionButton_clicked();
void on_switchServerVersionButton_clicked();
void on_verListView_itemClicked(QListWidgetItem *item);
private slots:
void slot_activateLoadAnimation(bool flag);
void slot_showServerList(QList<StreamingVersionData*> *serverList);
void slot_SetVersion(StreamingVersionData* serverVersion);
signals:
void sigSendDeleteVersion(StreamingVersionData *streaming);
void sigSendSwitchVersion(StreamingVersionData *selectVersion);
void sigSendCopyVersion(QString versionPair);
void signal_getVersion();
private:
QString changableText(bool flag);
void fillView(QList<StreamingVersionData*> *serverData);
private:
Ui::VersionSelectWidget *ui;
ConnectorToServer* connectorToServer;
VersionContainer *versionContainer;
QList<StreamingVersionData*> *serverDataList;
StreamingVersionData *selectedVersion;
WaitAnimationWidget *waitAnimationWidget;
QString authorName;
bool flGetVersion;
};
#endif // VERSIONSELECTWIDGET_H