void EditorSettingsDialog::popup_edit_settings() { if (!EditorSettings::get_singleton()) return; EditorSettings::get_singleton()->list_text_editor_themes(); // make sure we have an up to date list of themes inspector->edit(EditorSettings::get_singleton()); inspector->get_inspector()->update_tree(); search_box->select_all(); search_box->grab_focus(); _update_shortcuts(); set_process_unhandled_input(true); // Restore valid window bounds or pop up at default size. if (EditorSettings::get_singleton()->has_setting("interface/dialogs/editor_settings_bounds")) { popup(EditorSettings::get_singleton()->get("interface/dialogs/editor_settings_bounds")); } else { Size2 popup_size = Size2(900, 700) * editor_get_scale(); Size2 window_size = get_viewport_rect().size; popup_size.x = MIN(window_size.x * 0.8, popup_size.x); popup_size.y = MIN(window_size.y * 0.8, popup_size.y); popup_centered(popup_size); } _focus_current_search_box(); }
void ProjectExportDialog::popup_export() { add_preset->get_popup()->clear(); for (int i = 0; i < EditorExport::get_singleton()->get_export_platform_count(); i++) { Ref<EditorExportPlatform> plat = EditorExport::get_singleton()->get_export_platform(i); add_preset->get_popup()->add_icon_item(plat->get_logo(), plat->get_name()); } _update_presets(); if (presets->get_current() >= 0) { _edit_preset(presets->get_current()); // triggers rescan for templates if newly installed } // Restore valid window bounds or pop up at default size. if (EditorSettings::get_singleton()->has_setting("interface/dialogs/export_bounds")) { popup(EditorSettings::get_singleton()->get("interface/dialogs/export_bounds")); } else { Size2 popup_size = Size2(900, 700) * editor_get_scale(); Size2 window_size = get_viewport_rect().size; popup_size.x = MIN(window_size.x * 0.8, popup_size.x); popup_size.y = MIN(window_size.y * 0.8, popup_size.y); popup_centered(popup_size); } }
void CreateDialog::popup_create(bool p_dont_clear, bool p_replace_mode) { type_list.clear(); ClassDB::get_class_list(&type_list); ScriptServer::get_global_class_list(&type_list); type_list.sort_custom<StringName::AlphCompare>(); recent->clear(); FileAccess *f = FileAccess::open(EditorSettings::get_singleton()->get_project_settings_dir().plus_file("create_recent." + base_type), FileAccess::READ); if (f) { TreeItem *root = recent->create_item(); while (!f->eof_reached()) { String l = f->get_line().strip_edges(); if (l != String()) { TreeItem *ti = recent->create_item(root); ti->set_text(0, l); ti->set_icon(0, _get_editor_icon(l)); } } memdelete(f); } favorites->clear(); f = FileAccess::open(EditorSettings::get_singleton()->get_project_settings_dir().plus_file("favorites." + base_type), FileAccess::READ); favorite_list.clear(); if (f) { while (!f->eof_reached()) { String l = f->get_line().strip_edges(); if (l != String()) { favorite_list.push_back(l); } } memdelete(f); } _update_favorite_list(); // Restore valid window bounds or pop up at default size. if (EditorSettings::get_singleton()->has_setting("interface/dialogs/create_new_node_bounds")) { popup(EditorSettings::get_singleton()->get("interface/dialogs/create_new_node_bounds")); } else { Size2 popup_size = Size2(900, 700) * editor_get_scale(); Size2 window_size = get_viewport_rect().size; popup_size.x = MIN(window_size.x * 0.8, popup_size.x); popup_size.y = MIN(window_size.y * 0.8, popup_size.y); popup_centered(popup_size); } if (p_dont_clear) { search_box->select_all(); } else { search_box->clear(); } search_box->grab_focus(); _update_search(); bool enable_rl = EditorSettings::get_singleton()->get("docks/scene_tree/draw_relationship_lines"); Color rl_color = EditorSettings::get_singleton()->get("docks/scene_tree/relationship_line_color"); if (enable_rl) { search_options->add_constant_override("draw_relationship_lines", 1); search_options->add_color_override("relationship_line_color", rl_color); } else { search_options->add_constant_override("draw_relationship_lines", 0); } is_replace_mode = p_replace_mode; if (p_replace_mode) { set_title(vformat(TTR("Change %s Type"), base_type)); get_ok()->set_text(TTR("Change")); } else { set_title(vformat(TTR("Create New %s"), base_type)); get_ok()->set_text(TTR("Create")); } }