Add `--import` command-line flag
This commit is contained in:
parent
a7b860250f
commit
9d01793dff
|
@ -304,6 +304,7 @@ public:
|
||||||
EditorFileSystemDirectory *get_filesystem();
|
EditorFileSystemDirectory *get_filesystem();
|
||||||
bool is_scanning() const;
|
bool is_scanning() const;
|
||||||
bool is_importing() const { return importing; }
|
bool is_importing() const { return importing; }
|
||||||
|
bool doing_first_scan() const { return first_scan; }
|
||||||
float get_scanning_progress() const;
|
float get_scanning_progress() const;
|
||||||
void scan();
|
void scan();
|
||||||
void scan_changes();
|
void scan_changes();
|
||||||
|
|
|
@ -92,6 +92,7 @@
|
||||||
#include "editor/debugger/editor_debugger_node.h"
|
#include "editor/debugger/editor_debugger_node.h"
|
||||||
#include "editor/doc_data_class_path.gen.h"
|
#include "editor/doc_data_class_path.gen.h"
|
||||||
#include "editor/doc_tools.h"
|
#include "editor/doc_tools.h"
|
||||||
|
#include "editor/editor_file_system.h"
|
||||||
#include "editor/editor_help.h"
|
#include "editor/editor_help.h"
|
||||||
#include "editor/editor_node.h"
|
#include "editor/editor_node.h"
|
||||||
#include "editor/editor_paths.h"
|
#include "editor/editor_paths.h"
|
||||||
|
@ -184,6 +185,7 @@ static OS::ProcessID editor_pid = 0;
|
||||||
static bool found_project = false;
|
static bool found_project = false;
|
||||||
static bool auto_build_solutions = false;
|
static bool auto_build_solutions = false;
|
||||||
static String debug_server_uri;
|
static String debug_server_uri;
|
||||||
|
static bool wait_for_import = false;
|
||||||
#ifndef DISABLE_DEPRECATED
|
#ifndef DISABLE_DEPRECATED
|
||||||
static int converter_max_kb_file = 4 * 1024; // 4MB
|
static int converter_max_kb_file = 4 * 1024; // 4MB
|
||||||
static int converter_max_line_length = 100000;
|
static int converter_max_line_length = 100000;
|
||||||
|
@ -617,6 +619,7 @@ void Main::print_help(const char *p_binary) {
|
||||||
print_help_option("--main-loop <main_loop_name>", "Run a MainLoop specified by its global class name.\n");
|
print_help_option("--main-loop <main_loop_name>", "Run a MainLoop specified by its global class name.\n");
|
||||||
print_help_option("--check-only", "Only parse for errors and quit (use with --script).\n");
|
print_help_option("--check-only", "Only parse for errors and quit (use with --script).\n");
|
||||||
#ifdef TOOLS_ENABLED
|
#ifdef TOOLS_ENABLED
|
||||||
|
print_help_option("--import", "Starts the editor, waits for any resources to be imported, and then quits.\n", CLI_OPTION_AVAILABILITY_EDITOR);
|
||||||
print_help_option("--export-release <preset> <path>", "Export the project in release mode using the given preset and output path. The preset name should match one defined in \"export_presets.cfg\".\n", CLI_OPTION_AVAILABILITY_EDITOR);
|
print_help_option("--export-release <preset> <path>", "Export the project in release mode using the given preset and output path. The preset name should match one defined in \"export_presets.cfg\".\n", CLI_OPTION_AVAILABILITY_EDITOR);
|
||||||
print_help_option("", "<path> should be absolute or relative to the project directory, and include the filename for the binary (e.g. \"builds/game.exe\").\n");
|
print_help_option("", "<path> should be absolute or relative to the project directory, and include the filename for the binary (e.g. \"builds/game.exe\").\n");
|
||||||
print_help_option("", "The target directory must exist.\n");
|
print_help_option("", "The target directory must exist.\n");
|
||||||
|
@ -1420,12 +1423,17 @@ Error Main::setup(const char *execpath, int argc, char *argv[], bool p_second_ph
|
||||||
OS::get_singleton()->print("Missing file to load argument after --validate-extension-api, aborting.");
|
OS::get_singleton()->print("Missing file to load argument after --validate-extension-api, aborting.");
|
||||||
goto error;
|
goto error;
|
||||||
}
|
}
|
||||||
|
} else if (I->get() == "--import") {
|
||||||
|
editor = true;
|
||||||
|
cmdline_tool = true;
|
||||||
|
wait_for_import = true;
|
||||||
|
quit_after = 1;
|
||||||
} else if (I->get() == "--export-release" || I->get() == "--export-debug" ||
|
} else if (I->get() == "--export-release" || I->get() == "--export-debug" ||
|
||||||
I->get() == "--export-pack") { // Export project
|
I->get() == "--export-pack") { // Export project
|
||||||
// Actually handling is done in start().
|
// Actually handling is done in start().
|
||||||
editor = true;
|
editor = true;
|
||||||
cmdline_tool = true;
|
cmdline_tool = true;
|
||||||
|
wait_for_import = true;
|
||||||
main_args.push_back(I->get());
|
main_args.push_back(I->get());
|
||||||
#ifndef DISABLE_DEPRECATED
|
#ifndef DISABLE_DEPRECATED
|
||||||
} else if (I->get() == "--export") { // For users used to 3.x syntax.
|
} else if (I->get() == "--export") { // For users used to 3.x syntax.
|
||||||
|
@ -4084,6 +4092,12 @@ bool Main::iteration() {
|
||||||
exit = true;
|
exit = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef TOOLS_ENABLED
|
||||||
|
if (wait_for_import && EditorFileSystem::get_singleton()->doing_first_scan()) {
|
||||||
|
exit = false;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
if (fixed_fps != -1) {
|
if (fixed_fps != -1) {
|
||||||
return exit;
|
return exit;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue