-#include
-
-namespace O3DE::ProjectManager
-{
- FirstTimeUseScreen::FirstTimeUseScreen(QWidget* parent)
- : ScreenWidget(parent)
- {
- QVBoxLayout* vLayout = new QVBoxLayout();
- setLayout(vLayout);
- vLayout->setContentsMargins(s_contentMargins, s_contentMargins, s_contentMargins, s_contentMargins);
-
- QLabel* titleLabel = new QLabel(this);
- titleLabel->setText(tr("Ready. Set. Create!"));
- titleLabel->setStyleSheet("font-size: 60px");
- vLayout->addWidget(titleLabel);
-
- QLabel* introLabel = new QLabel(this);
- introLabel->setTextFormat(Qt::AutoText);
- introLabel->setText(tr("Welcome to O3DE! Start something new by creating a project. Not sure what to create?
Explore what\342\200\231s available by downloading our sample project.
"));
- introLabel->setStyleSheet("font-size: 14px");
- vLayout->addWidget(introLabel);
-
- QHBoxLayout* buttonLayout = new QHBoxLayout();
- buttonLayout->setSpacing(s_buttonSpacing);
-
- m_createProjectButton = CreateLargeBoxButton(QIcon(":/Add.svg"), tr("Create Project"), this);
- m_createProjectButton->setIconSize(QSize(s_iconSize, s_iconSize));
- buttonLayout->addWidget(m_createProjectButton);
-
- m_addProjectButton = CreateLargeBoxButton(QIcon(":/Select_Folder.svg"), tr("Add a Project"), this);
- m_addProjectButton->setIconSize(QSize(s_iconSize, s_iconSize));
- buttonLayout->addWidget(m_addProjectButton);
-
- QSpacerItem* buttonSpacer = new QSpacerItem(s_spacerSize, s_spacerSize, QSizePolicy::Expanding, QSizePolicy::Minimum);
- buttonLayout->addItem(buttonSpacer);
-
- vLayout->addItem(buttonLayout);
-
- QSpacerItem* verticalSpacer = new QSpacerItem(s_spacerSize, s_spacerSize, QSizePolicy::Minimum, QSizePolicy::Expanding);
- vLayout->addItem(verticalSpacer);
-
- // Using border-image allows for scaling options background-image does not support
- setStyleSheet("O3DE--ProjectManager--ScreenWidget { border-image: url(:/Backgrounds/FirstTimeBackgroundImage.jpg) repeat repeat; }");
-
- connect(m_createProjectButton, &QPushButton::pressed, this, &FirstTimeUseScreen::HandleNewProjectButton);
- connect(m_addProjectButton, &QPushButton::pressed, this, &FirstTimeUseScreen::HandleAddProjectButton);
- }
-
- ProjectManagerScreen FirstTimeUseScreen::GetScreenEnum()
- {
- return ProjectManagerScreen::FirstTimeUse;
- }
-
- void FirstTimeUseScreen::HandleNewProjectButton()
- {
- emit ResetScreenRequest(ProjectManagerScreen::CreateProject);
- emit ChangeScreenRequest(ProjectManagerScreen::CreateProject);
- }
- void FirstTimeUseScreen::HandleAddProjectButton()
- {
- emit ChangeScreenRequest(ProjectManagerScreen::ProjectsHome);
- }
-
- QPushButton* FirstTimeUseScreen::CreateLargeBoxButton(const QIcon& icon, const QString& text, QWidget* parent)
- {
- QPushButton* largeBoxButton = new QPushButton(icon, text, parent);
-
- largeBoxButton->setFixedSize(s_boxButtonWidth, s_boxButtonHeight);
- largeBoxButton->setFlat(true);
- largeBoxButton->setFocusPolicy(Qt::FocusPolicy::NoFocus);
- largeBoxButton->setStyleSheet("QPushButton { font-size: 14px; background-color: rgba(0, 0, 0, 191); }");
-
- return largeBoxButton;
- }
-
-} // namespace O3DE::ProjectManager
diff --git a/Code/Tools/ProjectManager/Source/FirstTimeUseScreen.h b/Code/Tools/ProjectManager/Source/FirstTimeUseScreen.h
deleted file mode 100644
index 80a2310d7a..0000000000
--- a/Code/Tools/ProjectManager/Source/FirstTimeUseScreen.h
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or
- * its licensors.
- *
- * For complete copyright and license terms please see the LICENSE at the root of this
- * distribution (the "License"). All use of this software is governed by the License,
- * or, if provided, by the license below or the license accompanying this file. Do not
- * remove or modify any license notices. This file is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *
- */
-#pragma once
-
-#if !defined(Q_MOC_RUN)
-#include
-#endif
-
-QT_FORWARD_DECLARE_CLASS(QIcon)
-QT_FORWARD_DECLARE_CLASS(QPushButton)
-
-namespace O3DE::ProjectManager
-{
- class FirstTimeUseScreen
- : public ScreenWidget
- {
- public:
- explicit FirstTimeUseScreen(QWidget* parent = nullptr);
- ~FirstTimeUseScreen() = default;
- ProjectManagerScreen GetScreenEnum() override;
-
- protected slots:
- void HandleNewProjectButton();
- void HandleAddProjectButton();
-
- private:
- QPushButton* CreateLargeBoxButton(const QIcon& icon, const QString& text, QWidget* parent = nullptr);
-
- QPushButton* m_createProjectButton;
- QPushButton* m_addProjectButton;
-
- inline constexpr static int s_contentMargins = 80;
- inline constexpr static int s_buttonSpacing = 30;
- inline constexpr static int s_iconSize = 24;
- inline constexpr static int s_spacerSize = 20;
- inline constexpr static int s_boxButtonWidth = 210;
- inline constexpr static int s_boxButtonHeight = 280;
- };
-
-} // namespace O3DE::ProjectManager
diff --git a/Code/Tools/ProjectManager/Source/NewProjectSettingsScreen.cpp b/Code/Tools/ProjectManager/Source/NewProjectSettingsScreen.cpp
index ffbf1bf6fe..b57a2b35b2 100644
--- a/Code/Tools/ProjectManager/Source/NewProjectSettingsScreen.cpp
+++ b/Code/Tools/ProjectManager/Source/NewProjectSettingsScreen.cpp
@@ -12,6 +12,9 @@
#include
#include
+#include
+#include
+#include
#include
#include
@@ -23,6 +26,7 @@
#include
#include
#include
+#include
namespace O3DE::ProjectManager
{
@@ -31,64 +35,81 @@ namespace O3DE::ProjectManager
NewProjectSettingsScreen::NewProjectSettingsScreen(QWidget* parent)
: ScreenWidget(parent)
{
- QHBoxLayout* hLayout = new QHBoxLayout();
- this->setLayout(hLayout);
+ QHBoxLayout* hLayout = new QHBoxLayout(this);
+ hLayout->setAlignment(Qt::AlignLeft);
+ hLayout->setContentsMargins(0,0,0,0);
+ // if we don't provide a parent for this box layout the stylesheet doesn't take
+ // if we don't set this in a frame (just use a sub-layout) all the content will align incorrectly horizontally
+ QFrame* projectSettingsFrame = new QFrame(this);
+ projectSettingsFrame->setObjectName("projectSettings");
QVBoxLayout* vLayout = new QVBoxLayout(this);
- QLabel* projectNameLabel = new QLabel(tr("Project Name"), this);
- vLayout->addWidget(projectNameLabel);
-
- m_projectNameLineEdit = new QLineEdit(tr("New Project"), this);
- vLayout->addWidget(m_projectNameLineEdit);
-
- QLabel* projectPathLabel = new QLabel(tr("Project Location"), this);
- vLayout->addWidget(projectPathLabel);
-
+ // you cannot remove content margins in qss
+ vLayout->setContentsMargins(0,0,0,0);
+ vLayout->setAlignment(Qt::AlignTop);
{
- QHBoxLayout* projectPathLayout = new QHBoxLayout(this);
+ m_projectName = new FormLineEditWidget(tr("Project name"), tr("New Project"), this);
+ m_projectName->setErrorLabelText(
+ tr("A project with this name already exists at this location. Please choose a new name or location."));
+ vLayout->addWidget(m_projectName);
- m_projectPathLineEdit = new QLineEdit(QStandardPaths::writableLocation(QStandardPaths::DocumentsLocation), this);
- projectPathLayout->addWidget(m_projectPathLineEdit);
+ m_projectPath =
+ new FormBrowseEditWidget(tr("Project Location"), QStandardPaths::writableLocation(QStandardPaths::DocumentsLocation), this);
+ m_projectPath->lineEdit()->setReadOnly(true);
+ m_projectPath->setErrorLabelText(tr("Please provide a valid path to a folder that exists"));
+ m_projectPath->lineEdit()->setValidator(new PathValidator(PathValidator::PathMode::ExistingFolder, this));
+ vLayout->addWidget(m_projectPath);
- QPushButton* browseButton = new QPushButton(tr("Browse"), this);
- connect(browseButton, &QPushButton::pressed, this, &NewProjectSettingsScreen::HandleBrowseButton);
- projectPathLayout->addWidget(browseButton);
-
- vLayout->addLayout(projectPathLayout);
- }
-
- QLabel* projectTemplateLabel = new QLabel(this);
- projectTemplateLabel->setText("Project Template");
- vLayout->addWidget(projectTemplateLabel);
-
- QHBoxLayout* templateLayout = new QHBoxLayout(this);
- vLayout->addItem(templateLayout);
-
- m_projectTemplateButtonGroup = new QButtonGroup(this);
- auto templatesResult = PythonBindingsInterface::Get()->GetProjectTemplates();
- if (templatesResult.IsSuccess() && !templatesResult.GetValue().isEmpty())
- {
- for (auto projectTemplate : templatesResult.GetValue())
+ // if we don't use a QFrame we cannot "contain" the widgets inside and move them around
+ // as a group
+ QFrame* projectTemplateWidget = new QFrame(this);
+ projectTemplateWidget->setObjectName("projectTemplate");
+ QVBoxLayout* containerLayout = new QVBoxLayout();
+ containerLayout->setAlignment(Qt::AlignTop);
{
- QRadioButton* radioButton = new QRadioButton(projectTemplate.m_name, this);
- radioButton->setProperty(k_pathProperty, projectTemplate.m_path);
- m_projectTemplateButtonGroup->addButton(radioButton);
+ QLabel* projectTemplateLabel = new QLabel(tr("Select a Project Template"));
+ projectTemplateLabel->setObjectName("projectTemplateLabel");
+ containerLayout->addWidget(projectTemplateLabel);
- templateLayout->addWidget(radioButton);
+ QLabel* projectTemplateDetailsLabel = new QLabel(tr("Project templates are pre-configured with relevant Gems that provide "
+ "additional functionality and content to the project."));
+ projectTemplateDetailsLabel->setWordWrap(true);
+ projectTemplateDetailsLabel->setObjectName("projectTemplateDetailsLabel");
+ containerLayout->addWidget(projectTemplateDetailsLabel);
+
+ QHBoxLayout* templateLayout = new QHBoxLayout(this);
+ containerLayout->addItem(templateLayout);
+
+ m_projectTemplateButtonGroup = new QButtonGroup(this);
+ m_projectTemplateButtonGroup->setObjectName("templateButtonGroup");
+ auto templatesResult = PythonBindingsInterface::Get()->GetProjectTemplates();
+ if (templatesResult.IsSuccess() && !templatesResult.GetValue().isEmpty())
+ {
+ for (auto projectTemplate : templatesResult.GetValue())
+ {
+ QRadioButton* radioButton = new QRadioButton(projectTemplate.m_name, this);
+ radioButton->setProperty(k_pathProperty, projectTemplate.m_path);
+ m_projectTemplateButtonGroup->addButton(radioButton);
+
+ containerLayout->addWidget(radioButton);
+ }
+
+ m_projectTemplateButtonGroup->buttons().first()->setChecked(true);
+ }
}
-
- m_projectTemplateButtonGroup->buttons().first()->setChecked(true);
+ projectTemplateWidget->setLayout(containerLayout);
+ vLayout->addWidget(projectTemplateWidget);
}
+ projectSettingsFrame->setLayout(vLayout);
- QSpacerItem* verticalSpacer = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding);
- vLayout->addItem(verticalSpacer);
+ hLayout->addWidget(projectSettingsFrame);
- hLayout->addItem(vLayout);
+ QWidget* projectTemplateDetails = new QWidget(this);
+ projectTemplateDetails->setObjectName("projectTemplateDetails");
+ hLayout->addWidget(projectTemplateDetails);
- QWidget* gemsListPlaceholder = new QWidget(this);
- gemsListPlaceholder->setFixedWidth(250);
- hLayout->addWidget(gemsListPlaceholder);
+ this->setLayout(hLayout);
}
ProjectManagerScreen NewProjectSettingsScreen::GetScreenEnum()
@@ -96,26 +117,12 @@ namespace O3DE::ProjectManager
return ProjectManagerScreen::NewProjectSettings;
}
- void NewProjectSettingsScreen::HandleBrowseButton()
- {
- QString defaultPath = m_projectPathLineEdit->text();
- if (defaultPath.isEmpty())
- {
- defaultPath = QStandardPaths::writableLocation(QStandardPaths::DocumentsLocation);
- }
-
- QString directory = QDir::toNativeSeparators(QFileDialog::getExistingDirectory(this, tr("New project path"), defaultPath));
- if (!directory.isEmpty())
- {
- m_projectPathLineEdit->setText(directory);
- }
- }
ProjectInfo NewProjectSettingsScreen::GetProjectInfo()
{
ProjectInfo projectInfo;
- projectInfo.m_projectName = m_projectNameLineEdit->text();
- projectInfo.m_path = QDir::toNativeSeparators(m_projectPathLineEdit->text() + "/" + projectInfo.m_projectName);
+ projectInfo.m_projectName = m_projectName->lineEdit()->text();
+ projectInfo.m_path = QDir::toNativeSeparators(m_projectPath->lineEdit()->text() + "/" + projectInfo.m_projectName);
return projectInfo;
}
@@ -127,18 +134,18 @@ namespace O3DE::ProjectManager
bool NewProjectSettingsScreen::Validate()
{
bool projectNameIsValid = true;
- if (m_projectNameLineEdit->text().isEmpty())
+ if (m_projectName->lineEdit()->text().isEmpty())
{
projectNameIsValid = false;
}
bool projectPathIsValid = true;
- if (m_projectPathLineEdit->text().isEmpty())
+ if (m_projectPath->lineEdit()->text().isEmpty())
{
projectPathIsValid = false;
}
- QDir path(QDir::toNativeSeparators(m_projectPathLineEdit->text() + "/" + m_projectNameLineEdit->text()));
+ QDir path(QDir::toNativeSeparators(m_projectPath->lineEdit()->text() + "/" + m_projectName->lineEdit()->text()));
if (path.exists() && !path.isEmpty())
{
projectPathIsValid = false;
diff --git a/Code/Tools/ProjectManager/Source/NewProjectSettingsScreen.h b/Code/Tools/ProjectManager/Source/NewProjectSettingsScreen.h
index 1cfd3c9c35..f0e9609fdc 100644
--- a/Code/Tools/ProjectManager/Source/NewProjectSettingsScreen.h
+++ b/Code/Tools/ProjectManager/Source/NewProjectSettingsScreen.h
@@ -17,10 +17,12 @@
#endif
QT_FORWARD_DECLARE_CLASS(QButtonGroup)
-QT_FORWARD_DECLARE_CLASS(QLineEdit)
namespace O3DE::ProjectManager
{
+ QT_FORWARD_DECLARE_CLASS(FormLineEditWidget)
+ QT_FORWARD_DECLARE_CLASS(FormBrowseEditWidget)
+
class NewProjectSettingsScreen
: public ScreenWidget
{
@@ -38,8 +40,8 @@ namespace O3DE::ProjectManager
void HandleBrowseButton();
private:
- QLineEdit* m_projectNameLineEdit;
- QLineEdit* m_projectPathLineEdit;
+ FormLineEditWidget* m_projectName;
+ FormBrowseEditWidget* m_projectPath;
QButtonGroup* m_projectTemplateButtonGroup;
};
diff --git a/Code/Tools/ProjectManager/Source/ProjectButtonWidget.cpp b/Code/Tools/ProjectManager/Source/ProjectButtonWidget.cpp
index dada54b1a2..4be876e79f 100644
--- a/Code/Tools/ProjectManager/Source/ProjectButtonWidget.cpp
+++ b/Code/Tools/ProjectManager/Source/ProjectButtonWidget.cpp
@@ -31,6 +31,7 @@ namespace O3DE::ProjectManager
LabelButton::LabelButton(QWidget* parent)
: QLabel(parent)
{
+ setObjectName("labelButton");
m_overlayLabel = new QLabel("", this);
m_overlayLabel->setObjectName("labelButtonOverlay");
m_overlayLabel->setWordWrap(true);
@@ -75,6 +76,8 @@ namespace O3DE::ProjectManager
void ProjectButton::Setup()
{
+ setObjectName("projectButton");
+
QVBoxLayout* vLayout = new QVBoxLayout();
vLayout->setSpacing(0);
vLayout->setContentsMargins(0, 0, 0, 0);
@@ -98,14 +101,21 @@ namespace O3DE::ProjectManager
m_deleteProjectAction = newProjectMenu->addAction(tr("Delete the Project"));
#endif
- m_projectSettingsMenuButton = new QPushButton(this);
- m_projectSettingsMenuButton->setText(m_projectName);
- m_projectSettingsMenuButton->setMenu(newProjectMenu);
- m_projectSettingsMenuButton->setFocusPolicy(Qt::FocusPolicy::NoFocus);
- m_projectSettingsMenuButton->setStyleSheet("font-size: 14px; text-align:left;");
- vLayout->addWidget(m_projectSettingsMenuButton);
+ QFrame* footer = new QFrame(this);
+ QHBoxLayout* hLayout = new QHBoxLayout();
+ hLayout->setContentsMargins(0, 0, 0, 0);
+ footer->setLayout(hLayout);
+ {
+ QLabel* projectNameLabel = new QLabel(m_projectName, this);
+ hLayout->addWidget(projectNameLabel);
- setFixedSize(s_projectImageWidth, s_projectImageHeight + m_projectSettingsMenuButton->height());
+ QPushButton* projectMenuButton = new QPushButton(this);
+ projectMenuButton->setObjectName("projectMenuButton");
+ projectMenuButton->setMenu(newProjectMenu);
+ hLayout->addWidget(projectMenuButton);
+ }
+
+ vLayout->addWidget(footer);
connect(m_projectImageLabel, &LabelButton::triggered, [this]() { emit OpenProject(m_projectName); });
connect(m_editProjectAction, &QAction::triggered, [this]() { emit EditProject(m_projectName); });
diff --git a/Code/Tools/ProjectManager/Source/ProjectButtonWidget.h b/Code/Tools/ProjectManager/Source/ProjectButtonWidget.h
index 43efaa1136..671debf6d0 100644
--- a/Code/Tools/ProjectManager/Source/ProjectButtonWidget.h
+++ b/Code/Tools/ProjectManager/Source/ProjectButtonWidget.h
@@ -73,7 +73,6 @@ namespace O3DE::ProjectManager
QString m_projectName;
QString m_projectImagePath;
LabelButton* m_projectImageLabel;
- QPushButton* m_projectSettingsMenuButton;
QAction* m_editProjectAction;
QAction* m_editProjectGemsAction;
QAction* m_copyProjectAction;
diff --git a/Code/Tools/ProjectManager/Source/ProjectManagerWindow.cpp b/Code/Tools/ProjectManager/Source/ProjectManagerWindow.cpp
index eb79f2da1e..76bcc2eb99 100644
--- a/Code/Tools/ProjectManager/Source/ProjectManagerWindow.cpp
+++ b/Code/Tools/ProjectManager/Source/ProjectManagerWindow.cpp
@@ -11,52 +11,46 @@
*/
#include
-#include
+#include
#include
#include
#include
-#include
-
namespace O3DE::ProjectManager
{
ProjectManagerWindow::ProjectManagerWindow(QWidget* parent, const AZ::IO::PathView& engineRootPath)
: QMainWindow(parent)
- , m_ui(new Ui::ProjectManagerWindowClass())
{
- m_ui->setupUi(this);
- QLayout* layout = m_ui->centralWidget->layout();
- layout->setMargin(0);
- layout->setSpacing(0);
- layout->setContentsMargins(0, 0, 0, 0);
-
m_pythonBindings = AZStd::make_unique(engineRootPath);
- m_screensCtrl = new ScreensCtrl();
- m_ui->verticalLayout->addWidget(m_screensCtrl);
+ setWindowTitle(tr("O3DE Project Manager"));
- connect(m_ui->projectsMenu, &QMenu::aboutToShow, this, &ProjectManagerWindow::HandleProjectsMenu);
- connect(m_ui->engineMenu, &QMenu::aboutToShow, this, &ProjectManagerWindow::HandleEngineMenu);
+ ScreensCtrl* screensCtrl = new ScreensCtrl();
+ // currently the tab order on the home page is based on the order of this list
+ QVector screenEnums =
+ {
+ ProjectManagerScreen::Projects,
+ ProjectManagerScreen::EngineSettings,
+ ProjectManagerScreen::CreateProject,
+ ProjectManagerScreen::UpdateProject
+ };
+ screensCtrl->BuildScreens(screenEnums);
+
+ setCentralWidget(screensCtrl);
+
+ // setup stylesheets and hot reloading
QDir rootDir = QString::fromUtf8(engineRootPath.Native().data(), aznumeric_cast(engineRootPath.Native().size()));
const auto pathOnDisk = rootDir.absoluteFilePath("Code/Tools/ProjectManager/Resources");
const auto qrcPath = QStringLiteral(":/ProjectManager/style");
AzQtComponents::StyleManager::addSearchPaths("style", pathOnDisk, qrcPath, engineRootPath);
+ // set stylesheet after creating the screens or their styles won't get updated
AzQtComponents::StyleManager::setStyleSheet(this, QStringLiteral("style:ProjectManager.qss"));
- QVector screenEnums =
- {
- ProjectManagerScreen::FirstTimeUse,
- ProjectManagerScreen::CreateProject,
- ProjectManagerScreen::ProjectsHome,
- ProjectManagerScreen::UpdateProject,
- ProjectManagerScreen::EngineSettings
- };
- m_screensCtrl->BuildScreens(screenEnums);
- m_screensCtrl->ForceChangeToScreen(ProjectManagerScreen::FirstTimeUse, false);
+ screensCtrl->ForceChangeToScreen(ProjectManagerScreen::Projects, false);
}
ProjectManagerWindow::~ProjectManagerWindow()
@@ -64,13 +58,4 @@ namespace O3DE::ProjectManager
m_pythonBindings.reset();
}
- void ProjectManagerWindow::HandleProjectsMenu()
- {
- m_screensCtrl->ChangeToScreen(ProjectManagerScreen::ProjectsHome);
- }
- void ProjectManagerWindow::HandleEngineMenu()
- {
- m_screensCtrl->ChangeToScreen(ProjectManagerScreen::EngineSettings);
- }
-
} // namespace O3DE::ProjectManager
diff --git a/Code/Tools/ProjectManager/Source/ProjectManagerWindow.h b/Code/Tools/ProjectManager/Source/ProjectManagerWindow.h
index d5c586e59b..74db3467c5 100644
--- a/Code/Tools/ProjectManager/Source/ProjectManagerWindow.h
+++ b/Code/Tools/ProjectManager/Source/ProjectManagerWindow.h
@@ -13,17 +13,9 @@
#if !defined(Q_MOC_RUN)
#include
-
-#include
-
#include
#endif
-namespace Ui
-{
- class ProjectManagerWindowClass;
-}
-
namespace O3DE::ProjectManager
{
class ProjectManagerWindow
@@ -35,13 +27,7 @@ namespace O3DE::ProjectManager
explicit ProjectManagerWindow(QWidget* parent, const AZ::IO::PathView& engineRootPath);
~ProjectManagerWindow();
- protected slots:
- void HandleProjectsMenu();
- void HandleEngineMenu();
-
private:
- QScopedPointer m_ui;
- ScreensCtrl* m_screensCtrl;
AZStd::unique_ptr m_pythonBindings;
};
diff --git a/Code/Tools/ProjectManager/Source/ProjectManagerWindow.ui b/Code/Tools/ProjectManager/Source/ProjectManagerWindow.ui
deleted file mode 100644
index 633cd61182..0000000000
--- a/Code/Tools/ProjectManager/Source/ProjectManagerWindow.ui
+++ /dev/null
@@ -1,67 +0,0 @@
-
-
- ProjectManagerWindowClass
-
-
-
- 0
- 0
- 1200
- 800
-
-
-
-
- 0
- 0
-
-
-
- O3DE Project Manager
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Code/Tools/ProjectManager/Source/ProjectsHomeScreen.cpp b/Code/Tools/ProjectManager/Source/ProjectsHomeScreen.cpp
deleted file mode 100644
index 6c60685358..0000000000
--- a/Code/Tools/ProjectManager/Source/ProjectsHomeScreen.cpp
+++ /dev/null
@@ -1,206 +0,0 @@
-/*
- * All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or
- * its licensors.
- *
- * For complete copyright and license terms please see the LICENSE at the root of this
- * distribution (the "License"). All use of this software is governed by the License,
- * or, if provided, by the license below or the license accompanying this file. Do not
- * remove or modify any license notices. This file is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *
- */
-
-#include
-
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include