diff --git a/Code/Tools/ProjectManager/Source/CreateProjectCtrl.h b/Code/Tools/ProjectManager/Source/CreateProjectCtrl.h index c453e2d500..7dea0cb9a2 100644 --- a/Code/Tools/ProjectManager/Source/CreateProjectCtrl.h +++ b/Code/Tools/ProjectManager/Source/CreateProjectCtrl.h @@ -11,7 +11,6 @@ #include #endif -// due to current limitations, customizing template Gems is disabled #define TEMPLATE_GEM_CONFIGURATION_ENABLED QT_FORWARD_DECLARE_CLASS(QStackedWidget) diff --git a/Code/Tools/ProjectManager/Source/GemCatalog/GemInfo.cpp b/Code/Tools/ProjectManager/Source/GemCatalog/GemInfo.cpp index 2f6491a77d..36f4489081 100644 --- a/Code/Tools/ProjectManager/Source/GemCatalog/GemInfo.cpp +++ b/Code/Tools/ProjectManager/Source/GemCatalog/GemInfo.cpp @@ -61,8 +61,8 @@ namespace O3DE::ProjectManager { switch (origin) { - case O3DEFoundation: - return "Open 3D Foundation"; + case Open3DEEngine: + return "Open 3D Engine"; case Local: return "Local"; default: diff --git a/Code/Tools/ProjectManager/Source/GemCatalog/GemInfo.h b/Code/Tools/ProjectManager/Source/GemCatalog/GemInfo.h index 6c9580b19a..c82b310fd9 100644 --- a/Code/Tools/ProjectManager/Source/GemCatalog/GemInfo.h +++ b/Code/Tools/ProjectManager/Source/GemCatalog/GemInfo.h @@ -43,7 +43,7 @@ namespace O3DE::ProjectManager enum GemOrigin { - O3DEFoundation = 1 << 0, + Open3DEEngine = 1 << 0, Local = 1 << 1, NumGemOrigins = 2 }; diff --git a/Code/Tools/ProjectManager/Source/NewProjectSettingsScreen.cpp b/Code/Tools/ProjectManager/Source/NewProjectSettingsScreen.cpp index 26e5e074e5..c0c96d8281 100644 --- a/Code/Tools/ProjectManager/Source/NewProjectSettingsScreen.cpp +++ b/Code/Tools/ProjectManager/Source/NewProjectSettingsScreen.cpp @@ -97,10 +97,21 @@ namespace O3DE::ProjectManager { m_templates = templatesResult.GetValue(); - // sort alphabetically by display name because they could be in any order + // sort alphabetically by display name (but putting Standard first) because they could be in any order std::sort(m_templates.begin(), m_templates.end(), [](const ProjectTemplateInfo& arg1, const ProjectTemplateInfo& arg2) { - return arg1.m_displayName.toLower() < arg2.m_displayName.toLower(); + if (arg1.m_displayName == "Standard") + { + return true; + } + else if (arg2.m_displayName == "Standard") + { + return false; + } + else + { + return arg1.m_displayName.toLower() < arg2.m_displayName.toLower(); + } }); for (int index = 0; index < m_templates.size(); ++index) diff --git a/Code/Tools/ProjectManager/Source/NewProjectSettingsScreen.h b/Code/Tools/ProjectManager/Source/NewProjectSettingsScreen.h index d812bfd091..924821e534 100644 --- a/Code/Tools/ProjectManager/Source/NewProjectSettingsScreen.h +++ b/Code/Tools/ProjectManager/Source/NewProjectSettingsScreen.h @@ -19,6 +19,7 @@ QT_FORWARD_DECLARE_CLASS(QFrame) namespace O3DE::ProjectManager { QT_FORWARD_DECLARE_CLASS(TagContainerWidget) + class NewProjectSettingsScreen : public ProjectSettingsScreen { diff --git a/Code/Tools/ProjectManager/Source/PythonBindings.cpp b/Code/Tools/ProjectManager/Source/PythonBindings.cpp index 00b6940255..50e00e4c84 100644 --- a/Code/Tools/ProjectManager/Source/PythonBindings.cpp +++ b/Code/Tools/ProjectManager/Source/PythonBindings.cpp @@ -650,6 +650,12 @@ namespace O3DE::ProjectManager gemInfo.m_summary = Py_To_String_Optional(data, "Summary", ""); gemInfo.m_version = Py_To_String_Optional(data, "Version", ""); gemInfo.m_requirement = Py_To_String_Optional(data, "Requirements", ""); + gemInfo.m_creator = Py_To_String_Optional(data, "origin", ""); + + if (gemInfo.m_creator.contains("Open 3D Engine")) + { + gemInfo.m_gemOrigin = GemInfo::GemOrigin::Open3DEEngine; + } if (data.contains("Tags")) {