Project Manager Can Cancel Project Builds (#1694)

* Fixed misc building and project screen bugs, added ability to cancel active builds and queued builds

* Cancelling in-progress cmake build working

Signed-off-by: nggieber <nggieber@amazon.com>
This commit is contained in:
AMZN-nggieber
2021-07-01 21:53:54 -07:00
committed by GitHub
parent e6cb13f14f
commit 9758aea3d6
17 changed files with 591 additions and 342 deletions
@@ -9,12 +9,15 @@
#if !defined(Q_MOC_RUN)
#include <ProjectInfo.h>
#include <AzCore/std/functional.h>
#include <QLabel>
#include <QPushButton>
#include <QSpacerItem>
#include <QLayout>
#endif
QT_FORWARD_DECLARE_CLASS(QPixmap)
QT_FORWARD_DECLARE_CLASS(QPushButton)
QT_FORWARD_DECLARE_CLASS(QAction)
QT_FORWARD_DECLARE_CLASS(QProgressBar)
@@ -34,7 +37,7 @@ namespace O3DE::ProjectManager
QLabel* GetOverlayLabel();
QProgressBar* GetProgressBar();
QPushButton* GetBuildButton();
QPushButton* GetActionButton();
signals:
void triggered();
@@ -45,7 +48,7 @@ namespace O3DE::ProjectManager
private:
QLabel* m_overlayLabel;
QProgressBar* m_progressBar;
QPushButton* m_buildButton;
QPushButton* m_actionButton;
bool m_enabled = true;
};
@@ -58,10 +61,13 @@ namespace O3DE::ProjectManager
explicit ProjectButton(const ProjectInfo& m_projectInfo, QWidget* parent = nullptr, bool processing = false);
~ProjectButton() = default;
void SetProjectButtonAction(const QString& text, AZStd::function<void()> lambda);
void SetProjectBuildButtonAction();
void SetLaunchButtonEnabled(bool enabled);
void ShowBuildButton(bool show);
void SetButtonOverlayText(const QString& text);
void SetProgressBarValue(int progress);
LabelButton* GetLabelButton();
signals:
void OpenProject(const QString& projectName);
@@ -75,9 +81,12 @@ namespace O3DE::ProjectManager
void BaseSetup();
void ProcessingSetup();
void ReadySetup();
void BuildThisProject();
ProjectInfo m_projectInfo;
LabelButton* m_projectImageLabel;
QFrame* m_projectFooter;
QMetaObject::Connection m_actionButtonConnection;
};
} // namespace O3DE::ProjectManager