Files
RRJServer/InstructorsAndTrainees/widgets/versionselectwidget.h
2025-01-21 15:43:30 +03:00

55 lines
1.5 KiB
C++

#ifndef VERSIONSELECTWIDGET_H
#define VERSIONSELECTWIDGET_H
#include <QListWidget>
#include <QWidget>
#include <Core/sendsystem.h>
#include <Core/versioncontainer.h>
#include <Core/notifycontroller.h>
#include <streamingversiondata.h>
#include <Widgets/newversionwidget.h>
namespace Ui {
class VersionSelectWidget;
}
class VersionSelectWidget : public QWidget
{
Q_OBJECT
public:
explicit VersionSelectWidget(QWidget *parent = nullptr);
void initialize(SendSystem *sendSystem,VersionContainer *versionContainer,NotifyController *notifyController);
void fillView(QList<StreamingVersionData*> *serverData);
void sendCopyEmit(QString newName);
void setAuthor(QString name);
~VersionSelectWidget();
private slots:
void on_verListView_itemDoubleClicked(QListWidgetItem *item);
void on_createDuplicateButton_clicked();
void on_DeleteVersionButton_clicked();
void on_switchServerVersionButton_clicked();
signals:
void sigSendDeleteVersion(StreamingVersionData *streaming);
void sigSendSwitchVersion(StreamingVersionData *selectVersion);
void sigSendCopyVersion(QString versionPair);
void sigSendNotify(QString message);
private:
Ui::VersionSelectWidget *ui;
SendSystem *sendSystem;
QList<StreamingVersionData*> *serverDataList;
VersionContainer *versionContainer;
NotifyController *notifyController;
StreamingVersionData *selectedVersion;
QString authorName;
QString changableText(bool flag);
};
#endif // VERSIONSELECTWIDGET_H