57 lines
1.3 KiB
C++
57 lines
1.3 KiB
C++
#ifndef LINBOSTARTACTIONS_H
|
|
#define LINBOSTARTACTIONS_H
|
|
|
|
#include <QObject>
|
|
#include <QWidget>
|
|
#include <QHBoxLayout>
|
|
#include <QStackedWidget>
|
|
#include <QList>
|
|
#include <QLabel>
|
|
|
|
#include "linbobackend.h"
|
|
#include "linbologger.h"
|
|
#include "linboosselectionrow.h"
|
|
#include "qmodernstackedwidget.h"
|
|
#include "qmodernpushbutton.h"
|
|
#include "qmodernprogressbar.h"
|
|
|
|
class LinboStartActions : public QWidget
|
|
{
|
|
Q_OBJECT
|
|
public:
|
|
explicit LinboStartActions(LinboBackend* backend, QWidget *parent = nullptr);
|
|
|
|
protected:
|
|
void resizeEvent(QResizeEvent *event) override;
|
|
|
|
private:
|
|
LinboBackend* backend;
|
|
|
|
QModernStackedWidget* stackView;
|
|
|
|
QWidget* buttonWidget;
|
|
QModernPushButton* startOsButton;
|
|
QModernPushButton* syncOsButton;
|
|
QModernPushButton* reinstallOsButton;
|
|
QList<QModernPushButton*> actionButtons;
|
|
|
|
QWidget* progressBarWidget;
|
|
QModernProgressBar* progressBar;
|
|
QFont logFont;
|
|
QLabel* logLabel;
|
|
|
|
bool inited;
|
|
|
|
private slots:
|
|
void resizeAndPositionAllItems();
|
|
void handleCurrentOsChanged(LinboOs* newOs);
|
|
void handleLinboStateChanged(LinboBackend::LinboState newState);
|
|
void handleLatestLogChanged(const LinboLogger::LinboLog& latestLog);
|
|
void handleAutostartTimeoutProgressChanged();
|
|
|
|
signals:
|
|
void selectedOsChanged();
|
|
|
|
};
|
|
|
|
#endif // LINBOSTARTACTIONS_H
|