You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-06 12:20:30 +00:00
Merge pull request #103875 from Meorge/feat/verbose-project-manager
Allow opening a project in verbose mode from the Project Manager
This commit is contained in:
@@ -263,7 +263,8 @@ void ProjectManager::_update_theme(bool p_skip_creation) {
|
||||
erase_missing_btn->add_theme_constant_override("h_separation", get_theme_constant(SNAME("sidebar_button_icon_separation"), SNAME("ProjectManager")));
|
||||
|
||||
open_btn_container->add_theme_constant_override("separation", 0);
|
||||
open_options_popup->set_item_icon(0, get_editor_theme_icon(SNAME("NodeWarning")));
|
||||
open_options_popup->set_item_icon(0, get_editor_theme_icon(SNAME("Notification")));
|
||||
open_options_popup->set_item_icon(1, get_editor_theme_icon(SNAME("NodeWarning")));
|
||||
}
|
||||
|
||||
// Asset library popup.
|
||||
@@ -500,6 +501,10 @@ void ProjectManager::_open_selected_projects() {
|
||||
args.push_back("--recovery-mode");
|
||||
}
|
||||
|
||||
if (open_in_verbose_mode) {
|
||||
args.push_back("--verbose");
|
||||
}
|
||||
|
||||
Error err = OS::get_singleton()->create_instance(args);
|
||||
if (err != OK) {
|
||||
loading_label->hide();
|
||||
@@ -616,6 +621,7 @@ void ProjectManager::_open_selected_projects_check_recovery_mode() {
|
||||
return;
|
||||
}
|
||||
|
||||
open_in_verbose_mode = false;
|
||||
open_in_recovery_mode = false;
|
||||
// Check if the project failed to load during last startup.
|
||||
if (project.recovery_mode) {
|
||||
@@ -773,7 +779,11 @@ void ProjectManager::_on_projects_updated() {
|
||||
|
||||
void ProjectManager::_on_open_options_selected(int p_option) {
|
||||
switch (p_option) {
|
||||
case 0: // Edit in recovery mode.
|
||||
case 0: // Edit in verbose mode.
|
||||
open_in_verbose_mode = true;
|
||||
_open_selected_projects_check_warnings();
|
||||
break;
|
||||
case 1: // Edit in recovery mode.
|
||||
_open_recovery_mode_ask(true);
|
||||
break;
|
||||
}
|
||||
@@ -1477,7 +1487,8 @@ ProjectManager::ProjectManager() {
|
||||
open_btn_container->add_child(open_options_btn);
|
||||
|
||||
open_options_popup = memnew(PopupMenu);
|
||||
open_options_popup->add_item(TTR("Edit in recovery mode"));
|
||||
open_options_popup->add_item(TTRC("Edit in verbose mode"));
|
||||
open_options_popup->add_item(TTRC("Edit in recovery mode"));
|
||||
open_options_popup->connect(SceneStringName(id_pressed), callable_mp(this, &ProjectManager::_on_open_options_selected));
|
||||
open_options_btn->add_child(open_options_popup);
|
||||
|
||||
|
||||
@@ -230,6 +230,7 @@ class ProjectManager : public Control {
|
||||
|
||||
String version_convert_feature;
|
||||
bool open_in_recovery_mode = false;
|
||||
bool open_in_verbose_mode = false;
|
||||
|
||||
#ifndef DISABLE_DEPRECATED
|
||||
void _minor_project_migrate();
|
||||
|
||||
Reference in New Issue
Block a user