Move DisplayServer enums and typedefs to DisplayServerEnums
This will allow decoupling `display_server.h` from a number of headers in the codebase which only require those enums and not all the DisplayServer API.
This commit is contained in:
+55
-55
@@ -235,13 +235,13 @@ static bool single_threaded_scene = false;
|
||||
|
||||
// Display
|
||||
|
||||
static DisplayServer::WindowMode window_mode = DisplayServer::WINDOW_MODE_WINDOWED;
|
||||
static DisplayServer::ScreenOrientation window_orientation = DisplayServer::SCREEN_LANDSCAPE;
|
||||
static DisplayServer::VSyncMode window_vsync_mode = DisplayServer::VSYNC_ENABLED;
|
||||
static DisplayServerEnums::WindowMode window_mode = DisplayServerEnums::WINDOW_MODE_WINDOWED;
|
||||
static DisplayServerEnums::ScreenOrientation window_orientation = DisplayServerEnums::SCREEN_LANDSCAPE;
|
||||
static DisplayServerEnums::VSyncMode window_vsync_mode = DisplayServerEnums::VSYNC_ENABLED;
|
||||
static uint32_t window_flags = 0;
|
||||
static Size2i window_size = Size2i(1152, 648);
|
||||
|
||||
static int init_screen = DisplayServer::SCREEN_PRIMARY;
|
||||
static int init_screen = DisplayServerEnums::SCREEN_PRIMARY;
|
||||
static bool init_fullscreen = false;
|
||||
static bool init_maximized = false;
|
||||
static bool init_windowed = false;
|
||||
@@ -1302,10 +1302,10 @@ Error Main::setup(const char *execpath, int argc, char *argv[], bool p_second_ph
|
||||
}
|
||||
} else if (arg == "-f" || arg == "--fullscreen") { // force fullscreen
|
||||
init_fullscreen = true;
|
||||
window_mode = DisplayServer::WINDOW_MODE_FULLSCREEN;
|
||||
window_mode = DisplayServerEnums::WINDOW_MODE_FULLSCREEN;
|
||||
} else if (arg == "-m" || arg == "--maximized") { // force maximized window
|
||||
init_maximized = true;
|
||||
window_mode = DisplayServer::WINDOW_MODE_MAXIMIZED;
|
||||
window_mode = DisplayServerEnums::WINDOW_MODE_MAXIMIZED;
|
||||
} else if (arg == "-w" || arg == "--windowed") { // force windowed window
|
||||
|
||||
init_windowed = true;
|
||||
@@ -2174,7 +2174,7 @@ Error Main::setup(const char *execpath, int argc, char *argv[], bool p_second_ph
|
||||
main_args.push_back("--editor");
|
||||
if (!init_windowed && !init_fullscreen) {
|
||||
init_maximized = true;
|
||||
window_mode = DisplayServer::WINDOW_MODE_MAXIMIZED;
|
||||
window_mode = DisplayServerEnums::WINDOW_MODE_MAXIMIZED;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2645,33 +2645,33 @@ Error Main::setup(const char *execpath, int argc, char *argv[], bool p_second_ph
|
||||
}
|
||||
|
||||
if (!bool(GLOBAL_GET("display/window/size/resizable"))) {
|
||||
window_flags |= DisplayServer::WINDOW_FLAG_RESIZE_DISABLED_BIT;
|
||||
window_flags |= DisplayServerEnums::WINDOW_FLAG_RESIZE_DISABLED_BIT;
|
||||
}
|
||||
if (bool(GLOBAL_GET("display/window/size/minimize_disabled"))) {
|
||||
window_flags |= DisplayServer::WINDOW_FLAG_MINIMIZE_DISABLED_BIT;
|
||||
window_flags |= DisplayServerEnums::WINDOW_FLAG_MINIMIZE_DISABLED_BIT;
|
||||
}
|
||||
if (bool(GLOBAL_GET("display/window/size/maximize_disabled"))) {
|
||||
window_flags |= DisplayServer::WINDOW_FLAG_MAXIMIZE_DISABLED_BIT;
|
||||
window_flags |= DisplayServerEnums::WINDOW_FLAG_MAXIMIZE_DISABLED_BIT;
|
||||
}
|
||||
if (bool(GLOBAL_GET("display/window/size/borderless"))) {
|
||||
window_flags |= DisplayServer::WINDOW_FLAG_BORDERLESS_BIT;
|
||||
window_flags |= DisplayServerEnums::WINDOW_FLAG_BORDERLESS_BIT;
|
||||
}
|
||||
if (bool(GLOBAL_GET("display/window/size/always_on_top"))) {
|
||||
window_flags |= DisplayServer::WINDOW_FLAG_ALWAYS_ON_TOP_BIT;
|
||||
window_flags |= DisplayServerEnums::WINDOW_FLAG_ALWAYS_ON_TOP_BIT;
|
||||
}
|
||||
if (bool(GLOBAL_GET("display/window/size/transparent"))) {
|
||||
window_flags |= DisplayServer::WINDOW_FLAG_TRANSPARENT_BIT;
|
||||
window_flags |= DisplayServerEnums::WINDOW_FLAG_TRANSPARENT_BIT;
|
||||
}
|
||||
if (bool(GLOBAL_GET("display/window/size/extend_to_title"))) {
|
||||
window_flags |= DisplayServer::WINDOW_FLAG_EXTEND_TO_TITLE_BIT;
|
||||
window_flags |= DisplayServerEnums::WINDOW_FLAG_EXTEND_TO_TITLE_BIT;
|
||||
}
|
||||
if (bool(GLOBAL_GET("display/window/size/no_focus"))) {
|
||||
window_flags |= DisplayServer::WINDOW_FLAG_NO_FOCUS_BIT;
|
||||
window_flags |= DisplayServerEnums::WINDOW_FLAG_NO_FOCUS_BIT;
|
||||
}
|
||||
if (bool(GLOBAL_GET("display/window/size/sharp_corners"))) {
|
||||
window_flags |= DisplayServer::WINDOW_FLAG_SHARP_CORNERS_BIT;
|
||||
window_flags |= DisplayServerEnums::WINDOW_FLAG_SHARP_CORNERS_BIT;
|
||||
}
|
||||
window_mode = (DisplayServer::WindowMode)(GLOBAL_GET("display/window/size/mode").operator int());
|
||||
window_mode = (DisplayServerEnums::WindowMode)(GLOBAL_GET("display/window/size/mode").operator int());
|
||||
int initial_position_type = GLOBAL_GET("display/window/size/initial_position_type").operator int();
|
||||
if (initial_position_type == Window::WINDOW_INITIAL_POSITION_ABSOLUTE) { // Absolute.
|
||||
if (!init_use_custom_pos) {
|
||||
@@ -2680,7 +2680,7 @@ Error Main::setup(const char *execpath, int argc, char *argv[], bool p_second_ph
|
||||
}
|
||||
} else if (initial_position_type == Window::WINDOW_INITIAL_POSITION_CENTER_PRIMARY_SCREEN || initial_position_type == Window::WINDOW_INITIAL_POSITION_CENTER_MAIN_WINDOW_SCREEN) { // Center of Primary Screen.
|
||||
if (!init_use_custom_screen) {
|
||||
init_screen = DisplayServer::SCREEN_PRIMARY;
|
||||
init_screen = DisplayServerEnums::SCREEN_PRIMARY;
|
||||
init_use_custom_screen = true;
|
||||
}
|
||||
} else if (initial_position_type == Window::WINDOW_INITIAL_POSITION_CENTER_OTHER_SCREEN) { // Center of Other Screen.
|
||||
@@ -2690,12 +2690,12 @@ Error Main::setup(const char *execpath, int argc, char *argv[], bool p_second_ph
|
||||
}
|
||||
} else if (initial_position_type == Window::WINDOW_INITIAL_POSITION_CENTER_SCREEN_WITH_MOUSE_FOCUS) { // Center of Screen With Mouse Pointer.
|
||||
if (!init_use_custom_screen) {
|
||||
init_screen = DisplayServer::SCREEN_WITH_MOUSE_FOCUS;
|
||||
init_screen = DisplayServerEnums::SCREEN_WITH_MOUSE_FOCUS;
|
||||
init_use_custom_screen = true;
|
||||
}
|
||||
} else if (initial_position_type == Window::WINDOW_INITIAL_POSITION_CENTER_SCREEN_WITH_KEYBOARD_FOCUS) { // Center of Screen With Keyboard Focus.
|
||||
if (!init_use_custom_screen) {
|
||||
init_screen = DisplayServer::SCREEN_WITH_KEYBOARD_FOCUS;
|
||||
init_screen = DisplayServerEnums::SCREEN_WITH_KEYBOARD_FOCUS;
|
||||
init_use_custom_screen = true;
|
||||
}
|
||||
}
|
||||
@@ -2778,12 +2778,12 @@ Error Main::setup(const char *execpath, int argc, char *argv[], bool p_second_ph
|
||||
}
|
||||
|
||||
{
|
||||
window_orientation = DisplayServer::ScreenOrientation(int(GLOBAL_DEF_BASIC("display/window/handheld/orientation", DisplayServer::ScreenOrientation::SCREEN_LANDSCAPE)));
|
||||
window_orientation = DisplayServerEnums::ScreenOrientation(int(GLOBAL_DEF_BASIC("display/window/handheld/orientation", DisplayServerEnums::ScreenOrientation::SCREEN_LANDSCAPE)));
|
||||
}
|
||||
{
|
||||
window_vsync_mode = DisplayServer::VSyncMode(int(GLOBAL_DEF_BASIC("display/window/vsync/vsync_mode", DisplayServer::VSyncMode::VSYNC_ENABLED)));
|
||||
window_vsync_mode = DisplayServerEnums::VSyncMode(int(GLOBAL_DEF_BASIC("display/window/vsync/vsync_mode", DisplayServerEnums::VSyncMode::VSYNC_ENABLED)));
|
||||
if (disable_vsync) {
|
||||
window_vsync_mode = DisplayServer::VSyncMode::VSYNC_DISABLED;
|
||||
window_vsync_mode = DisplayServerEnums::VSyncMode::VSYNC_DISABLED;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3115,13 +3115,13 @@ Error Main::setup2(bool p_show_boot_logo) {
|
||||
String mode = config->get_value("EditorWindow", "mode", "maximized");
|
||||
window_size = config->get_value("EditorWindow", "size", window_size);
|
||||
if (mode == "windowed") {
|
||||
window_mode = DisplayServer::WINDOW_MODE_WINDOWED;
|
||||
window_mode = DisplayServerEnums::WINDOW_MODE_WINDOWED;
|
||||
init_windowed = true;
|
||||
} else if (mode == "fullscreen") {
|
||||
window_mode = DisplayServer::WINDOW_MODE_FULLSCREEN;
|
||||
window_mode = DisplayServerEnums::WINDOW_MODE_FULLSCREEN;
|
||||
init_fullscreen = true;
|
||||
} else {
|
||||
window_mode = DisplayServer::WINDOW_MODE_MAXIMIZED;
|
||||
window_mode = DisplayServerEnums::WINDOW_MODE_MAXIMIZED;
|
||||
init_maximized = true;
|
||||
}
|
||||
|
||||
@@ -3133,7 +3133,7 @@ Error Main::setup2(bool p_show_boot_logo) {
|
||||
}
|
||||
|
||||
if (init_screen == EditorSettings::InitialScreen::INITIAL_SCREEN_AUTO) {
|
||||
init_screen = DisplayServer::SCREEN_PRIMARY;
|
||||
init_screen = DisplayServerEnums::SCREEN_PRIMARY;
|
||||
}
|
||||
|
||||
OS::get_singleton()->benchmark_end_measure("Startup", "Initialize Early Settings");
|
||||
@@ -3222,28 +3222,28 @@ Error Main::setup2(bool p_show_boot_logo) {
|
||||
Color boot_bg_color = GLOBAL_DEF_BASIC("application/boot_splash/bg_color", boot_splash_bg_color);
|
||||
DisplayServer::set_early_window_clear_color_override(true, boot_bg_color);
|
||||
|
||||
DisplayServer::Context context;
|
||||
DisplayServerEnums::Context context;
|
||||
if (editor) {
|
||||
context = DisplayServer::CONTEXT_EDITOR;
|
||||
context = DisplayServerEnums::CONTEXT_EDITOR;
|
||||
} else if (project_manager) {
|
||||
context = DisplayServer::CONTEXT_PROJECTMAN;
|
||||
context = DisplayServerEnums::CONTEXT_PROJECTMAN;
|
||||
} else {
|
||||
context = DisplayServer::CONTEXT_ENGINE;
|
||||
context = DisplayServerEnums::CONTEXT_ENGINE;
|
||||
}
|
||||
|
||||
if (init_embed_parent_window_id) {
|
||||
// Reset flags and other settings to be sure it's borderless and windowed. The position and size should have been initialized correctly
|
||||
// from --position and --resolution parameters.
|
||||
window_mode = DisplayServer::WINDOW_MODE_WINDOWED;
|
||||
window_flags = DisplayServer::WINDOW_FLAG_BORDERLESS_BIT;
|
||||
window_mode = DisplayServerEnums::WINDOW_MODE_WINDOWED;
|
||||
window_flags = DisplayServerEnums::WINDOW_FLAG_BORDERLESS_BIT;
|
||||
if (bool(GLOBAL_GET("display/window/size/transparent"))) {
|
||||
window_flags |= DisplayServer::WINDOW_FLAG_TRANSPARENT_BIT;
|
||||
window_flags |= DisplayServerEnums::WINDOW_FLAG_TRANSPARENT_BIT;
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef TOOLS_ENABLED
|
||||
if ((project_manager || editor) && init_expand_to_title) {
|
||||
window_flags |= DisplayServer::WINDOW_FLAG_EXTEND_TO_TITLE_BIT;
|
||||
window_flags |= DisplayServerEnums::WINDOW_FLAG_EXTEND_TO_TITLE_BIT;
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -3390,20 +3390,20 @@ Error Main::setup2(bool p_show_boot_logo) {
|
||||
break;
|
||||
}
|
||||
if (!(force_res || use_custom_res)) {
|
||||
display_server->window_set_size(Size2(window_size) * ui_scale, DisplayServer::MAIN_WINDOW_ID);
|
||||
display_server->window_set_size(Size2(window_size) * ui_scale, DisplayServerEnums::MAIN_WINDOW_ID);
|
||||
}
|
||||
if (display_server->has_feature(DisplayServer::FEATURE_SUBWINDOWS) && !display_server->has_feature(DisplayServer::FEATURE_SELF_FITTING_WINDOWS)) {
|
||||
if (display_server->has_feature(DisplayServerEnums::FEATURE_SUBWINDOWS) && !display_server->has_feature(DisplayServerEnums::FEATURE_SELF_FITTING_WINDOWS)) {
|
||||
Size2 real_size = DisplayServer::get_singleton()->window_get_size();
|
||||
Rect2i scr_rect = display_server->screen_get_usable_rect(init_screen);
|
||||
display_server->window_set_position(scr_rect.position + (scr_rect.size - real_size) / 2, DisplayServer::MAIN_WINDOW_ID);
|
||||
display_server->window_set_position(scr_rect.position + (scr_rect.size - real_size) / 2, DisplayServerEnums::MAIN_WINDOW_ID);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
if (display_server->has_feature(DisplayServer::FEATURE_SUBWINDOWS)) {
|
||||
display_server->show_window(DisplayServer::MAIN_WINDOW_ID);
|
||||
if (display_server->has_feature(DisplayServerEnums::FEATURE_SUBWINDOWS)) {
|
||||
display_server->show_window(DisplayServerEnums::MAIN_WINDOW_ID);
|
||||
}
|
||||
|
||||
if (display_server->has_feature(DisplayServer::FEATURE_ORIENTATION)) {
|
||||
if (display_server->has_feature(DisplayServerEnums::FEATURE_ORIENTATION)) {
|
||||
display_server->screen_set_orientation(window_orientation);
|
||||
}
|
||||
|
||||
@@ -3422,7 +3422,7 @@ Error Main::setup2(bool p_show_boot_logo) {
|
||||
if (editor && init_windowed) {
|
||||
// We still need to check we are actually in windowed mode, because
|
||||
// certain platform might only support one fullscreen window.
|
||||
if (DisplayServer::get_singleton()->window_get_mode() == DisplayServer::WINDOW_MODE_WINDOWED) {
|
||||
if (DisplayServer::get_singleton()->window_get_mode() == DisplayServerEnums::WINDOW_MODE_WINDOWED) {
|
||||
Vector2i current_size = DisplayServer::get_singleton()->window_get_size();
|
||||
Vector2i current_pos = DisplayServer::get_singleton()->window_get_position();
|
||||
int screen = DisplayServer::get_singleton()->window_get_current_screen();
|
||||
@@ -3443,16 +3443,16 @@ Error Main::setup2(bool p_show_boot_logo) {
|
||||
if (GLOBAL_GET("debug/settings/stdout/print_fps") || print_fps) {
|
||||
// Print requested V-Sync mode at startup to diagnose the printed FPS not going above the monitor refresh rate.
|
||||
switch (window_vsync_mode) {
|
||||
case DisplayServer::VSyncMode::VSYNC_DISABLED:
|
||||
case DisplayServerEnums::VSyncMode::VSYNC_DISABLED:
|
||||
print_line("Requested V-Sync mode: Disabled");
|
||||
break;
|
||||
case DisplayServer::VSyncMode::VSYNC_ENABLED:
|
||||
case DisplayServerEnums::VSyncMode::VSYNC_ENABLED:
|
||||
print_line("Requested V-Sync mode: Enabled - FPS will likely be capped to the monitor refresh rate.");
|
||||
break;
|
||||
case DisplayServer::VSyncMode::VSYNC_ADAPTIVE:
|
||||
case DisplayServerEnums::VSyncMode::VSYNC_ADAPTIVE:
|
||||
print_line("Requested V-Sync mode: Adaptive");
|
||||
break;
|
||||
case DisplayServer::VSyncMode::VSYNC_MAILBOX:
|
||||
case DisplayServerEnums::VSyncMode::VSYNC_MAILBOX:
|
||||
print_line("Requested V-Sync mode: Mailbox");
|
||||
break;
|
||||
}
|
||||
@@ -3572,12 +3572,12 @@ Error Main::setup2(bool p_show_boot_logo) {
|
||||
if (init_windowed) {
|
||||
//do none..
|
||||
} else if (init_maximized) {
|
||||
DisplayServer::get_singleton()->window_set_mode(DisplayServer::WINDOW_MODE_MAXIMIZED);
|
||||
DisplayServer::get_singleton()->window_set_mode(DisplayServerEnums::WINDOW_MODE_MAXIMIZED);
|
||||
} else if (init_fullscreen) {
|
||||
DisplayServer::get_singleton()->window_set_mode(DisplayServer::WINDOW_MODE_FULLSCREEN);
|
||||
DisplayServer::get_singleton()->window_set_mode(DisplayServerEnums::WINDOW_MODE_FULLSCREEN);
|
||||
}
|
||||
if (init_always_on_top) {
|
||||
DisplayServer::get_singleton()->window_set_flag(DisplayServer::WINDOW_FLAG_ALWAYS_ON_TOP, true);
|
||||
DisplayServer::get_singleton()->window_set_flag(DisplayServerEnums::WINDOW_FLAG_ALWAYS_ON_TOP, true);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3934,7 +3934,7 @@ void Main::setup_boot_logo() {
|
||||
}
|
||||
|
||||
#if defined(TOOLS_ENABLED) && defined(MACOS_ENABLED)
|
||||
if (DisplayServer::get_singleton()->has_feature(DisplayServer::FEATURE_ICON) && OS::get_singleton()->get_bundle_icon_path().is_empty()) {
|
||||
if (DisplayServer::get_singleton()->has_feature(DisplayServerEnums::FEATURE_ICON) && OS::get_singleton()->get_bundle_icon_path().is_empty()) {
|
||||
Ref<Image> icon = memnew(Image(app_icon_png));
|
||||
DisplayServer::get_singleton()->set_icon(icon);
|
||||
}
|
||||
@@ -4431,7 +4431,7 @@ int Main::start() {
|
||||
|
||||
bool embed_subwindows = GLOBAL_GET("display/window/subwindows/embed_subwindows");
|
||||
|
||||
if (single_window || (!project_manager && !editor && embed_subwindows) || !DisplayServer::get_singleton()->has_feature(DisplayServer::Feature::FEATURE_SUBWINDOWS)) {
|
||||
if (single_window || (!project_manager && !editor && embed_subwindows) || !DisplayServer::get_singleton()->has_feature(DisplayServerEnums::FEATURE_SUBWINDOWS)) {
|
||||
sml->get_root()->set_embedding_subwindows(true);
|
||||
}
|
||||
|
||||
@@ -4718,7 +4718,7 @@ int Main::start() {
|
||||
}
|
||||
#endif
|
||||
String mac_icon_path = GLOBAL_GET("application/config/macos_native_icon");
|
||||
if (DisplayServer::get_singleton()->has_feature(DisplayServer::FEATURE_NATIVE_ICON) && !mac_icon_path.is_empty() && !has_icon) {
|
||||
if (DisplayServer::get_singleton()->has_feature(DisplayServerEnums::FEATURE_NATIVE_ICON) && !mac_icon_path.is_empty() && !has_icon) {
|
||||
DisplayServer::get_singleton()->set_native_icon(mac_icon_path);
|
||||
has_icon = true;
|
||||
}
|
||||
@@ -4726,14 +4726,14 @@ int Main::start() {
|
||||
|
||||
#ifdef WINDOWS_ENABLED
|
||||
String win_icon_path = GLOBAL_GET("application/config/windows_native_icon");
|
||||
if (DisplayServer::get_singleton()->has_feature(DisplayServer::FEATURE_NATIVE_ICON) && !win_icon_path.is_empty()) {
|
||||
if (DisplayServer::get_singleton()->has_feature(DisplayServerEnums::FEATURE_NATIVE_ICON) && !win_icon_path.is_empty()) {
|
||||
DisplayServer::get_singleton()->set_native_icon(win_icon_path);
|
||||
has_icon = true;
|
||||
}
|
||||
#endif
|
||||
|
||||
String icon_path = GLOBAL_GET("application/config/icon");
|
||||
if (DisplayServer::get_singleton()->has_feature(DisplayServer::FEATURE_ICON) && !icon_path.is_empty() && !has_icon) {
|
||||
if (DisplayServer::get_singleton()->has_feature(DisplayServerEnums::FEATURE_ICON) && !icon_path.is_empty() && !has_icon) {
|
||||
Ref<Image> icon;
|
||||
icon.instantiate();
|
||||
if (ImageLoader::load_image(icon_path, icon) == OK) {
|
||||
@@ -4776,7 +4776,7 @@ int Main::start() {
|
||||
#endif
|
||||
}
|
||||
|
||||
if (DisplayServer::get_singleton()->has_feature(DisplayServer::FEATURE_ICON) && !has_icon && OS::get_singleton()->get_bundle_icon_path().is_empty()) {
|
||||
if (DisplayServer::get_singleton()->has_feature(DisplayServerEnums::FEATURE_ICON) && !has_icon && OS::get_singleton()->get_bundle_icon_path().is_empty()) {
|
||||
Ref<Image> icon = memnew(Image(app_icon_png));
|
||||
DisplayServer::get_singleton()->set_icon(icon);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user